// referensi tangga nada
#include "pitches.h"
// speaker ada di pin 9
const int pinSpeaker = 9;
#define JUMLAH_NADA 15
const int daftar_nada[JUMLAH_NADA] = {
NOTE_C4, NOTE_C4, NOTE_G4, NOTE_G4,
NOTE_A4, NOTE_A4, NOTE_G4, NOTE_F4,
NOTE_F4, NOTE_E4, NOTE_E4, NOTE_D4,
NOTE_D4, NOTE_C4, 0
};
const int lama_beat = 300;
const int beats[JUMLAH_NADA] = {
1, 1, 1, 1,
1, 1, 2, 1,
1, 1, 1, 1,
1, 2, 4
};
void setup() {
pinMode(pinSpeaker, OUTPUT);
}
void loop() {
for(int i=0; i<JUMLAH_NADA; i++){
if(nada[i] == 0){
delay(beats[i] * lama_beat);
}else{
nada(daftar_nada[i], beats[i] * lama_beat);
}
// jeda antar nada
noTone(pinSpeaker);
delay(lama_beat / 2);
}
}
void nada(int frek, int durasi){
tone(pinSpeaker, frek, durasi);
delay(durasi);
}