// Definisikan pin untuk buzzer
int buzzerPin = 8;
// Definisikan nada
#define NOTE_DO 261
#define NOTE_RE 294
#define NOTE_MI 329
#define NOTE_FA 349
#define NOTE_SOL 392
#define NOTE_LA 440
#define NOTE_SI 494
#define NOTE_DO_ 523
#define NOTE_RE_ 567
#define NOTE_MI_ 659
#define NOTE_FA_ 698
#define NOTE_SOL_ 784
#define NOTE_LA_ 880
int melody()={
NOTE_SOL, NOTE_SOL, NOTE_LA, NOTE_SOL, NOTE_MI, NOTE_DO_, NOTE_DO_, NOTE_RE_, NOTE_DO_, NOTE_LA, NOTE_SOL, NOTE_DO_, NOTE_RE_, NOTE_MI_, NOTE_DO_, NOTE_RE_, NOTE_MI_, NOTE_RE_,
NOTE_SOL, NOTE_SOL, NOTE_LA, NOTE_SOL, NOTE_MI, NOTE_DO_, NOTE_DO_, NOTE_RE_, NOTE_DO_, NOTE_LA, NOTE_SOL, NOTE_DO_, NOTE_RE_, NOTE_MI_, NOTE_DO_, NOTE_RE_, NOTE_SI, NOTE_DO_,
NOTE_RE_, NOTE_MI_, NOTE_RE_, NOTE_DO_, NOTE_SI, NOTE_LA, NOTE_SOL, NOTE_FA_, NOTE_FA_, NOTE_MI_, NOTE_MI_, NOTE_FA_, NOTE_MI_, NOTE_RE_,
NOTE_SOL, NOTE_SOL, NOTE_LA, NOTE_SOL, NOTE_MI, NOTE_DO_, NOTE_DO_, NOTE_RE_, NOTE_DO_, NOTE_LA, NOTE_SOL, NOTE_DO_, NOTE_RE_, NOTE_MI_, NOTE_DO_, NOTE_RE_, NOTE_SI, NOTE_DO_,
NOTE_C5, N
}
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, 4, 4, 4, 4,
4, 4, 4, 4, 4
}
void setup() {
// Tidak ada yang perlu diatur
}
void loop() {
// Mainkan melodi
for (int thisNote = 0; thisNote < 37; thisNote++) {
// Hitung durasi nada
int duration = 1000 / noteDurations[thisNote];
tone(buzzerPin, melody[thisNote], duration);
// Tunggu sebelum nada berikutnya
int pauseBetweenNotes = duration * 1.30;
delay(pauseBetweenNotes);
// Matikan nada
noTone(buzzerPin);
}
// Tunggu sebelum mengulang
delay(2000); // Tunggu 2 detik sebelum memutar ulang
}