An example Program for the SimpleSerialProtocol Library, This program will receive a packet, then echo it back to the client
Dependencies: mbed SimpleSerialProtocol MODSERIAL
A simple example program that receives a packet over serial and echos it back.
I include this java program to show an example client application, all this program does is send packets as fast as it can without filling up its output buffer, the mbed will echo these packets back.
This is a good benchmark of the serial connection, and should show about 11KB/s at 115200baud
/media/uploads/p3p/serialecho.zip
example command: java -jar SerialEcho.jar com3 115200
Diff: main.cpp
- Revision:
- 6:d33e929ebaa9
- Parent:
- 5:f693f68e9de6
- Child:
- 10:f6862abba2d5
--- a/main.cpp Sat Mar 17 16:42:31 2012 +0000 +++ b/main.cpp Sun Jul 29 19:31:31 2012 +0000 @@ -17,15 +17,16 @@ // } // return tmp_checksum; -Timer timer; +Serial debug(p28, p27); + TestProtocol testProtocol; -MODDMA dma; //the main loop int main() { - timer.start(); testProtocol.initialise(); - testProtocol.MODDMA(&dma); + + debug.baud(115200); + debug.printf("Debug Console:\r\n"); testProtocol.printf("Hello printf\r\n"); testProtocol.printf("Hello printf %s\r\n", "booyaa"); @@ -35,28 +36,8 @@ testProtocol.puts("\r\n"); testProtocol.puts("SimpleSerialProtocol Serial io overrides tested\r\n"); - - for (int i = 0; i < 20; ++i) { - testProtocol.puts("*dma*"); - } - testProtocol.puts("\r\n"); - - testProtocol.blockUntilDmaTxEmpty(); - - + while (1) { testProtocol.update(); - - for (int i = 0; i < 120; ++i) { - testProtocol.puts("*dma*"); - } - testProtocol.puts("\r\n"); - Timer timer; - timer.start(); - testProtocol.blockUntilDmaTxEmpty(); - - testProtocol.printf("Serial write time: %d\r\n", timer.read_ms()); - - wait_ms(500); } }