EasyVR3_LED

Dependencies:   mbed

Revision:
0:13b922a701d4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Oct 22 18:58:41 2015 +0000
@@ -0,0 +1,63 @@
+#include "mbed.h"
+#include "EasyVR.h"
+ 
+DigitalOut led1(LED1);
+DigitalOut led4(LED4);
+
+EasyVR VR(p13, p14);  // tx, rx
+Serial pc(USBTX,USBRX);
+
+PwmOut red(p21);
+PwmOut blue(p22);
+PwmOut green(p23);
+
+void ledDance();
+ 
+int main() {
+    char buffer=0;
+
+    if(VR.awake())                //wake up device - needs more work and a timeout
+    {
+        led1 = 1;
+    }
+    
+    while (1)
+    {
+        VR.sendCmd(CMD_RECOG_SI); // Start Recognition
+        VR.sendArg(1);            // Use Wordset 3 - the numbers 0..10
+        
+        buffer = VR.recv();       // Receive a byte from easyVR 
+        
+        if(buffer == CMD_SLEEP)   // If easyVR is sleeping
+        {
+            VR.sendCmd(' ');      // Send blanck to activate it
+        }
+        else
+        {
+            VR.decrypt(&buffer);  // If not sleeping, decrtpt received message
+            pc.printf("%d\n",buffer);
+        }
+        
+        // if command is taken by easyVR, the LED4 will toggle
+        if (buffer==7) {red = 0; green = 1; blue = 0;led4=!led4;}   // hello
+        if (buffer==6) {red = 0; green = 0; blue = 0;led4=!led4;}   // stop or turn off
+        if (buffer==3) {led4=!led4;ledDance();}                     // run
+        if (buffer==7) led4=!led4;
+        wait(0.1);
+    }
+}
+
+void ledDance()
+{
+    for(int i=0;i<5000;i++)
+    {
+        red = !green;
+        green = !blue;
+        blue = !red;
+        wait(0.001);
+    }
+    red = 1;
+    green = 0;
+    blue = 0;
+    
+}
\ No newline at end of file