Tobi's ubw test branch
Dependencies: mavlink_bridge mbed
Fork of AIT_UWB_Range by
Diff: PC/PC.cpp
- Revision:
- 0:f50e671ffff7
diff -r 000000000000 -r f50e671ffff7 PC/PC.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PC/PC.cpp Sun Nov 16 09:53:25 2014 +0000 @@ -0,0 +1,38 @@ +#include "PC.h" +#include "mbed.h" + +PC::PC(PinName tx, PinName rx, int baudrate) : Serial(tx, rx) +{ + baud(baudrate); + cls(); + + command[0] = '\0'; + command_char_count = 0; +} + + +void PC::cls() +{ + printf("\x1B[2J"); +} + + +void PC::locate(int Spalte, int Zeile) +{ + printf("\x1B[%d;%dH", Zeile + 1, Spalte + 1); +} + +void PC::readcommand(void (*executer)(char*)) +{ + char input = getc(); // get the character from serial bus + if(input == '\r') { // if return was pressed, the command must be executed + command[command_char_count] = '\0'; + executer(&command[0]); + + command_char_count = 0; // reset command + command[command_char_count] = '\0'; + } else if (command_char_count < COMMAND_MAX_LENGHT) { + command[command_char_count] = input; + command_char_count++; + } +} \ No newline at end of file