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.
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