mDot AT-Firmware for testing

Dependencies:   MTS-Serial libmDot-mbed5

Fork of Dot-AT-Firmware by MultiTech

Committer:
Fran6
Date:
Mon Aug 14 12:40:21 2017 +0000
Revision:
16:3b1d46c1db11
Parent:
14:f9a77400b622
mDot AT-Firmware

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mike Fiore 1:e52ae6584f1c 1 #include "CmdDebugBaudRate.h"
Mike Fiore 1:e52ae6584f1c 2
Mike Fiore 14:f9a77400b622 3 CmdDebugBaudRate::CmdDebugBaudRate() :
Mike Fiore 14:f9a77400b622 4 #if defined(TARGET_MTS_MDOT_F411RE)
Mike Fiore 14:f9a77400b622 5 Command("Debug Baud Rate", "AT+DIPR", "Set debug serial baud rate, default: 115200 ", "(2400,4800,9600,19200,38400,57600,115200,230400,460800,921600)")
Mike Fiore 14:f9a77400b622 6 #else
Mike Fiore 14:f9a77400b622 7 Command("Debug Baud Rate", "AT+DIPR", "Set debug serial baud rate, default: 115200 ", "(2400,4800,9600,19200,38400,57600,115200,230400)")
Mike Fiore 14:f9a77400b622 8 #endif
Mike Fiore 1:e52ae6584f1c 9 {
Mike Fiore 1:e52ae6584f1c 10 _queryable = true;
Mike Fiore 1:e52ae6584f1c 11 }
Mike Fiore 1:e52ae6584f1c 12
Mike Fiore 1:e52ae6584f1c 13 uint32_t CmdDebugBaudRate::action(std::vector<std::string> args)
Mike Fiore 1:e52ae6584f1c 14 {
Mike Fiore 1:e52ae6584f1c 15 if (args.size() == 1)
Mike Fiore 1:e52ae6584f1c 16 {
Mike Fiore 14:f9a77400b622 17 CommandTerminal::Serial()->writef("%lu\r\n", CommandTerminal::Dot()->getDebugBaud());
Mike Fiore 1:e52ae6584f1c 18 }
Mike Fiore 1:e52ae6584f1c 19 else if (args.size() == 2)
Mike Fiore 1:e52ae6584f1c 20 {
Mike Fiore 9:ff62b20f7000 21 int baudrate = 0;
Mike Fiore 1:e52ae6584f1c 22
Mike Fiore 9:ff62b20f7000 23 sscanf(args[1].c_str(), "%d", &baudrate);
Mike Fiore 1:e52ae6584f1c 24
Mike Fiore 14:f9a77400b622 25 if (CommandTerminal::Dot()->setDebugBaud(baudrate) == mDot::MDOT_OK) {
Mike Fiore 14:f9a77400b622 26 CommandTerminal::Serial()->writef("Set Debug Baud Rate: %d\r\n", baudrate);
Mike Fiore 1:e52ae6584f1c 27 } else {
Mike Fiore 14:f9a77400b622 28 CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());;
Mike Fiore 1:e52ae6584f1c 29 return 1;
Mike Fiore 1:e52ae6584f1c 30 }
Mike Fiore 1:e52ae6584f1c 31 }
Mike Fiore 1:e52ae6584f1c 32
Mike Fiore 1:e52ae6584f1c 33 return 0;
Mike Fiore 1:e52ae6584f1c 34 }
Mike Fiore 1:e52ae6584f1c 35
Mike Fiore 1:e52ae6584f1c 36 bool CmdDebugBaudRate::verify(std::vector<std::string> args)
Mike Fiore 1:e52ae6584f1c 37 {
Mike Fiore 1:e52ae6584f1c 38 if (args.size() == 1)
Mike Fiore 1:e52ae6584f1c 39 return true;
Mike Fiore 1:e52ae6584f1c 40
Mike Fiore 1:e52ae6584f1c 41 if (args.size() == 2) {
Mike Fiore 9:ff62b20f7000 42 int baudrate;
Mike Fiore 1:e52ae6584f1c 43
Mike Fiore 9:ff62b20f7000 44 if (sscanf(args[1].c_str(), "%d", &baudrate) != 1) {
Mike Fiore 14:f9a77400b622 45 CommandTerminal::setErrorMessage("Invalid argument");
Mike Fiore 1:e52ae6584f1c 46 return false;
Mike Fiore 1:e52ae6584f1c 47 }
Mike Fiore 1:e52ae6584f1c 48
Mike Fiore 1:e52ae6584f1c 49 return true;
Mike Fiore 1:e52ae6584f1c 50 }
Mike Fiore 1:e52ae6584f1c 51
Mike Fiore 14:f9a77400b622 52 CommandTerminal::setErrorMessage("Invalid arguments");
Mike Fiore 1:e52ae6584f1c 53 return false;
Mike Fiore 1:e52ae6584f1c 54 }