After I had changed from python to arduino, I added to the new arduino code the melodies of the Westminster Quarters.
#define GIS D7
#define FIS D6
#define E D5
#define B D2
#define BIGBEN D1
// https://en.wikipedia.org/wiki/Westminster_Quarters
void WestminsterFirstQuarter(int speed = 900) {
// 1 g♯4, f♯4, e4, b3
dong(GIS);
delay(speed);
dong(FIS);
delay(speed);
dong(E);
delay(speed);
dong(B);
delay(speed * 2);
}
void WestminsterHalfHour(int speed = 900) {
// 2 e4, g♯4, f♯4, b3
dong(E);
delay(speed);
dong(GIS);
delay(speed);
dong(FIS);
delay(speed);
dong(B);
delay(speed * 2);
// 3 e4, f♯4, g♯4, e4
dong(E);
delay(speed);
dong(FIS);
delay(speed);
dong(GIS);
delay(speed);
dong(E);
delay(speed * 2);
}
void WestminsterThirdQuarter(int speed = 900) {
// 4 g♯4, e4, f♯4, b3
dong(GIS);
delay(speed);
dong(E);
delay(speed);
dong(FIS);
delay(speed);
dong(B);
delay(speed * 2);
// 5 b3, f♯4, g♯4, e4
dong(B);
delay(speed);
dong(FIS);
delay(speed);
dong(GIS);
delay(speed);
dong(E);
delay(speed * 2);
WestminsterFirstQuarter(speed);
}
void WestminsterFullHour(int hour = 0, int speed = 900) {
WestminsterHalfHour();
// 4 g♯4, e4, f♯4, b3
dong(GIS);
delay(speed);
dong(E);
delay(speed);
dong(FIS);
delay(speed);
dong(B);
delay(speed * 2);
// 5 b3, f♯4, g♯4, e4
dong(B);
delay(speed);
dong(FIS);
delay(speed);
dong(GIS);
delay(speed);
dong(E);
delay(speed * 2);
for (int i = 0; i < hour; i++) {
dong(BIGBEN);
delay(speed * 4);
}
}
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.