#define NOTE_E4 330
#define NOTE_D4 294
#define NOTE_C4 262
#define NOTE_B3 494
#define NOTE_A3 440
int buzzer = 8; // Pin connected to the buzzer
void setup() {
pinMode(buzzer, OUTPUT);
}
void loop() {
// Mary Had a Little Lamb melody
melody();
delay(100); // Wait for 2 seconds before repeating
}
void melody() {
int melody[] = {
NOTE_E4, NOTE_D4, NOTE_C4, NOTE_D4, NOTE_E4, NOTE_E4, NOTE_E4,
NOTE_D4, NOTE_D4, NOTE_E4, NOTE_D4, NOTE_C4
};
int noteDurations[] = {
4, 4, 4, 4, 4, 4, 2,
4, 4, 4, 4, 2
};
for (int thisNote = 0; thisNote < 12; thisNote++) {
int duration = 1000 / noteDurations[thisNote];
tone(buzzer, melody[thisNote], duration);
int pauseBetweenNotes = duration * 1.30;
delay(pauseBetweenNotes);
noTone(buzzer);
}
}