EA BaseBoard, playing wav, PC see\'s SD-card through USB port.

Dependencies:   mbed

Revision:
0:fef366d2ed20
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Nov 22 05:45:58 2011 +0000
@@ -0,0 +1,75 @@
+#include "mbed.h"
+#include "dbg.h"
+#include "USBMSC.h"
+
+#include "msc_bot.h"
+#include "SDFileSystem.h"
+#include "wavplayer.h"
+#include <new>
+
+Serial pc(USBTX, USBRX);
+DigitalOut myled(LED1);
+SDFileSystem sd(p5, p6, p7, p24, "sd");
+DigitalIn button(p21);
+USBMSC usbdev;
+
+DigitalOut volCLK(p22);
+//USBMSC usbdev(0xFFFF, 0x0003, 0x0100);
+
+extern "C"
+void HardFault_Handler() {
+    printf("Hard Fault!\n");
+    exit(-1);
+}
+
+void no_memory () {
+    printf("panic: can't allocate to memory!\r\n");
+    exit(-1);
+}
+
+void msc_evt (uint8_t endpoint) {
+    switch (endpoint) {
+    case EPBULK_OUT:
+        MSCBotBulkOut();
+        break;
+    case EPBULK_IN:
+        MSCBotBulkIn();
+        break;
+    case 0xFF:
+        MSCBotReset();
+        break;
+    }
+}
+
+int main() {
+    button.mode(PullUp);
+    WavPlayer myWavPlayer;
+
+    set_new_handler(no_memory); // new handler function
+    FILE *fp = fopen("/sd/settings.txt", "r");
+	char array[17];
+	if (fp) {
+        while(fgets(array, 17, fp)){
+        	pc.printf("file: %s\r\n",array);
+		}
+        fclose(fp);
+    }
+    if (fp == NULL) {
+        pc.printf("Could not open file for write\n");
+		fclose(fp);
+    }
+
+    MSCBotReset();
+    usbdev.attach(&msc_evt);
+    
+   
+    while(1) {
+        if(button == 0){ 
+            myWavPlayer.play_wave(array); //  8 bit sample size
+        }   
+        myled = 1;
+        wait(0.5);
+        myled = 0;
+        wait(0.5);
+    }
+}