Demo program for StrCommandHandler calss library.
Dependencies: mbed SerialInputReactionHandler StrCommandHandler
main.cpp
- Committer:
- aktk
- Date:
- 2019-10-31
- Revision:
- 0:4749705f54ab
- Child:
- 1:c39728f6555e
File content as of revision 0:4749705f54ab:
#include "mbed.h" #include "StrCommandHandler.h" DigitalOut myled1(LED1); DigitalOut myled2(LED2); DigitalOut myled3(LED3); Serial pc(USBTX, USBRX); // tx, rx StrCommandHandler cmdHandler(5); int func1(void) { myled1 = 1; myled2 = 0; myled3 = 0; return 1; } int func2(void) { myled1 = 0; myled2 = 1; myled3 = 0; return 2; } int func3(void) { myled1 = 0; myled2 = 0; myled3 = 1; return 3; } int main() { char command[16] ; int itr = 0; int rlt; pc.baud(921600); cmdHandler.map("func1", func1); cmdHandler.map("func2", func2); cmdHandler.map("func3", func3); cmdHandler.list(); PRELOOP: pc.puts("\ncommand: "); itr = 0; while(1) { command[itr] = pc.getc(); if( command[itr] == '\r' || command[itr] == '\n' ) { command[itr] = '\0'; pc.puts("\n"); pc.puts("reveived: "); pc.puts(command); pc.puts("\t"); rlt = cmdHandler.exe(command); printf("result: %x\n", rlt); break; } else { pc.putc(command[itr]); } if (itr == 15) break; itr++; } goto PRELOOP; }