Henk Meewis / Mbed 2 deprecated frdm_echo

Dependencies:   mbed

Revision:
1:20033a89af0e
Parent:
0:6898e364f29a
Child:
2:53d8e47c5171
--- a/main.cpp	Sun Apr 13 19:03:58 2014 +0000
+++ b/main.cpp	Sun Apr 13 20:31:41 2014 +0000
@@ -3,6 +3,8 @@
 #include "mbed.h"
 
 Serial usbSerial(USBTX, USBRX);
+Ticker messageTicker, scanTicker;
+bool sendHelloWorldFlag, scanUSBSerialRxFlag;
 
 void sendText(char *thisText)
 {
@@ -10,16 +12,55 @@
 }
 //-----------------------------------------------------------------------------
 
-void helloWorld()
+void sendHelloWorld()
 {
     sendText("Hello World\n");
+    sendHelloWorldFlag = false;
+}
+//-----------------------------------------------------------------------------
+
+void setSendHelloWorldFlag()
+{
+    sendHelloWorldFlag = true;
+}
+//-----------------------------------------------------------------------------
+
+void scanUSBSerialRx()
+{
+    if(usbSerial.readable()) {
+        char character = usbSerial.getc();
+        usbSerial.printf("%c\n", character);        
+    }
+    scanUSBSerialRxFlag = false;
+}
+//-----------------------------------------------------------------------------
+
+void setScanUSBSerialRxFlag()
+{
+    scanUSBSerialRxFlag = true;
+}
+//-----------------------------------------------------------------------------
+
+void initMain()
+{
+    usbSerial.baud(115200);
+    // usbSerial.attach(&usbSerialIrq);
+    
+    messageTicker.attach(&setSendHelloWorldFlag, 1.0);
+    sendHelloWorldFlag = false;
+    
+    scanTicker.attach(&setScanUSBSerialRxFlag, 0.01);
+    scanUSBSerialRxFlag = false;
 }
 //-----------------------------------------------------------------------------
 
 int main() {
+    initMain();
+    
     while(true) { 
-        helloWorld();
-        wait(2.0);
+        if(sendHelloWorldFlag) sendHelloWorld();
+        if(scanUSBSerialRxFlag) scanUSBSerialRx();
+        wait(0.02);
     }
 }
 //-----------------------------------------------------------------------------