AT command firmware for MultiTech Dot devices.
Fork of mDot_AT_firmware by
CmdStartUpMode.cpp
00001 #include "CmdStartUpMode.h" 00002 00003 CmdStartUpMode::CmdStartUpMode() : 00004 #if MTS_CMD_TERM_VERBOSE 00005 Command("Start Up Mode", "AT+SMODE", "0: AT command mode, 1: Serial data mode", "(0,1)") 00006 #else 00007 Command("AT+SMODE") 00008 #endif 00009 { 00010 _queryable = true; 00011 } 00012 00013 uint32_t CmdStartUpMode::action(const std::vector<std::string>& args) 00014 { 00015 if (args.size() == 1) 00016 { 00017 CommandTerminal::Serial()->writef("%u\r\n", CommandTerminal::Dot()->getStartUpMode()); 00018 } 00019 else if (args.size() == 2) 00020 { 00021 00022 uint8_t mode; 00023 00024 mode = (args[1] == "1") ? mDot::SERIAL_MODE : mDot::COMMAND_MODE; 00025 00026 if (CommandTerminal::Dot()->setStartUpMode(mode) != mDot::MDOT_OK) { 00027 return 1; 00028 } 00029 } 00030 00031 return 0; 00032 } 00033 00034 bool CmdStartUpMode::verify(const std::vector<std::string>& args) 00035 { 00036 if (args.size() == 1) 00037 return true; 00038 00039 if (args.size() == 2) 00040 { 00041 if (args[1] != "1" && args[1] != "0") { 00042 #if MTS_CMD_TERM_VERBOSE 00043 CommandTerminal::setErrorMessage("Invalid parameter, expects (0: Command, 1: Serial Data)"); 00044 #endif 00045 return false; 00046 } 00047 00048 return true; 00049 } 00050 00051 #if MTS_CMD_TERM_VERBOSE 00052 CommandTerminal::setErrorMessage("Invalid arguments"); 00053 #endif 00054 return false; 00055 }
Generated on Wed Dec 6 2023 19:34:05 by 1.7.2