Vasanth Kumar / Mbed 2 deprecated RapidMP3_check

Dependencies:   RAPIDMP3 mbed

Fork of RapidMP3_check by Vasanth Kumar

Revision:
0:a540b792fbf0
Child:
1:dbb63bd6c828
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Nov 21 07:39:09 2014 +0000
@@ -0,0 +1,148 @@
+#include "mbed.h"
+#include "RAPIDMP3.h"
+
+
+RAPIDMP3 rmp3(D8, D2);    /// Tx, Rx
+Serial pc(USBTX, USBRX);
+
+int main() {
+    
+    wait(1.0);  
+
+    pc.puts("RAPID_MP3_V1 module demonstration\r\n");
+    
+    while (1) {
+        
+        // Play track till its end
+        rmp3.playFile("munthi.mp3");
+        rmp3.waitEndOfPlay();
+                     
+                
+        // Play track for a specified duration
+        rmp3.playFile("sempove.mp3");
+        wait(20.0);
+        rmp3.stop();        
+        wait(5.0);
+        
+        // Play, pause and resume a track
+        rmp3.playFile("karug.mp3");
+        wait(10.0);
+        rmp3.playPause();
+        wait(5.0);        
+        rmp3.playResume();        
+        wait(5.0);
+        
+        // Set volume level to 2
+        rmp3.volumeSet(2);  // 0 is max, 9 is mute
+        wait(5.0);
+        
+        // Increase volume one level
+        rmp3.volumeInc();
+        wait(5.0);
+        
+        // Decrease volume one level
+        rmp3.volumeDec();
+        wait(5.0);
+                
+        // Read and display current volume level in PC UART
+        uint8_t volume = rmp3.volumeGet();
+        pc.printf("current volume level = %d\r\n", volume);
+        wait(5.0);
+        
+        // Read the playback status
+        uint8_t playStatus = rmp3.getPlaybackStatus();
+        if (playStatus == RMP3_BUSY) {
+            pc.puts("Device is busy\r\n");
+            // Stop the current playback
+            rmp3.stop();                        
+            wait(5.0);
+        }        
+        pc.puts("Device is free\r\n");        
+        wait(5.0);
+        
+        // Record audio as .wav file for a specified time
+        rmp3.recordFile("rec_001.wav");
+        wait(20.0);
+        rmp3.stop();        
+        
+        
+        // Play the recorded audio till its end
+        rmp3.playFile("rec_001.wav");
+        rmp3.waitEndOfPlay();
+        
+        wait(5.0);      
+        
+        // loop again.
+    }
+}
+
+
+//DigitalOut myled(LED1);
+
+///** Send Rapid MP3 response to PC */
+//static void sendResponse(uint8_t response) {
+//    if (response == RMP3_OK) {
+//        pc.puts("OK\r\n");
+//    } else if (response == RMP3_ER) {        
+//        pc.puts("ER\r\n");        
+//        /// error in command
+//        while (1) {
+//            myled = !myled;
+//            wait(0.2f);
+//        }
+//    }    
+//}
+
+
+
+//int main() {
+//
+//    /** Application Code.....*/    
+//    uint8_t response;
+//    
+//    pc.puts("RAPID_MP3_V1\r\n");
+//    
+//    
+//    /** Wait for RMP3 module Initialization (LED1 Indication) */
+//    response = rmp3.waitDeviceFree();
+//    pc.puts("Initialized Successfully\r\n");
+//    sendResponse(response);
+//    myled = 1;
+//    wait(1.0f);    
+//    
+//    
+//    /** Check RMP3 module communication */
+//    response = rmp3.checkDevice();    
+//    pc.puts("DEVICE CHECK\r\n");   
+//    sendResponse(response);
+//    wait(1.0f);
+//
+//
+//    while (1) {
+//        
+//        /** Play an MP3 file and wait till it gets completed */
+//        response = rmp3.playFile("munthi.mp3");        
+//        if (response == RMP3_OK) {       
+//            pc.puts("TRACK 1 started...\r\n");   
+//            rmp3.waitEndOfPlay();
+//            pc.puts("TRACK 1 ended\r\n");        
+//        }
+//        sendResponse(response);
+//        wait(1.0f);
+//    
+//    
+//        /** Play an MP3 file and stop it after 20 seconds */
+//        response = rmp3.playFile("sempove.mp3");        
+//        pc.puts("TRACK 2 started...\r\n");    
+//        sendResponse(response);
+//        wait(20.0f);
+//        response = rmp3.stop();
+//        pc.puts("TRACK 2 stopped after 20 sec\r\n");        
+//        sendResponse(response);
+//        
+//        /// wait before looping again...
+//        wait(5.0f);
+//    
+//    }   
+//
+//}
\ No newline at end of file