//John Derick D. Jaen
//Grade 10 - Br. Flavius
//Song: "Santa Tell Me" by Ariana Grande
#define C_4 262
#define CS_4 277
#define D_4 294
#define DS_4 311
#define E_4 330
#define F_4 349
#define FS_4 370
#define G_4 392
#define GS_4 415
#define A_4 440
#define AS_4 466
#define B_4 494
#define C_5 523
#define CS_5 554
#define D_5 587
#define DS_5 622
#define E_5 659
#define F_5 698
#define FS_5 740
#define G_5 784
#define GS_5 831
#define A_5 880
#define AS_5 932
#define B_5 988
#define C_6 1047
#define CS_6 1109
#define D_6 1175
#define DS_6 1245
#define E_6 1319
#define F_6 1397
#define FS_6 1480
#define G_6 1568
#define GS_6 1661
#define A_6 1760
#define AS_6 1865
#define B_6 1976
int BUZZER = 13;
int BTN = 12;
int GLED = 11;
int RLED = 10;
int BLED = 9;
int YLED = 8;
int OLED = 7;
void setup()
{
pinMode(BUZZER, OUTPUT);
pinMode(BTN, INPUT_PULLUP);
pinMode(GLED, OUTPUT);
pinMode(RLED, OUTPUT);
pinMode(BLED, OUTPUT);
pinMode(YLED, OUTPUT);
pinMode(OLED, OUTPUT);
digitalWrite(GLED, HIGH);
digitalWrite(RLED, HIGH);
digitalWrite(BLED, HIGH);
digitalWrite(YLED, HIGH);
digitalWrite(OLED, HIGH);
BUZZ(C_6, 1000);
digitalWrite(GLED, LOW);
digitalWrite(RLED, HIGH);
digitalWrite(BLED, LOW);
digitalWrite(YLED, HIGH);
digitalWrite(OLED, LOW);
while (digitalRead(BTN)==1);
//Santa, tell me if you're really there
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 1000);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 1000);
BUZZ(B_5, 500);
BUZZ(B_5, 500);
delay(500);
// Don't make me fall in love again
BUZZ(G_5, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(A_5, 500);
//If he won't be here next year
BUZZ(G_5, 500);
BUZZ(D_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 1000);
delay(500);
//Santa, tell me if he really cares
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 1000);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 1000);
BUZZ(B_5, 500);
BUZZ(B_5, 500);
delay(500);
// 'cause I can't give it all away
BUZZ(G_5, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(A_5, 500);
//If he won't be here next year
BUZZ(G_5, 500);
BUZZ(D_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 1000);
delay(500);
//Verse 1
//Feeling christmas all around
BUZZ(G_5, 500);
BUZZ(G_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(E_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 1000);
delay(500);
//And I'm tryin' to play it cool
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 500);
BUZZ(E_5, 500);
BUZZ(B_5, 500);
delay(500);
//But it's hard to focus
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 500);
BUZZ(E_5, 500);
//When I see him walking 'cross the road
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(G_5, 800);
BUZZ(E_5, 500);
BUZZ(B_5, 800);
BUZZ(A_5, 500);
BUZZ(G_5, 800);
BUZZ(E_5, 500);
BUZZ(D_5, 500);
delay(500);
//"Let it snow" is blasting out
BUZZ(G_5, 500);
BUZZ(G_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(E_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 250);
BUZZ(B_4, 250);
delay(500);
//But I won't get in the mood
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(B_5, 500);
BUZZ(E_5, 500);
BUZZ(B_5, 500);
delay(500);
//I'm avoiding every mistletoe
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(B_5, 500);
BUZZ(E_5, 500);
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(G_5, 1000);
//Until I know it's true love
BUZZ(E_5, 500);
BUZZ(B_5, 1000);
BUZZ(A_5, 500);
BUZZ(G_5, 1000);
BUZZ(E_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
delay(500);
//That he thinks of so next christmas I'm not
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
delay(500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
delay(250);
BUZZ(D_5, 800);
BUZZ(D_5, 500);
//All alone boy
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(A_5, 1000);
BUZZ(E_5, 500);
BUZZ(D_5, 1000);
//Chrorus
//Santa, tell me if you're really there
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 1000);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 1000);
BUZZ(B_5, 500);
BUZZ(B_5, 500);
delay(500);
// Don't make me fall in love again
BUZZ(G_5, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(A_5, 500);
//If he won't be here next year
BUZZ(G_5, 500);
BUZZ(D_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 1000);
delay(500);
//Santa, tell me if he really cares
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 500);
BUZZ(G_5, 1000);
BUZZ(D_5, 500);
BUZZ(B_4, 500);
BUZZ(D_5, 500);
BUZZ(E_5, 1000);
BUZZ(B_5, 500);
BUZZ(B_5, 500);
delay(500);
// 'cause I can't give it all away
BUZZ(G_5, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(D_6, 500);
BUZZ(B_5, 500);
BUZZ(A_5, 500);
BUZZ(A_5, 500);
//If he won't be here next year
BUZZ(G_5, 500);
BUZZ(D_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 500);
BUZZ(F_5, 500);
BUZZ(G_5, 1000);
delay(500);
}
void loop() {
}
void BUZZ(int note, int time)
{
digitalWrite(GLED, HIGH);
digitalWrite(RLED, LOW);
digitalWrite(BLED, HIGH);
digitalWrite(YLED, LOW);
digitalWrite(OLED, HIGH);
tone(BUZZER, note);
delay(time);
digitalWrite(GLED, LOW);
digitalWrite(RLED, HIGH);
digitalWrite(BLED, LOW);
digitalWrite(YLED, HIGH);
digitalWrite(OLED, LOW);
noTone(BUZZER);
delay(100);
}