#include "pitches.h"
int melody[] = {
NOTE_E4, NOTE_E4, NOTE_F4, NOTE_G4,
NOTE_G4, NOTE_F4, NOTE_E4, NOTE_D4,
NOTE_C4, NOTE_C4, NOTE_D4, NOTE_E4,
NOTE_E4, NOTE_D4, NOTE_D4, NOTE_E4,
NOTE_E4, NOTE_F4, NOTE_G4, NOTE_G4,
NOTE_F4, NOTE_E4, NOTE_D4, NOTE_C4,
NOTE_C4, NOTE_D4, NOTE_E4, NOTE_D4,
NOTE_C4, NOTE_C4
};
int noteDurations[] = {
4, 4, 4, 4,
4, 4, 4, 4,
4, 4, 4, 4,
4, 4, 4, 4,
4, 4, 4, 4,
4, 4, 4, 4,
4, 4, 4, 4,
4, 4
};
void setup() {
for (int i = 2; i <= 9; i++) {
pinMode(i, OUTPUT);
}
}
void loop() {
playMelody();
}
void playMelody() {
for (int i = 0; i < sizeof(melody) / sizeof(melody[0]); i++) {
int noteDuration = 1000 / noteDurations[i];
tone(8, melody[i], noteDuration);
for (int j = 2; j <= 9; j++) {
digitalWrite(j, HIGH); // turn on all LEDs
}
delay(noteDuration * 0.9);
noTone(8);
for (int j = 2; j <= 9; j++) {
digitalWrite(j, LOW); // turn off all LEDs
}
delay(50);
}
delay(2000); // Wait for 2 seconds before playing again
}