nadiyah johnson
/
SongsAndLights
Plays songs and changes LED Color
main.cpp@0:c6da9c77286d, 2014-02-12 (annotated)
- Committer:
- nadiyah
- Date:
- Wed Feb 12 17:47:09 2014 +0000
- Revision:
- 0:c6da9c77286d
- Child:
- 1:028b0f4df520
Plays song and changes LED color;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nadiyah | 0:c6da9c77286d | 1 | #include "mbed.h" |
nadiyah | 0:c6da9c77286d | 2 | |
nadiyah | 0:c6da9c77286d | 3 | //#include "TextLCD.h" |
nadiyah | 0:c6da9c77286d | 4 | |
nadiyah | 0:c6da9c77286d | 5 | |
nadiyah | 0:c6da9c77286d | 6 | |
nadiyah | 0:c6da9c77286d | 7 | |
nadiyah | 0:c6da9c77286d | 8 | #include "mbed.h" |
nadiyah | 0:c6da9c77286d | 9 | PwmOut buzzer(p26); |
nadiyah | 0:c6da9c77286d | 10 | /*Table 4.3: Frequencies of notes used in tune |
nadiyah | 0:c6da9c77286d | 11 | Word/syllable Musical note Frequency (Hz) Beats |
nadiyah | 0:c6da9c77286d | 12 | Oran- E 659 1 |
nadiyah | 0:c6da9c77286d | 13 | ges C# 554 1 |
nadiyah | 0:c6da9c77286d | 14 | and E 659 1 |
nadiyah | 0:c6da9c77286d | 15 | le- C# 554 1 |
nadiyah | 0:c6da9c77286d | 16 | mons, A 440 1 |
nadiyah | 0:c6da9c77286d | 17 | say B 494 ½ |
nadiyah | 0:c6da9c77286d | 18 | the C# 554 ½ |
nadiyah | 0:c6da9c77286d | 19 | bells D 587 1 |
nadiyah | 0:c6da9c77286d | 20 | of B 494 1 |
nadiyah | 0:c6da9c77286d | 21 | St E 659 1 |
nadiyah | 0:c6da9c77286d | 22 | Clem- C# 554 1 |
nadiyah | 0:c6da9c77286d | 23 | ent’s A 440 2 |
nadiyah | 0:c6da9c77286d | 24 | Analog Output 73*/ |
nadiyah | 0:c6da9c77286d | 25 | |
nadiyah | 0:c6da9c77286d | 26 | PwmOut r(p23), g(p24), b(p25); |
nadiyah | 0:c6da9c77286d | 27 | Serial usbSerial(USBTX,USBRX); |
nadiyah | 0:c6da9c77286d | 28 | AnalogIn pot(p19); |
nadiyah | 0:c6da9c77286d | 29 | AnalogIn pot1(p20); |
nadiyah | 0:c6da9c77286d | 30 | DigitalIn JS(p14); |
nadiyah | 0:c6da9c77286d | 31 | //frequency array |
nadiyah | 0:c6da9c77286d | 32 | //float frequency[]={659,554,659,554,440,494,554,587,494,659,554,440}; |
nadiyah | 0:c6da9c77286d | 33 | |
nadiyah | 0:c6da9c77286d | 34 | #include "C12832.h" |
nadiyah | 0:c6da9c77286d | 35 | |
nadiyah | 0:c6da9c77286d | 36 | |
nadiyah | 0:c6da9c77286d | 37 | C12832 lcd(p5, p7, p6, p8, p11); |
nadiyah | 0:c6da9c77286d | 38 | |
nadiyah | 0:c6da9c77286d | 39 | float frequency[]={392.00,659,659,587,659,392.00,392.00,440.00,440.00,523.25,440.00,440,392.00,392.00,392.00,659,659,587,659,392.00,392.00,440.00,440.00,392.00,261.63,659,587,261.63}; |
nadiyah | 0:c6da9c77286d | 40 | float beat[]={1,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,1,1,1,1,2}; //beat array |
nadiyah | 0:c6da9c77286d | 41 | int main() { |
nadiyah | 0:c6da9c77286d | 42 | while (1) { |
nadiyah | 0:c6da9c77286d | 43 | while(!JS){ |
nadiyah | 0:c6da9c77286d | 44 | r=pot.read(); |
nadiyah | 0:c6da9c77286d | 45 | g=pot1.read(); |
nadiyah | 0:c6da9c77286d | 46 | } |
nadiyah | 0:c6da9c77286d | 47 | while(JS){ |
nadiyah | 0:c6da9c77286d | 48 | for (int i=0;i<=29;i++) { |
nadiyah | 0:c6da9c77286d | 49 | buzzer.period(1/(2*frequency[i])); // set PWM period |
nadiyah | 0:c6da9c77286d | 50 | buzzer=0.5; // set duty cycle |
nadiyah | 0:c6da9c77286d | 51 | wait(0.7*beat[i]); // hold for beat period |
nadiyah | 0:c6da9c77286d | 52 | |
nadiyah | 0:c6da9c77286d | 53 | |
nadiyah | 0:c6da9c77286d | 54 | lcd.cls(); |
nadiyah | 0:c6da9c77286d | 55 | lcd.locate(0,3); |
nadiyah | 0:c6da9c77286d | 56 | lcd.printf("Jesus Loves Me"); |
nadiyah | 0:c6da9c77286d | 57 | r=pot.read(); |
nadiyah | 0:c6da9c77286d | 58 | g=pot1.read(); |
nadiyah | 0:c6da9c77286d | 59 | } |
nadiyah | 0:c6da9c77286d | 60 | while(!JS){ |
nadiyah | 0:c6da9c77286d | 61 | r=pot.read(); |
nadiyah | 0:c6da9c77286d | 62 | g=pot1.read(); |
nadiyah | 0:c6da9c77286d | 63 | } |
nadiyah | 0:c6da9c77286d | 64 | } |
nadiyah | 0:c6da9c77286d | 65 | /////color change |
nadiyah | 0:c6da9c77286d | 66 | |
nadiyah | 0:c6da9c77286d | 67 | |
nadiyah | 0:c6da9c77286d | 68 | |
nadiyah | 0:c6da9c77286d | 69 | ///lcd |
nadiyah | 0:c6da9c77286d | 70 | |
nadiyah | 0:c6da9c77286d | 71 | |
nadiyah | 0:c6da9c77286d | 72 | |
nadiyah | 0:c6da9c77286d | 73 | |
nadiyah | 0:c6da9c77286d | 74 | |
nadiyah | 0:c6da9c77286d | 75 | } |
nadiyah | 0:c6da9c77286d | 76 | |
nadiyah | 0:c6da9c77286d | 77 | |
nadiyah | 0:c6da9c77286d | 78 | /* while(1){ |
nadiyah | 0:c6da9c77286d | 79 | r=pot.read(); |
nadiyah | 0:c6da9c77286d | 80 | g=pot1.read(); |
nadiyah | 0:c6da9c77286d | 81 | }*/ |
nadiyah | 0:c6da9c77286d | 82 | |
nadiyah | 0:c6da9c77286d | 83 | |
nadiyah | 0:c6da9c77286d | 84 | |
nadiyah | 0:c6da9c77286d | 85 | |
nadiyah | 0:c6da9c77286d | 86 | |
nadiyah | 0:c6da9c77286d | 87 | |
nadiyah | 0:c6da9c77286d | 88 | } |
nadiyah | 0:c6da9c77286d | 89 | |
nadiyah | 0:c6da9c77286d | 90 |