This program is designed to act as a serial terminal for interfacing with serial peripherals, such as the ESP8266, that support AT Commands.

Dependencies:   mbed

Fork of SerialPassthrough by Austin Blackstone

Revision:
2:a8dcb07a1d00
Parent:
1:a76360ca4001
Child:
3:0393f97fd8cf
--- a/main.cpp	Fri Apr 24 18:18:22 2015 +0000
+++ b/main.cpp	Mon Apr 27 20:37:15 2015 +0000
@@ -1,39 +1,37 @@
 #include "mbed.h"
- 
-// Program to use the  mbed as a serial bridge
-//
-Serial pc(USBTX, USBRX); // tx, rx
-Serial dev(D1, D0); // tx, rx
- 
-void send() {
-    while (pc.readable()) {
-        dev.putc(pc.getc());
+
+Serial pc(USBTX, USBRX);    // computer to mbed board
+Serial esp(D1, D0);         // mbed board to target board
+
+int
+main()
+{
+    pc.baud(115200);
+    esp.baud(9600);
+    wait(0.1);
+    pc.printf("\r\n########### ready ###########\r\n");
+    esp.printf("AT+RST\r\n");
+    while(1) {
+        if(pc.readable()) {
+            char c = pc.getc();
+            //pc.putc(c); // echo character back to computer for sanity
+            //if(c == '\r'){
+//                esp.printf("\r\n");
+//            }
+//            else{
+            esp.putc(c);
+//            }
+        }
+        if(esp.readable()) {
+            char c = esp.getc();
+            //if(c == '\n'){
+//                pc.printf("\\n");
+//                }
+//            if(c == '\r'){
+//                pc.printf("\\r");
+//            }
+
+            pc.putc(c);
+        }
     }
 }
- 
-void recv() {
-    pc.putc(dev.getc());
-}
- 
-int main() {
-    char c;
-    
-    // PC serial     
-    pc.baud(9600);
-    pc.attach(send, Serial::RxIrq);
-    
-    // Device serial 
-    dev.baud(9600);   // LS20031 57600 
- 
-    //dev.printf("$PMTK314,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,5*2D\r\n");
-    //dev.printf("$PMTK103*30\r\n");
-    wait(0.1);
-    dev.printf("AT+RST\r\n");
-    while(1) {
-    
-        c = dev.getc();
-        pc.putc(c);
- 
-    }
- 
-}
\ No newline at end of file