Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@3:7188bd978801, 2014-04-14 (annotated)
- Committer:
- silverpanda
- Date:
- Mon Apr 14 00:33:00 2014 +0000
- Revision:
- 3:7188bd978801
- Parent:
- 2:53d8e47c5171
- Child:
- 4:dfb672184380
nice echo with cursor
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
silverpanda | 0:6898e364f29a | 1 | // Print "Hello World" to the PC |
silverpanda | 0:6898e364f29a | 2 | |
silverpanda | 0:6898e364f29a | 3 | #include "mbed.h" |
silverpanda | 0:6898e364f29a | 4 | |
silverpanda | 0:6898e364f29a | 5 | Serial usbSerial(USBTX, USBRX); |
silverpanda | 1:20033a89af0e | 6 | Ticker messageTicker, scanTicker; |
silverpanda | 3:7188bd978801 | 7 | bool scanUSBSerialRxFlag; |
silverpanda | 0:6898e364f29a | 8 | |
silverpanda | 0:6898e364f29a | 9 | void sendText(char *thisText) |
silverpanda | 0:6898e364f29a | 10 | { |
silverpanda | 0:6898e364f29a | 11 | usbSerial.printf(thisText); |
silverpanda | 0:6898e364f29a | 12 | } |
silverpanda | 0:6898e364f29a | 13 | //----------------------------------------------------------------------------- |
silverpanda | 0:6898e364f29a | 14 | |
silverpanda | 1:20033a89af0e | 15 | void sendHelloWorld() |
silverpanda | 0:6898e364f29a | 16 | { |
silverpanda | 3:7188bd978801 | 17 | sendText("** Hello World **\n\n> "); |
silverpanda | 1:20033a89af0e | 18 | } |
silverpanda | 1:20033a89af0e | 19 | //----------------------------------------------------------------------------- |
silverpanda | 1:20033a89af0e | 20 | |
silverpanda | 1:20033a89af0e | 21 | void scanUSBSerialRx() |
silverpanda | 1:20033a89af0e | 22 | { |
silverpanda | 1:20033a89af0e | 23 | if(usbSerial.readable()) { |
silverpanda | 1:20033a89af0e | 24 | char character = usbSerial.getc(); |
silverpanda | 3:7188bd978801 | 25 | if((character == ';') || (character == 13)) usbSerial.printf("\n> "); |
silverpanda | 2:53d8e47c5171 | 26 | else usbSerial.printf("%c", character); |
silverpanda | 1:20033a89af0e | 27 | } |
silverpanda | 1:20033a89af0e | 28 | scanUSBSerialRxFlag = false; |
silverpanda | 1:20033a89af0e | 29 | } |
silverpanda | 1:20033a89af0e | 30 | //----------------------------------------------------------------------------- |
silverpanda | 1:20033a89af0e | 31 | |
silverpanda | 1:20033a89af0e | 32 | void setScanUSBSerialRxFlag() |
silverpanda | 1:20033a89af0e | 33 | { |
silverpanda | 1:20033a89af0e | 34 | scanUSBSerialRxFlag = true; |
silverpanda | 1:20033a89af0e | 35 | } |
silverpanda | 1:20033a89af0e | 36 | //----------------------------------------------------------------------------- |
silverpanda | 1:20033a89af0e | 37 | |
silverpanda | 1:20033a89af0e | 38 | void initMain() |
silverpanda | 1:20033a89af0e | 39 | { |
silverpanda | 1:20033a89af0e | 40 | usbSerial.baud(115200); |
silverpanda | 1:20033a89af0e | 41 | |
silverpanda | 2:53d8e47c5171 | 42 | sendHelloWorld(); |
silverpanda | 1:20033a89af0e | 43 | |
silverpanda | 1:20033a89af0e | 44 | scanTicker.attach(&setScanUSBSerialRxFlag, 0.01); |
silverpanda | 1:20033a89af0e | 45 | scanUSBSerialRxFlag = false; |
silverpanda | 0:6898e364f29a | 46 | } |
silverpanda | 0:6898e364f29a | 47 | //----------------------------------------------------------------------------- |
silverpanda | 0:6898e364f29a | 48 | |
silverpanda | 0:6898e364f29a | 49 | int main() { |
silverpanda | 1:20033a89af0e | 50 | initMain(); |
silverpanda | 1:20033a89af0e | 51 | |
silverpanda | 0:6898e364f29a | 52 | while(true) { |
silverpanda | 1:20033a89af0e | 53 | if(scanUSBSerialRxFlag) scanUSBSerialRx(); |
silverpanda | 1:20033a89af0e | 54 | wait(0.02); |
silverpanda | 0:6898e364f29a | 55 | } |
silverpanda | 0:6898e364f29a | 56 | } |
silverpanda | 0:6898e364f29a | 57 | //----------------------------------------------------------------------------- |