2nd half of mbed DDR

Dependencies:   PinDetect SDFileSystem mbed wave_player

Fork of WavePlayer_HelloWorld by jim hamblen

Committer:
jmelliadis3
Date:
Tue Apr 29 23:26:58 2014 +0000
Revision:
3:ddef9c94e3ba
Parent:
2:bc774d066d69
mbed DDR

Who changed what in which revision?

UserRevisionLine numberNew contents of line
4180_1 1:5b8e223e983d 1
4180_1 1:5b8e223e983d 2 #include "mbed.h"
4180_1 1:5b8e223e983d 3 #include "SDFileSystem.h"
4180_1 1:5b8e223e983d 4 #include "wave_player.h"
jmelliadis3 2:bc774d066d69 5 #include "PinDetect.h"
4180_1 1:5b8e223e983d 6
4180_1 1:5b8e223e983d 7
4180_1 1:5b8e223e983d 8 SDFileSystem sd(p5, p6, p7, p8, "sd"); //SD card
4180_1 1:5b8e223e983d 9
4180_1 1:5b8e223e983d 10 AnalogOut DACout(p18);
jmelliadis3 2:bc774d066d69 11 InterruptIn stop(p25);
jmelliadis3 2:bc774d066d69 12 DigitalIn start(p26);
jmelliadis3 2:bc774d066d69 13 DigitalOut songOver(p30);
jmelliadis3 2:bc774d066d69 14 //DigitalIn start(p26);
jmelliadis3 2:bc774d066d69 15
jmelliadis3 2:bc774d066d69 16
jmelliadis3 2:bc774d066d69 17
jmelliadis3 2:bc774d066d69 18 bool playstop = false;
jmelliadis3 2:bc774d066d69 19 bool *stopPlaying = &playstop;
4180_1 1:5b8e223e983d 20
4180_1 1:5b8e223e983d 21 wave_player waver(&DACout);
jmelliadis3 2:bc774d066d69 22 //FILE *wave_file;
4180_1 1:5b8e223e983d 23
jmelliadis3 2:bc774d066d69 24 void stop_rise() {
jmelliadis3 2:bc774d066d69 25
jmelliadis3 2:bc774d066d69 26 playstop = !playstop;
jmelliadis3 2:bc774d066d69 27 }
jmelliadis3 2:bc774d066d69 28
jmelliadis3 2:bc774d066d69 29 void stop_fall() {
jmelliadis3 2:bc774d066d69 30
jmelliadis3 2:bc774d066d69 31 playstop = !playstop;
jmelliadis3 2:bc774d066d69 32 }
jmelliadis3 2:bc774d066d69 33
jmelliadis3 2:bc774d066d69 34 int main(){
jmelliadis3 2:bc774d066d69 35
jmelliadis3 2:bc774d066d69 36 songOver = 0;
jmelliadis3 2:bc774d066d69 37 stop.rise(&stop_rise);
jmelliadis3 2:bc774d066d69 38 stop.fall(&stop_fall);
jmelliadis3 2:bc774d066d69 39
jmelliadis3 2:bc774d066d69 40
jmelliadis3 2:bc774d066d69 41 while (1) {
jmelliadis3 2:bc774d066d69 42 while(start == 0){};
jmelliadis3 2:bc774d066d69 43 songOver = 0;
jmelliadis3 2:bc774d066d69 44 //printf("\n\n\nHello, wave world!\n");
jmelliadis3 2:bc774d066d69 45 if (playstop == true) {
4180_1 1:5b8e223e983d 46 FILE *wave_file;
jmelliadis3 2:bc774d066d69 47 wave_file = fopen("/sd/letsgroove.wav", "r");
jmelliadis3 2:bc774d066d69 48 waver.play(wave_file, stopPlaying);
jmelliadis3 2:bc774d066d69 49 playstop = false;
4180_1 1:5b8e223e983d 50 fclose(wave_file);
jmelliadis3 2:bc774d066d69 51 songOver = 1;
jmelliadis3 2:bc774d066d69 52 }
jmelliadis3 2:bc774d066d69 53 }
4180_1 1:5b8e223e983d 54 }