#include <IRremote.h> //including infrared remote header file
IRrecv IR(11);
int buzzerPin = 10;
//https://pages.mtu.edu/~suits/notefreqs.html
int C = 262;
int D = 294;
int E = 330;
int F = 349;
int F_ = 370;
int G = 392;
int A = 440;
int B = 494;
int C_ = 523;
void setup()
{
pinMode(buzzerPin,OUTPUT);
Serial.begin(9600);
IR.enableIRIn();
}
void loop()
{
remote();
}
void remote() {
if (IR.decode())
{
Serial.println(IR.decodedIRData.decodedRawData, HEX);
delay(3000);
IR.resume();
}
if (IR.decodedIRData.decodedRawData == 0xEF10BF00) {play("axelf"); Serial.println("a");}
}
void play(char musicName[]) {
Serial.println(musicName[5]);
if(musicName == "axelf") { for(int x=0;x<=3;x++) {buzzer(200,E);delay(500);buzzer(200,G);delay(250);buzzer(200,E);delay(250);buzzer(100,E);buzzer(100,A);delay(100);buzzer(200,E);delay(100);buzzer(200,D);delay(100);buzzer(200,E);delay(500);buzzer(200,B);delay(250);buzzer(200,E);delay(250);buzzer(100,E);buzzer(100,C);delay(100);buzzer(200,B);delay(100);buzzer(200,G);delay(100);buzzer(200,E);delay(100);buzzer(200,B);delay(100);buzzer(200,E);delay(100);buzzer(100,E);buzzer(100,D);delay(100);buzzer(100,D);buzzer(100,B);delay(100);buzzer(200,F_);delay(100);buzzer(200,E);delay(1500);}
//https://blogs.glowscotland.org.uk/sb/public/youthmusicinitiative/uploads/sites/3670/2020/09/09141508/Ipad-Crazy-Frog-Axel-F-Tune-Notes-Only.pdf
}
}
void buzzer(int delayTime, int nota) {
if (shouldContinue()) {
tone(buzzerPin, nota);
delay(delayTime);
noTone(buzzerPin);
}
}
bool shouldContinue() {
return !(IR.decodedIRData.decodedRawData == 0xF30CBF00);
}