Alarm Clock

Dependencies:   TextLCD mbed

Fork of SmartRise_MBED by Austin Sloop

Revision:
5:90f059fdc625
Child:
7:5412a6d7ef6d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Alarm.cpp	Tue Jan 26 01:12:34 2016 +0000
@@ -0,0 +1,49 @@
+#include "mbed.h"
+PwmOut buzzer1(p21);
+PwmOut buzzer2(p22);
+bool go = true;
+
+
+void Sound_Alarm()
+{
+float frequency[] = {262,0,262,0,262,0,349,0,523,0,466,0,440,0,392,0,698,0,523,0,466,0,440,0,392,0,698,0,523,0,466,0,440,0,466,0,392,0,/**/};
+float beat[] = {.3,0,.3,0,.3,0,2,0,2,0,.3,0,.3,0,.3,0,2,0,1,0,.3,0,.3,0,.3,0,2,0,1,0,.3,0,.3,0,.3,0,2,0/**/};
+float frequency2[] = {262,0,262,0,294,0,294,0,466,0,440,0,392,0,349,0,349,0,392,0,440,0,392,0,294,0,330,0,523,0,523,0,698,0,622,0,554,0,523,0,466,0,415,0,392,0,349,0,523,0};
+float beat2[] = {.75,0,.25,0,1.5,0,.5,0,.5,0,.5,0,.5,0,.5,0,.3,0,.3,0,.3,0,1,0,.5,0,1,0,.75,0,.25,0,1,0,.5,0,1,0,.5,0,1,0,.5,0,1,0,.5,0,4,0};
+
+    while(go)
+    {
+        for(int i=0; i<= 37;i++)
+        {
+            buzzer1.period(2/(frequency[i]));
+            buzzer2.period(2/(frequency[i]));
+            buzzer1 = 0.5;
+            buzzer2 = 0.5;
+            
+            wait(0.4*beat[i]); 
+            if(beat[i]==0)
+            {wait(.05);}
+          
+        }
+        
+        for(int i=0; i<= 49;i++)
+        {
+            buzzer1.period(2/(frequency2[i]));
+            buzzer2.period(2/(frequency2[i]));
+            buzzer1 = 0.5;
+            buzzer2 = 0.5;
+            
+            wait(0.4*beat2[i]); 
+            if(beat2[i]==0)
+            {wait(.05);}
+          
+        }
+    }
+        
+    
+}    
+
+void turn_off()
+{
+    go = !go;    
+}