simple passthrough for nucleo
Fork of SerialPassthrough_LPC1768 by
Revision 5:96cb82af9996, committed 2015-04-30
- Comitter:
- sam_grove
- Date:
- Thu Apr 30 22:48:21 2015 +0000
- Parent:
- 4:ba9100d52e48
- Child:
- 6:0398d0fcc8cc
- Commit message:
- Event driven with low power optimizations
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Mon Apr 27 21:32:55 2015 +0000
+++ b/main.cpp Thu Apr 30 22:48:21 2015 +0000
@@ -1,37 +1,35 @@
#include "mbed.h"
-// Program to use the mbed as a serial bridge
-//
-RawSerial pc(USBTX, USBRX); // tx, rx
-RawSerial dev(D1, D0); // tx, rx
+RawSerial pc(USBTX, USBRX);
+RawSerial dev(D1, D0);
+DigitalOut led1(LED1);
+DigitalOut led4(LED4);
-void send()
+void dev_recv()
{
- while (pc.readable()) {
+ led1 = !led1;
+ while(dev.readable()) {
+ pc.putc(dev.getc());
+ }
+}
+
+void pc_recv()
+{
+ led4 = !led4;
+ while(pc.readable()) {
dev.putc(pc.getc());
}
}
-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);
- wait(0.1);
- dev.printf("AT+RST\r\n"); // Reset esp device
+ pc.attach(&pc_recv, Serial::RxIrq);
+ dev.attach(&dev_recv, Serial::RxIrq);
+
while(1) {
- c = dev.getc();
- pc.putc(c);
+ sleep();
}
}
