Interactive Alarm Clock Code

Dependencies:   4DGL-uLCD-SE mbed

Committer:
tshin7
Date:
Thu Dec 10 08:59:55 2015 +0000
Revision:
0:68a3851de2ee
Alarm Clock

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tshin7 0:68a3851de2ee 1 #include "mbed.h"
tshin7 0:68a3851de2ee 2 #include "speaker.h"
tshin7 0:68a3851de2ee 3 #include "SongPlayer.h"
tshin7 0:68a3851de2ee 4
tshin7 0:68a3851de2ee 5 #define NOTE_B0 31
tshin7 0:68a3851de2ee 6 #define NOTE_C1 33
tshin7 0:68a3851de2ee 7 #define NOTE_CS1 35
tshin7 0:68a3851de2ee 8 #define NOTE_D1 37
tshin7 0:68a3851de2ee 9 #define NOTE_DS1 39
tshin7 0:68a3851de2ee 10 #define NOTE_E1 41
tshin7 0:68a3851de2ee 11 #define NOTE_F1 44
tshin7 0:68a3851de2ee 12 #define NOTE_FS1 46
tshin7 0:68a3851de2ee 13 #define NOTE_G1 49
tshin7 0:68a3851de2ee 14 #define NOTE_GS1 52
tshin7 0:68a3851de2ee 15 #define NOTE_A1 55
tshin7 0:68a3851de2ee 16 #define NOTE_AS1 58
tshin7 0:68a3851de2ee 17 #define NOTE_B1 62
tshin7 0:68a3851de2ee 18 #define NOTE_C2 65
tshin7 0:68a3851de2ee 19 #define NOTE_CS2 69
tshin7 0:68a3851de2ee 20 #define NOTE_D2 73
tshin7 0:68a3851de2ee 21 #define NOTE_DS2 78
tshin7 0:68a3851de2ee 22 #define NOTE_E2 82
tshin7 0:68a3851de2ee 23 #define NOTE_F2 87
tshin7 0:68a3851de2ee 24 #define NOTE_FS2 93
tshin7 0:68a3851de2ee 25 #define NOTE_G2 98
tshin7 0:68a3851de2ee 26 #define NOTE_GS2 104
tshin7 0:68a3851de2ee 27 #define NOTE_A2 110
tshin7 0:68a3851de2ee 28 #define NOTE_AS2 117
tshin7 0:68a3851de2ee 29 #define NOTE_B2 123
tshin7 0:68a3851de2ee 30 #define NOTE_C3 131
tshin7 0:68a3851de2ee 31 #define NOTE_CS3 139
tshin7 0:68a3851de2ee 32 #define NOTE_D3 147
tshin7 0:68a3851de2ee 33 #define NOTE_DS3 156
tshin7 0:68a3851de2ee 34 #define NOTE_E3 165
tshin7 0:68a3851de2ee 35 #define NOTE_F3 175
tshin7 0:68a3851de2ee 36 #define NOTE_FS3 185
tshin7 0:68a3851de2ee 37 #define NOTE_G3 196
tshin7 0:68a3851de2ee 38 #define NOTE_GS3 208
tshin7 0:68a3851de2ee 39 #define NOTE_A3 220
tshin7 0:68a3851de2ee 40 #define NOTE_AS3 233
tshin7 0:68a3851de2ee 41 #define NOTE_B3 247
tshin7 0:68a3851de2ee 42 #define NOTE_C4 262
tshin7 0:68a3851de2ee 43 #define NOTE_CS4 277
tshin7 0:68a3851de2ee 44 #define NOTE_D4 294
tshin7 0:68a3851de2ee 45 #define NOTE_DS4 311
tshin7 0:68a3851de2ee 46 #define NOTE_E4 330
tshin7 0:68a3851de2ee 47 #define NOTE_F4 349
tshin7 0:68a3851de2ee 48 #define NOTE_FS4 370
tshin7 0:68a3851de2ee 49 #define NOTE_G4 392
tshin7 0:68a3851de2ee 50 #define NOTE_GS4 415
tshin7 0:68a3851de2ee 51 #define NOTE_A4 440
tshin7 0:68a3851de2ee 52 #define NOTE_AS4 466
tshin7 0:68a3851de2ee 53 #define NOTE_B4 494
tshin7 0:68a3851de2ee 54 #define NOTE_C5 523
tshin7 0:68a3851de2ee 55 #define NOTE_CS5 554
tshin7 0:68a3851de2ee 56 #define NOTE_D5 587
tshin7 0:68a3851de2ee 57 #define NOTE_DS5 622
tshin7 0:68a3851de2ee 58 #define NOTE_E5 659
tshin7 0:68a3851de2ee 59 #define NOTE_F5 698
tshin7 0:68a3851de2ee 60 #define NOTE_FS5 740
tshin7 0:68a3851de2ee 61 #define NOTE_G5 784
tshin7 0:68a3851de2ee 62 #define NOTE_GS5 831
tshin7 0:68a3851de2ee 63 #define NOTE_A5 880
tshin7 0:68a3851de2ee 64 #define NOTE_AS5 932
tshin7 0:68a3851de2ee 65 #define NOTE_B5 988
tshin7 0:68a3851de2ee 66 #define NOTE_C6 1047
tshin7 0:68a3851de2ee 67 #define NOTE_CS6 1109
tshin7 0:68a3851de2ee 68 #define NOTE_D6 1175
tshin7 0:68a3851de2ee 69 #define NOTE_DS6 1245
tshin7 0:68a3851de2ee 70 #define NOTE_E6 1319
tshin7 0:68a3851de2ee 71 #define NOTE_F6 1397
tshin7 0:68a3851de2ee 72 #define NOTE_FS6 1480
tshin7 0:68a3851de2ee 73 #define NOTE_G6 1568
tshin7 0:68a3851de2ee 74 #define NOTE_GS6 1661
tshin7 0:68a3851de2ee 75 #define NOTE_A6 1760
tshin7 0:68a3851de2ee 76 #define NOTE_AS6 1865
tshin7 0:68a3851de2ee 77 #define NOTE_B6 1976
tshin7 0:68a3851de2ee 78 #define NOTE_C7 2093
tshin7 0:68a3851de2ee 79 #define NOTE_CS7 2217
tshin7 0:68a3851de2ee 80 #define NOTE_D7 2349
tshin7 0:68a3851de2ee 81 #define NOTE_DS7 2489
tshin7 0:68a3851de2ee 82 #define NOTE_E7 2637
tshin7 0:68a3851de2ee 83 #define NOTE_F7 2794
tshin7 0:68a3851de2ee 84 #define NOTE_FS7 2960
tshin7 0:68a3851de2ee 85 #define NOTE_G7 3136
tshin7 0:68a3851de2ee 86 #define NOTE_GS7 3322
tshin7 0:68a3851de2ee 87 #define NOTE_A7 3520
tshin7 0:68a3851de2ee 88 #define NOTE_AS7 3729
tshin7 0:68a3851de2ee 89 #define NOTE_B7 3951
tshin7 0:68a3851de2ee 90 #define NOTE_C8 4186
tshin7 0:68a3851de2ee 91 #define NOTE_CS8 4435
tshin7 0:68a3851de2ee 92 #define NOTE_D8 4699
tshin7 0:68a3851de2ee 93 #define NOTE_DS8 4978
tshin7 0:68a3851de2ee 94
tshin7 0:68a3851de2ee 95 float note[]= {
tshin7 0:68a3851de2ee 96 NOTE_E7, NOTE_E7, 0, NOTE_E7,
tshin7 0:68a3851de2ee 97 0, NOTE_C7, NOTE_E7, 0,
tshin7 0:68a3851de2ee 98 NOTE_G7, 0, 0, 0,
tshin7 0:68a3851de2ee 99 NOTE_G6, 0, 0, 0,
tshin7 0:68a3851de2ee 100
tshin7 0:68a3851de2ee 101 NOTE_C7, 0, 0, NOTE_G6,
tshin7 0:68a3851de2ee 102 0, 0, NOTE_E6, 0,
tshin7 0:68a3851de2ee 103 0, NOTE_A6, 0, NOTE_B6,
tshin7 0:68a3851de2ee 104 0, NOTE_AS6, NOTE_A6, 0,
tshin7 0:68a3851de2ee 105
tshin7 0:68a3851de2ee 106 NOTE_G6, NOTE_E7, NOTE_G7,
tshin7 0:68a3851de2ee 107 NOTE_A7, 0, NOTE_F7, NOTE_G7,
tshin7 0:68a3851de2ee 108 0, NOTE_E7, 0, NOTE_C7,
tshin7 0:68a3851de2ee 109 NOTE_D7, NOTE_B6, 0, 0,
tshin7 0:68a3851de2ee 110
tshin7 0:68a3851de2ee 111 NOTE_C7, 0, 0, NOTE_G6,
tshin7 0:68a3851de2ee 112 0, 0, NOTE_E6, 0,
tshin7 0:68a3851de2ee 113 0, NOTE_A6, 0, NOTE_B6,
tshin7 0:68a3851de2ee 114 0, NOTE_AS6, NOTE_A6, 0,
tshin7 0:68a3851de2ee 115
tshin7 0:68a3851de2ee 116 NOTE_G6, NOTE_E7, NOTE_G7,
tshin7 0:68a3851de2ee 117 NOTE_A7, 0, NOTE_F7, NOTE_G7,
tshin7 0:68a3851de2ee 118 0, NOTE_E7, 0, NOTE_C7,
tshin7 0:68a3851de2ee 119 NOTE_D7, NOTE_B6, 0, 0
tshin7 0:68a3851de2ee 120 };
tshin7 0:68a3851de2ee 121 float duration[]= {
tshin7 0:68a3851de2ee 122 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 123 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 124 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 125 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 126
tshin7 0:68a3851de2ee 127 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 128 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 129 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 130 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 131
tshin7 0:68a3851de2ee 132 0.075,0.075,0.075,
tshin7 0:68a3851de2ee 133 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 134 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 135 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 136
tshin7 0:68a3851de2ee 137 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 138 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 139 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 140 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 141
tshin7 0:68a3851de2ee 142 0.075,0.075,0.075,
tshin7 0:68a3851de2ee 143 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 144 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 145 0.1, 0.1, 0.1, 0.1,
tshin7 0:68a3851de2ee 146 };
tshin7 0:68a3851de2ee 147
tshin7 0:68a3851de2ee 148 float off[1] = {0.0};
tshin7 0:68a3851de2ee 149
tshin7 0:68a3851de2ee 150 SongPlayer mySpeaker(p25);
tshin7 0:68a3851de2ee 151
tshin7 0:68a3851de2ee 152 void speaker::playSpeaker()
tshin7 0:68a3851de2ee 153 {
tshin7 0:68a3851de2ee 154 mySpeaker.PlaySong(note,duration);
tshin7 0:68a3851de2ee 155 }
tshin7 0:68a3851de2ee 156
tshin7 0:68a3851de2ee 157 void speaker::turnOffSpeaker()
tshin7 0:68a3851de2ee 158 {
tshin7 0:68a3851de2ee 159 mySpeaker.PlaySong(off,off);
tshin7 0:68a3851de2ee 160 }