const int buzzer = 10;
// Change to 0.5 for a slower version of the song, 1.25 for a faster version
const float songSpeed = 1.0;
// Defining frequency of each music note
#define NOTE_C4 262
#define NOTE_D4 294
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_G4 392
#define NOTE_A4 440
#define NOTE_B4 494
#define NOTE_C5 523
#define NOTE_D5 587
#define NOTE_E5 659
#define NOTE_F5 698
#define NOTE_G5 784
#define NOTE_A5 880
#define NOTE_B5 988
// Music notes of the song, 0 is a rest/pulse
int notes[] = {
NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0,
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_C5, NOTE_D5, NOTE_B4, NOTE_B4, 0,
NOTE_A4, NOTE_G4, NOTE_A4, 0,
NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0,
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_C5, NOTE_D5, NOTE_B4, NOTE_B4, 0,
NOTE_A4, NOTE_G4, NOTE_A4, 0,
NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0,
NOTE_A4, NOTE_C5, NOTE_D5, NOTE_D5, 0,
NOTE_D5, NOTE_E5, NOTE_F5, NOTE_F5, 0,
NOTE_E5, NOTE_D5, NOTE_E5, NOTE_A4, 0,
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_D5, NOTE_E5, NOTE_A4, 0,
NOTE_A4, NOTE_C5, NOTE_B4, NOTE_B4, 0,
NOTE_C5, NOTE_A4, NOTE_B4, 0,
NOTE_A4, NOTE_A4,
//Repeat of first part
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_C5, NOTE_D5, NOTE_B4, NOTE_B4, 0,
NOTE_A4, NOTE_G4, NOTE_A4, 0,
NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0,
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_C5, NOTE_D5, NOTE_B4, NOTE_B4, 0,
NOTE_A4, NOTE_G4, NOTE_A4, 0,
NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0,
NOTE_A4, NOTE_C5, NOTE_D5, NOTE_D5, 0,
NOTE_D5, NOTE_E5, NOTE_F5, NOTE_F5, 0,
NOTE_E5, NOTE_D5, NOTE_E5, NOTE_A4, 0,
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0,
NOTE_D5, NOTE_E5, NOTE_A4, 0,
NOTE_A4, NOTE_C5, NOTE_B4, NOTE_B4, 0,
NOTE_C5, NOTE_A4, NOTE_B4, 0,
//End of Repeat
NOTE_E5, 0, 0, NOTE_F5, 0, 0,
NOTE_E5, NOTE_E5, 0, NOTE_G5, 0, NOTE_E5, NOTE_D5, 0, 0,
NOTE_D5, 0, 0, NOTE_C5, 0, 0,
NOTE_B4, NOTE_C5, 0, NOTE_B4, 0, NOTE_A4,
NOTE_E5, 0, 0, NOTE_F5, 0, 0,
NOTE_E5, NOTE_E5, 0, NOTE_G5, 0, NOTE_E5, NOTE_D5, 0, 0,
NOTE_D5, 0, 0, NOTE_C5, 0, 0,
NOTE_B4, NOTE_C5, 0, NOTE_B4, 0, NOTE_A4};
// Durations (in ms) of each music note of the song
// Quarter Note is 250 ms when songSpeed = 1.0
int durations[] = {
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 375, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 375, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 125, 250, 125,
125, 125, 250, 125, 125,
250, 125, 250, 125,
125, 125, 250, 125, 125,
125, 125, 375, 375,
250, 125,
//Rpeat of First Part
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 375, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 375, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 250, 125, 125,
125, 125, 125, 250, 125,
125, 125, 250, 125, 125,
250, 125, 250, 125,
125, 125, 250, 125, 125,
125, 125, 375, 375,
//End of Repeat
250, 125, 375, 250, 125, 375,
125, 125, 125, 125, 125, 125, 125, 125, 375,
250, 125, 375, 250, 125, 375,
125, 125, 125, 125, 125, 500,
250, 125, 375, 250, 125, 375,
125, 125, 125, 125, 125, 125, 125, 125, 375,
250, 125, 375, 250, 125, 375,
125, 125, 125, 125, 125, 500};
int a=0;
int b=0;
void setup()
{
pinMode(11, INPUT);
pinMode(3, INPUT);
Serial.begin(115200);
}
uint16_t ctr=0,t=0;
void loop()
{
int stop=digitalRead(3);
int next=digitalRead(11);
if(stop==1){
a=0;
Serial.println("durdu");
}
if(next==1){
a=a+1;
Serial.print("sonraki ");
Serial.println(a);
delay(1000);
}
else if (a==1 && next==0){
karayip();
Serial.println("şarkı bitti");
delay(2000);
//istiklal();
//cendere();
//bella();
//dec();
}
else if (a==2 && next==0){
//karayip();
istiklal();
Serial.println("şarkı bitti");
delay(2000);
//cendere();
//bella();
//dec();
}
else if (a==3 && next==0){
//karayip();
//istiklal();
cendere();
Serial.println("şarkı bitti");
delay(2000);
//bella();
//dec();
}
else if (a==4 && next==0){
//karayip();
//istiklal();
//cendere();
bella();
Serial.println("şarkı bitti");
delay(2000);
//dec();
}
else if (a==5 && next==0){
//karayip();
//istiklal();
//cendere();
//bella();
dec();
Serial.println("şarkı bitti");
delay(2000);
}
else if (a>5 && next==0){
a=0;
}
}
void dec() {
#define SPEAKER 10
#define DRUMS 5
#define INTERVAL 160
#define NOTE_SPACING 16
const uint16_t FREQUENCIES[]={0,31,33,35,37,39,41,44,46,49,52,55,58,62,65,69,73,78,82,87,93,98,104,110,117,123,131,139,147,156,165,175,185,196,208,220,233,247,262,277,294,311,330,349,370,392,415,440,466,494,523,554,587,622,659,698,740,784,831,880,932,988,1047,1109,1175,1245,1319,1397,1480,1568,1661,1760,1865,1976,2093,2217,2349,2489,2637,2794,2960,3136,3322,3520,3729,3951,4186,4435,4699,4978};
const uint16_t SONG_LENGTH=64;
const uint8_t LEADTK[]={52,0,0,0,51,0,0,0,49,0,44,0,44,44,44,44,44,49,49,49,49,0,47,49,0,0,45,0,45,45,45,45,45,49,49,49,49,0,51,52,0,0,47,0,47,47,47,47,52,51,52,51,52,0,54,54,0,51,0,0,0,0,0,0};
const uint8_t LEADLN[]={4,0,0,0,4,0,0,0,2,0,1,0,1,1,1,1,1,1,1,1,2,0,1,1,0,0,1,0,1,1,1,1,1,1,1,1,2,0,1,1,0,0,1,0,1,1,1,1,1,1,1,1,2,0,1,2,0,3,0,0,0,0,0};
const uint8_t DRUMTK[]={0,0,0,0,0,0,0,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0,30,0,0,5,5,0,5,0};
pinMode(SPEAKER,OUTPUT);
pinMode(DRUMS,OUTPUT);
int ab=0;
for(ab=0;ab<137;ab++){
t=millis();
if(LEADLN[ctr]!=0){
noTone(SPEAKER);
if(LEADTK[ctr]!=0) tone(SPEAKER,FREQUENCIES[LEADTK[ctr]],LEADLN[ctr]*INTERVAL-NOTE_SPACING);
}
if(DRUMTK[ctr]!=0){
digitalWrite(DRUMS,HIGH);
delay(DRUMTK[ctr]);
digitalWrite(DRUMS,LOW);
}
ctr=(ctr+1)%SONG_LENGTH;
delay(INTERVAL-(millis()-t));
}
}
void bella(){
int BuzzerPin = 10;
int Si2 =1975;
int LaS2=1864;
int La2= 1760;
int SolS2=1661;
int Sol2=1567;
int FaS2=1479;
int Fa2= 1396;
int Mi2= 1318;
int ReS2=1244;
int Re2= 1174;
int DoS2=1108;
int Do2= 1046;
// Low Octave
int Si = 987;
int LaS= 932;
int La = 880;
int SolS=830;
int Sol= 783;
int FaS= 739;
int Fa= 698;
int Mi= 659;
int ReS= 622;
int Re = 587;
int DoS =554;
int Do = 523;
// define the notes
int rounda=0;
int roundp=0;
int white= 0;
int whitep=0;
int black=0;
int blackp=0;
int quaver=0;
int quaverp =0;
int semiquaver=0;
int semiquaverp=0;
int bpm= 120;
black= 35000/bpm;
blackp=black*1.5;
white= black*2;
whitep=white*1.5;
rounda= black*4;
roundp= rounda*1.5;
quaver= black/2;
quaverp=quaver*1.5;
semiquaver= black/4;
semiquaverp=semiquaver*1.5;
tone(BuzzerPin,Mi,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(black+50);
tone(BuzzerPin,Si,black);
delay(black+50);
tone(BuzzerPin,Do2,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(2*white+50);
tone(BuzzerPin,Mi,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(black+50);
tone(BuzzerPin,Si,black);
delay(black+50);
tone(BuzzerPin,Do2,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(2*white+50);
tone(BuzzerPin,Mi,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(black+50);
tone(BuzzerPin,Si,black);
delay(black+50);
tone(BuzzerPin,Do2,white*1.3);
delay(2*black+50);
tone(BuzzerPin,Si,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(black+50);
tone(BuzzerPin,Do2,white*1.3);
delay(2*black+50);
tone(BuzzerPin,Si,black);
delay(black+50);
tone(BuzzerPin,La,black);
delay(black+50);
tone(BuzzerPin,Mi2,black);
delay(white+50);
tone(BuzzerPin,Mi2,black);
delay(white+100);
tone(BuzzerPin,Mi2,black);
delay(white+50);
tone(BuzzerPin,Re2,black);
delay(black+50);
tone(BuzzerPin,Mi2,black);
delay(black+50);
tone(BuzzerPin,Fa2,black);
delay(black+50);
tone(BuzzerPin,Fa2,white*1.3);
delay(rounda+100);
tone(BuzzerPin,Fa2,black);
delay(black+50);
tone(BuzzerPin,Mi2,black);
delay(black+50);
tone(BuzzerPin,Re2,black);
delay(black+50);
tone(BuzzerPin,Fa2,black);
delay(black+50);
tone(BuzzerPin,Mi2,white*1.3);
delay(rounda+100);
tone(BuzzerPin,Mi2,black);
delay(black+50);
tone(BuzzerPin,Re2,black);
delay(black+50);
tone(BuzzerPin,Do2,black);
delay(black+50);
tone(BuzzerPin,Si,white*1.3);
delay(white+50);
tone(BuzzerPin,Mi2,white*1.3);
delay(white+50);
tone(BuzzerPin,Si,white*1.3);
delay(white+50);
tone(BuzzerPin,Do2,white*1.3);
delay(white+50);
tone(BuzzerPin,La,rounda*1.3);
delay(rounda+50);
}
void karayip(){
const int totalNotes = sizeof(notes) / sizeof(int);
// Loop through each note
for (int i = 0; i < totalNotes; i++)
{
const int currentNote = notes[i];
float wait = durations[i] / songSpeed;
// Play tone if currentNote is not 0 frequency, otherwise pause (noTone)
if (currentNote != 0)
{
tone(buzzer, notes[i], wait); // tone(pin, frequency, duration)
}
else
{
noTone(buzzer);
}
// delay is used to wait for tone to finish playing before moving to next loop
delay(wait);
}
}
void cendere(){
int kalindo = 261;
int re = 293;
int mi = 331;
int fa = 350;
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, fa);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, mi);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, kalindo);
delay(400);
noTone(buzzer);
delay(10);
tone(buzzer, re);
delay(400);
noTone(buzzer);
delay(10);
delay(1500);
}
void istiklal()
{
int a, ad, b, c, cd, d, dd, e, f, fd, g, gd, a2, ad2, b2, c2, cd2, d2, dd2, e2, f2, fd2, g2, gd2, a3;
a=440;
ad=466;
b=494;
c=523;
cd=554;
d=587;
dd=622;
e=659;
f = 698;
fd = 740;
g = 784;
gd = 830;
a2 = 880;
ad2 = 932;
b2 = 988;
c2 = 1046;
cd2 = 1108;
d2 = 1174;
dd2 = 1244;
e2 = 1318;
f2 = 1396;
fd2 = 1480;
g2 = 1568;
gd2 = 1660;
a3 = 1760;
//Korkma Sönmez Bu Şafak
tone(buzzer, c);
delay(800);
tone(buzzer, f);
delay(800);
tone(buzzer, g);
delay(800);
tone(buzzer, gd);
delay(800);
tone(buzzer, e);
delay(400);
tone(buzzer, g);
delay(200);
tone(buzzer, f);
delay(1600);
noTone(buzzer);
delay(300);
//Larda Yüzden Al Sancak
tone(buzzer, f);
delay(800);
tone(buzzer, ad2);
delay(800);
tone(buzzer, c2);
delay(800);
tone(buzzer, cd2);
delay(800);
tone(buzzer, a2);
delay(400);
tone(buzzer, c2);
delay(200);
tone(buzzer, ad2);
delay(1600);
//Sönmeden Yurdumun Üstünde Tüten En Son Ocak O Be
tone(buzzer, c2);
delay(200);
tone(buzzer, ad2);
delay(200);
tone(buzzer, c2);
delay(200);
tone(buzzer, g);
delay(400);
noTone(buzzer);
delay(100);
tone(buzzer, g);
delay(400);
tone(buzzer, ad);
delay(200);
tone(buzzer, gd);
delay(400);
tone(buzzer, e);
delay(200);
tone(buzzer, f);
delay(400);
tone(buzzer, g);
delay(200);
tone(buzzer, gd);
delay(400);
tone(buzzer, ad);
delay(200);
tone(buzzer, c2);
delay(400);
tone(buzzer, cd2);
delay(200);
tone(buzzer, dd2);
delay(400);
tone(buzzer, f2);
delay(200);
tone(buzzer, dd2);
delay(400);
//Nim Milletimin
tone(buzzer, dd);
delay(200);
tone(buzzer, d);
delay(200);
tone(buzzer, dd);
delay(200);
tone(buzzer, c2);
delay(800);
tone(buzzer, ad);
delay(800);
tone(buzzer, gd);
delay(1600);
// Yıldızıdır Parlayacak O benim
tone(buzzer, c);
delay(200);
tone(buzzer, b);
delay(200);
tone(buzzer, c);
delay(200);
tone(buzzer, g);
delay(800);
tone(buzzer, c);
delay(800);
tone(buzzer, c2);
delay(800);
tone(buzzer, ad);
delay(200);
tone(buzzer, gd);
delay(200);
tone(buzzer, g);
delay(400);
tone(buzzer, gd);
delay(200);
tone(buzzer, f);
delay(800);
//Dir O Benim Milletimindir Ancak
tone(buzzer, f2);
delay(800);
tone(buzzer, dd2);
delay(200);
tone(buzzer, cd2);
delay(400);
tone(buzzer, c2);
delay(200);
tone(buzzer, ad);
delay(400);
tone(buzzer, gd);
delay(200);
tone(buzzer, g);
delay(400);
tone(buzzer, f);
delay(200);
tone(buzzer, c2);
delay(400);
tone(buzzer, c);
delay(800);
tone(buzzer, f);
delay(1600);
/////////////ikinci kıt'a
//Çatma Kurban Olayım
tone(buzzer, c);
delay(800);
tone(buzzer, f);
delay(800);
tone(buzzer, g);
delay(800);
tone(buzzer, gd);
delay(800);
tone(buzzer, e);
delay(400);
tone(buzzer, g);
delay(200);
tone(buzzer, f);
delay(1600);
noTone(buzzer);
delay(300);
//Çehreni Ey Nazlı Hilal
tone(buzzer, f);
delay(800);
tone(buzzer, ad2);
delay(800);
tone(buzzer, c2);
delay(800);
tone(buzzer, cd2);
delay(400);
tone(buzzer, ad2);
delay(400);
tone(buzzer, a2);
delay(400);
tone(buzzer, c2);
delay(400);
tone(buzzer, ad2);
delay(800);
//Kahraman Irkıma Bir Gül Ne Bu Şiddet Bu Celal Sana
tone(buzzer, c2);
delay(200);
tone(buzzer, ad2);
delay(200);
tone(buzzer, c2);
delay(200);
tone(buzzer, g);
delay(400);
noTone(buzzer);
delay(100);
tone(buzzer, g);
delay(400);
tone(buzzer, ad);
delay(200);
tone(buzzer, gd);
delay(400);
tone(buzzer, e);
delay(200);
tone(buzzer, f);
delay(400);
tone(buzzer, g);
delay(200);
tone(buzzer, gd);
delay(400);
tone(buzzer, ad);
delay(200);
tone(buzzer, c2);
delay(400);
tone(buzzer, cd2);
delay(200);
tone(buzzer, dd2);
delay(400);
tone(buzzer, f2);
delay(200);
tone(buzzer, dd2);
delay(400);
//Olmaz Dökülen
tone(buzzer, dd);
delay(200);
tone(buzzer, d);
delay(200);
tone(buzzer, dd);
delay(200);
tone(buzzer, c2);
delay(800);
tone(buzzer, ad);
delay(800);
tone(buzzer, gd);
delay(1600);
//Kanlarımız Sonra Helal Hakkıdır
tone(buzzer, c);
delay(200);
tone(buzzer, b);
delay(200);
tone(buzzer, c);
delay(200);
tone(buzzer, g);
delay(800);
tone(buzzer, c);
delay(800);
tone(buzzer, c2);
delay(800);
tone(buzzer, ad);
delay(200);
tone(buzzer, gd);
delay(200);
tone(buzzer, g);
delay(400);
tone(buzzer, gd);
delay(200);
tone(buzzer, f);
delay(800);
//Hakk'a Tapan Milletimin İstiklal
tone(buzzer, f2);
delay(800);
tone(buzzer, dd2);
delay(200);
tone(buzzer, cd2);
delay(400);
tone(buzzer, c2);
delay(200);
tone(buzzer, ad);
delay(400);
tone(buzzer, gd);
delay(200);
tone(buzzer, g);
delay(400);
tone(buzzer, f);
delay(200);
tone(buzzer, c2);
delay(400);
tone(buzzer, c);
delay(800);
tone(buzzer, f);
delay(1600);
noTone(buzzer);
delay(2000);
}