serial debug Monitor

Committer:
duchonic
Date:
Thu Aug 23 17:53:34 2018 +0000
Revision:
1:a2fab59c3b98
Parent:
0:de1f07a7cd82
serial communication tx/rx works

Who changed what in which revision?

UserRevisionLine numberNew contents of line
duchonic 0:de1f07a7cd82 1 #include "debugMonitor.h"
duchonic 0:de1f07a7cd82 2 #include "main.h"
duchonic 0:de1f07a7cd82 3
duchonic 1:a2fab59c3b98 4
duchonic 1:a2fab59c3b98 5 using namespace std;
duchonic 1:a2fab59c3b98 6
duchonic 1:a2fab59c3b98 7 debugMonitor::debugMonitor(PinName tx, PinName rx) : serial(tx, rx) {
duchonic 1:a2fab59c3b98 8 commando = "";
duchonic 1:a2fab59c3b98 9 }
duchonic 0:de1f07a7cd82 10
duchonic 0:de1f07a7cd82 11 uint8_t debugMonitor::debugMonitor_Init(void)
duchonic 0:de1f07a7cd82 12 {
duchonic 0:de1f07a7cd82 13 serial.baud(115200);
duchonic 1:a2fab59c3b98 14 //serial.printf("debugMonitor_Init\n");
duchonic 1:a2fab59c3b98 15 printLine("debugMonitor_Init()");
duchonic 1:a2fab59c3b98 16
duchonic 1:a2fab59c3b98 17 serial.attach(this, &debugMonitor::readLineCallback);
duchonic 1:a2fab59c3b98 18
duchonic 0:de1f07a7cd82 19 return(0);
duchonic 0:de1f07a7cd82 20 }
duchonic 0:de1f07a7cd82 21
duchonic 0:de1f07a7cd82 22 debugMonitor::~debugMonitor(void) {
duchonic 0:de1f07a7cd82 23 };
duchonic 0:de1f07a7cd82 24
duchonic 1:a2fab59c3b98 25 /** Private Functions */
duchonic 1:a2fab59c3b98 26
duchonic 1:a2fab59c3b98 27 void debugMonitor::readLineCallback()
duchonic 0:de1f07a7cd82 28 {
duchonic 1:a2fab59c3b98 29 char inputChar = serial.getc();
duchonic 1:a2fab59c3b98 30
duchonic 1:a2fab59c3b98 31 if(commando == "test")
duchonic 0:de1f07a7cd82 32 {
duchonic 1:a2fab59c3b98 33 printLine("cmd was test");
duchonic 0:de1f07a7cd82 34 }
duchonic 1:a2fab59c3b98 35
duchonic 1:a2fab59c3b98 36 commando += inputChar;
duchonic 1:a2fab59c3b98 37
duchonic 1:a2fab59c3b98 38 if(inputChar == '\r')
duchonic 1:a2fab59c3b98 39 {
duchonic 1:a2fab59c3b98 40 commando = "";
duchonic 1:a2fab59c3b98 41 serial.putc('\n');
duchonic 1:a2fab59c3b98 42 }
duchonic 1:a2fab59c3b98 43 serial.putc(inputChar);
duchonic 1:a2fab59c3b98 44 }
duchonic 1:a2fab59c3b98 45
duchonic 1:a2fab59c3b98 46 void debugMonitor::printLine(char *string_p)
duchonic 1:a2fab59c3b98 47 {
duchonic 1:a2fab59c3b98 48 serial.printf(string_p);
duchonic 1:a2fab59c3b98 49 serial.printf("\r\n");
duchonic 0:de1f07a7cd82 50 }