Project for playing a song on 2 meeds sending notes over I2C

Dependencies:   C12832 mbed

Committer:
jad19925
Date:
Thu Feb 13 20:26:20 2014 +0000
Revision:
2:c35c40bae96e
Parent:
1:feca2dfd8753
Child:
3:eb63ba24e2bb
update defines

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jad19925 0:db7b3841b98f 1 #include "mbed.h"
jad19925 0:db7b3841b98f 2 #include "C12832.h"
jad19925 1:feca2dfd8753 3 #include "mario.h"
jad19925 0:db7b3841b98f 4
jad19925 2:c35c40bae96e 5 #define MASTER
jad19925 2:c35c40bae96e 6 //#define SLAVE
jad19925 2:c35c40bae96e 7
jad19925 0:db7b3841b98f 8 BusIn joy(p15,p12,p13,p16);
jad19925 0:db7b3841b98f 9 DigitalIn fire(p14);
jad19925 0:db7b3841b98f 10 PwmOut spkr(p26);
jad19925 0:db7b3841b98f 11 PwmOut red (p23);
jad19925 0:db7b3841b98f 12 PwmOut green (p24);
jad19925 0:db7b3841b98f 13 PwmOut blue (p25);
jad19925 0:db7b3841b98f 14 C12832 lcd(p5, p7, p6, p8, p11);
jad19925 0:db7b3841b98f 15 AnalogIn pot1(p19);
jad19925 0:db7b3841b98f 16 AnalogIn pot2(p20);
jad19925 0:db7b3841b98f 17 DigitalIn up(p15);
jad19925 0:db7b3841b98f 18 DigitalIn down(p12);
jad19925 0:db7b3841b98f 19
jad19925 0:db7b3841b98f 20 BusOut leds(LED1,LED2,LED3,LED4);
jad19925 0:db7b3841b98f 21
jad19925 0:db7b3841b98f 22 int main()
jad19925 0:db7b3841b98f 23 {
jad19925 0:db7b3841b98f 24 float p1Voltage = 0;
jad19925 0:db7b3841b98f 25 float p2Voltage = 0;
jad19925 0:db7b3841b98f 26 float blueDC = 1;
jad19925 0:db7b3841b98f 27 red.period(0.001);
jad19925 0:db7b3841b98f 28 green.period(0.001);
jad19925 0:db7b3841b98f 29 blue.period(0.001);
jad19925 0:db7b3841b98f 30 red=1;
jad19925 0:db7b3841b98f 31 green=1;
jad19925 0:db7b3841b98f 32 blue=1;
jad19925 0:db7b3841b98f 33
jad19925 0:db7b3841b98f 34 lcd.cls();
jad19925 0:db7b3841b98f 35 lcd.printf("hello world");
jad19925 0:db7b3841b98f 36
jad19925 0:db7b3841b98f 37 while(1) {
jad19925 0:db7b3841b98f 38 if (fire) {
jad19925 0:db7b3841b98f 39 leds=0xf;
jad19925 0:db7b3841b98f 40 for(int i=0;i<(sizeof(marioNotes)/sizeof(NoteName));i++){
jad19925 0:db7b3841b98f 41 if(marioNotes[i] == R) {
jad19925 0:db7b3841b98f 42 spkr=0.0;
jad19925 1:feca2dfd8753 43 wait(.7*marioBeats[i]/12);
jad19925 0:db7b3841b98f 44 }
jad19925 0:db7b3841b98f 45 else{
jad19925 1:feca2dfd8753 46 spkr.period(1/(notes[marioNotes[i]]));
jad19925 0:db7b3841b98f 47 spkr=.5;
jad19925 1:feca2dfd8753 48 wait(.7*marioBeats[i]/12);
jad19925 0:db7b3841b98f 49 spkr=0.0;
jad19925 0:db7b3841b98f 50 }
jad19925 0:db7b3841b98f 51 }
jad19925 0:db7b3841b98f 52 spkr=0.0;
jad19925 0:db7b3841b98f 53 //end speaker code
jad19925 0:db7b3841b98f 54 }
jad19925 1:feca2dfd8753 55 else
jad19925 1:feca2dfd8753 56 {
jad19925 1:feca2dfd8753 57 leds=joy;
jad19925 1:feca2dfd8753 58 #ifdef MASTER
jad19925 1:feca2dfd8753 59 if(up){
jad19925 1:feca2dfd8753 60
jad19925 1:feca2dfd8753 61 }
jad19925 1:feca2dfd8753 62 else if(down){
jad19925 1:feca2dfd8753 63
jad19925 1:feca2dfd8753 64 }
jad19925 2:c35c40bae96e 65 #elif SLAVE
jad19925 1:feca2dfd8753 66
jad19925 1:feca2dfd8753 67 #endif
jad19925 1:feca2dfd8753 68 }
jad19925 0:db7b3841b98f 69 }
jad19925 0:db7b3841b98f 70 }