Gert-Jan Admiraal
/
uart_test1
Serial port test, used for the serial port over IP notebook.
main.cpp@0:7fbb5988577b, 2010-04-30 (annotated)
- Committer:
- gjadmiraal
- Date:
- Fri Apr 30 20:56:41 2010 +0000
- Revision:
- 0:7fbb5988577b
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gjadmiraal | 0:7fbb5988577b | 1 | //--- Includes |
gjadmiraal | 0:7fbb5988577b | 2 | #include "mbed.h" |
gjadmiraal | 0:7fbb5988577b | 3 | |
gjadmiraal | 0:7fbb5988577b | 4 | //--- Defines |
gjadmiraal | 0:7fbb5988577b | 5 | #define USB_UART 1 |
gjadmiraal | 0:7fbb5988577b | 6 | #define ON 1 |
gjadmiraal | 0:7fbb5988577b | 7 | #define OFF 0 |
gjadmiraal | 0:7fbb5988577b | 8 | #define BAUDRATE0 19200 |
gjadmiraal | 0:7fbb5988577b | 9 | #define BAUDRATE1 115200 |
gjadmiraal | 0:7fbb5988577b | 10 | #define K_BACKSPACE 8 |
gjadmiraal | 0:7fbb5988577b | 11 | #define K_RETURN 13 |
gjadmiraal | 0:7fbb5988577b | 12 | |
gjadmiraal | 0:7fbb5988577b | 13 | //--- Objects |
gjadmiraal | 0:7fbb5988577b | 14 | DigitalOut myled (LED1); |
gjadmiraal | 0:7fbb5988577b | 15 | #if USB_UART |
gjadmiraal | 0:7fbb5988577b | 16 | Serial myUART ( USBTX, USBRX ); |
gjadmiraal | 0:7fbb5988577b | 17 | #else |
gjadmiraal | 0:7fbb5988577b | 18 | Serial myUART ( p13, p14 ); //--- TX RX |
gjadmiraal | 0:7fbb5988577b | 19 | #endif |
gjadmiraal | 0:7fbb5988577b | 20 | Serial loopUART ( p28, p27 ); //--- TX RX |
gjadmiraal | 0:7fbb5988577b | 21 | |
gjadmiraal | 0:7fbb5988577b | 22 | int main() { |
gjadmiraal | 0:7fbb5988577b | 23 | char character; |
gjadmiraal | 0:7fbb5988577b | 24 | |
gjadmiraal | 0:7fbb5988577b | 25 | //--- init |
gjadmiraal | 0:7fbb5988577b | 26 | myled = ON; |
gjadmiraal | 0:7fbb5988577b | 27 | wait(0.2); |
gjadmiraal | 0:7fbb5988577b | 28 | myUART.baud( BAUDRATE1 ); |
gjadmiraal | 0:7fbb5988577b | 29 | loopUART.baud( BAUDRATE1 ); |
gjadmiraal | 0:7fbb5988577b | 30 | myled = OFF; |
gjadmiraal | 0:7fbb5988577b | 31 | |
gjadmiraal | 0:7fbb5988577b | 32 | while(1) { |
gjadmiraal | 0:7fbb5988577b | 33 | //--- Read myUART and print to loopUART |
gjadmiraal | 0:7fbb5988577b | 34 | if( myUART.readable() ) { |
gjadmiraal | 0:7fbb5988577b | 35 | character = myUART.getc(); |
gjadmiraal | 0:7fbb5988577b | 36 | loopUART.printf( "%c", character ); |
gjadmiraal | 0:7fbb5988577b | 37 | } |
gjadmiraal | 0:7fbb5988577b | 38 | |
gjadmiraal | 0:7fbb5988577b | 39 | //--- Read loopUART and print to myUART |
gjadmiraal | 0:7fbb5988577b | 40 | if( loopUART.readable() ) { |
gjadmiraal | 0:7fbb5988577b | 41 | character = loopUART.getc(); |
gjadmiraal | 0:7fbb5988577b | 42 | |
gjadmiraal | 0:7fbb5988577b | 43 | //--- Return Key: new line on the console |
gjadmiraal | 0:7fbb5988577b | 44 | if( character == K_RETURN ) { |
gjadmiraal | 0:7fbb5988577b | 45 | myUART.printf("\n\r"); |
gjadmiraal | 0:7fbb5988577b | 46 | } else if( character == K_BACKSPACE ) { |
gjadmiraal | 0:7fbb5988577b | 47 | myUART.printf("\b \b"); |
gjadmiraal | 0:7fbb5988577b | 48 | } else { |
gjadmiraal | 0:7fbb5988577b | 49 | myUART.printf( "%c", character ); |
gjadmiraal | 0:7fbb5988577b | 50 | } |
gjadmiraal | 0:7fbb5988577b | 51 | } |
gjadmiraal | 0:7fbb5988577b | 52 | |
gjadmiraal | 0:7fbb5988577b | 53 | /* |
gjadmiraal | 0:7fbb5988577b | 54 | //--- Loopback the UART |
gjadmiraal | 0:7fbb5988577b | 55 | if( myUART.readable() ) { |
gjadmiraal | 0:7fbb5988577b | 56 | myUART.putc( myUART.getc() ); |
gjadmiraal | 0:7fbb5988577b | 57 | } |
gjadmiraal | 0:7fbb5988577b | 58 | */ |
gjadmiraal | 0:7fbb5988577b | 59 | |
gjadmiraal | 0:7fbb5988577b | 60 | /* |
gjadmiraal | 0:7fbb5988577b | 61 | //--- Hello World on the UART |
gjadmiraal | 0:7fbb5988577b | 62 | myUART.printf( "Hello, world!\n\r" ); |
gjadmiraal | 0:7fbb5988577b | 63 | */ |
gjadmiraal | 0:7fbb5988577b | 64 | } |
gjadmiraal | 0:7fbb5988577b | 65 | } |