#define C4 262 //DO
#define CS4 277
#define D4 294 //RE
#define E4 330 //MI
#define F4 349 //FA
#define G4 392 //SOL
#define A4 440 //LA
#define AS4 466
#define B4 494 //SI
#define C5 523 //DO
#define D5 587 //RE
#define E5 659 //MI
#define F5 698 //FA
#define G5 784 //SOL
#define A5 880 //LA
#define B5 988 //SI
int melody[]={
0, G4, E4, F4, G4,
C5, E5, D5, C5, B4, A4, G4,
0, G4, C5, E5, D5,
C5, B4, B4, A4, B4, C5,
0, C5, C5, B4, A4, A4,
C5, B4, A4, G4,
0, E4, F4, G4, B4, A4,
A4, D4, E4, F4, E4,
0, G4, C5, B4, A4,
A4, D5, E5, F5,
A4, G4, C5, B4, D5, C5
};
int durasi[]={
1, 3, 3, 3, 1,
4, 4, 4, 4, 4, 3, 1,
1, 3, 3, 3, 1,
3, 3, 3, 3, 3, 1,
1, 3, 3, 3, 3, 1,
3, 3, 3, 1,
1, 3, 3, 3, 3, 1,
3, 3, 3, 3, 1,
1, 2, 3, 3, 1,
1, 1, 2, 1,
1, 1, 2, 2, 1, 1
};
int piezo=8;
void setup() {
pinMode(piezo, OUTPUT);
}
void loop() {
int size = sizeof(durasi) / sizeof(int);
for(int x=0;x<size;x++){
int durasinote=1000/durasi[x];
tone(piezo,melody[x],durasinote);
int pauseBetweenNotes = durasinote * 1.30;
delay(pauseBetweenNotes);
//stop the tone playing:
noTone(piezo);
}
delay(1000);
}