2nd half of mbed DDR
Dependencies: PinDetect SDFileSystem mbed wave_player
Fork of WavePlayer_HelloWorld by
main.cpp@3:ddef9c94e3ba, 2014-04-29 (annotated)
- 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?
User | Revision | Line number | New 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 | } |