Browse Source

update

master
zhaohe 2 years ago
parent
commit
80de216afb
  1. 11
      components/cmdscheduler/cmd_scheduler.cpp

11
components/cmdscheduler/cmd_scheduler.cpp

@ -20,7 +20,7 @@ void CmdScheduler::initialize(UART_HandleTypeDef* huart, uint32_t rxbufsize) {
cfg.rxovertime_ms = 3;
cfg.name = "CmdSchedulerUart";
rxbuf = new char[rxbufsize];
rxbuf = new char[rxbufsize + 1];
ZASSERT(rxbuf != NULL);
m_uart->initialize(&cfg);
@ -30,6 +30,7 @@ void CmdScheduler::initialize(UART_HandleTypeDef* huart, uint32_t rxbufsize) {
return;
}
memcpy(rxbuf, data, len);
rxbuf[len] = '\0';
m_rxsize = len;
m_dataisready = true;
// on data ,in irq context
@ -66,11 +67,9 @@ void CmdScheduler::schedule() {
void CmdScheduler::callcmd(const char* cmd, CmdProcessContext& context) {
int argc = 0;
char* argv[10] = {0};
{
memset(cmdcache, 0, sizeof(cmdcache));
argc = 0;
memset(argv, 0, sizeof(argv));
}
memset(cmdcache, 0, sizeof(cmdcache));
argc = 0;
memset(argv, 0, sizeof(argv));
strcpy(cmdcache, cmd);
prase_cmd(cmdcache, strlen(cmdcache), argc, argv);

Loading…
Cancel
Save