#include <Tone.h>
// Crear un objeto Tone para manejar el buzzer
Tone tone1;
// Definición del pin del buzzer
#define BUZZER_PIN 7
// Definición de notas (frecuencias en Hz)
#define NOTE_C4 262
#define NOTE_D4 294
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_G4 392
#define NOTE_A4 440
#define NOTE_B4 494
#define NOTE_C5 523
// Melodía simple (ejemplo: "Cumpleaños Feliz")
int melody[] = {
NOTE_C4, NOTE_C4, NOTE_D4, NOTE_C4, NOTE_F4, NOTE_E4,
NOTE_C4, NOTE_C4, NOTE_D4, NOTE_C4, NOTE_G4, NOTE_F4,
NOTE_C4, NOTE_C4, NOTE_C5, NOTE_A4, NOTE_F4, NOTE_E4, NOTE_D4,
NOTE_C5, NOTE_C5, NOTE_A4, NOTE_F4, NOTE_G4, NOTE_F4
};
// Duraciones correspondientes a cada nota (en milisegundos)
int noteDurations[] = {
250, 250, 500, 500, 250, 250,
250, 250, 500, 500, 250, 250,
250, 250, 500, 500, 250, 250,
250, 250, 500, 500, 250, 250
};
void setup() {
tone1.begin(BUZZER_PIN); // Inicializa el buzzer en el pin definido
}
void loop() {
// Reproducir cada nota de la melodía
for (int thisNote = 0; thisNote < sizeof(melody) / sizeof(melody[0]); thisNote++) {
tone1.play(melody[thisNote]); // Reproduce la nota actual
delay(noteDurations[thisNote]); // Espera la duración de la nota
tone1.stop(); // Detiene el tono
delay(50); // Pausa breve entre notas
}
delay(1000); // Espera un segundo antes de repetir la melodía (opcional)
}