USBAudio example using a microphone

Dependencies:   USBDevice mbed

Revision:
6:be128039be16
Parent:
5:b49b6a8ca111
Child:
7:6b0012b8fd01
--- a/main.cpp	Tue Dec 20 10:44:10 2011 +0000
+++ b/main.cpp	Tue Dec 20 11:17:33 2011 +0000
@@ -1,6 +1,10 @@
 #include "mbed.h"
 #include "USBAudio.h"
 
+extern "C" void HardFault_Handler() {
+    error("Hard Fault!\n");
+}
+
 // frequency: 8 kHz
 #define FREQ 8000
 
@@ -10,14 +14,15 @@
 // length of an audio packet: each ms, we receive 48 * 16bits ->48 * 2 bytes. as there is one channel, the length will be 48 * 2 * 1
 #define AUDIO_LENGTH_PACKET (FREQ/500) * NB_CHA
 
-USBAudio audio(FREQ, NB_CHA, 0xaac0, 0xa734);
+USBAudio audio(FREQ, NB_CHA, 0x1111, 0x78ab);
+
 AnalogIn mic(p20);
 DigitalOut p(p19);
 
-// length of buffer = AUDIO_LENGTH_PACKET/2 because we are handling int16 and not bytes.
 int16_t buf[AUDIO_LENGTH_PACKET/2];
 
 int main() {
+
     double mic_mean = 0.0;
     double mic_value;
 
@@ -28,16 +33,14 @@
     }
 
     while (1) {
-
-        // read 8 micro samples
+        p = 1;
         for (int i = 0; i < AUDIO_LENGTH_PACKET/2; i++) {
             buf[i] = (mic.read_u16() >> 3) - mic_mean;
             if (i != AUDIO_LENGTH_PACKET/2) {
-                wait_us(110);
+                wait_us(80);
             }
         }
-        // send
+        p = 0;
         audio.write((uint8_t *)buf);
-
     }
 }