Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MTS-Serial libmDot mbed-rtos mbed
Fork of mDot_USB_AT_firmware by
CmdWakeMode.cpp
00001 #include "CmdWakeMode.h" 00002 00003 CmdWakeMode::CmdWakeMode(mDot* dot, mts::MTSSerial& serial) : 00004 Command(dot, "Wake Mode", "AT+WM", "Wakeup mode, INTERRUPT uses DIO7 as wake-up pin (0:INTERVAL,1:INTERRUPT,2:INTERVAL_OR_INTERRUPT)"), 00005 _serial(serial) 00006 { 00007 _help = std::string(text()) + ": " + std::string(desc()); 00008 _usage = "(0:INTERVAL,1:INTERRUPT,2:INTERVAL_OR_INTERRUPT)"; 00009 _queryable = true; 00010 } 00011 00012 uint32_t CmdWakeMode::action(std::vector<std::string> args) 00013 { 00014 if (args.size() == 1) 00015 { 00016 if (_dot->getVerbose()) 00017 _serial.writef("%s: ", name()); 00018 00019 _serial.writef("%lu\r\n", _dot->getWakeMode()); 00020 } 00021 else if (args.size() == 2) 00022 { 00023 int32_t code; 00024 int mode; 00025 sscanf(args[1].c_str(), "%d", &mode); 00026 00027 if ((code = _dot->setWakeMode(mode)) != mDot::MDOT_OK) { 00028 00029 setErrorMessage(_dot->getLastError());; 00030 return 1; 00031 } 00032 } 00033 00034 return 0; 00035 } 00036 00037 bool CmdWakeMode::verify(std::vector<std::string> args) 00038 { 00039 if (args.size() == 1) 00040 return true; 00041 00042 if (args.size() == 2) { 00043 int mode; 00044 if (sscanf(args[1].c_str(), "%d", &mode) != 1) { 00045 setErrorMessage("Invalid argument"); 00046 return false; 00047 } 00048 00049 if (mode != 0 && mode != 1 && mode != 2) { 00050 setErrorMessage("Invalid mode, expects (0:INTERVAL,1:INTERRUPT,2:INTERVAL_OR_INTERRUPT)"); 00051 return false; 00052 } 00053 00054 return true; 00055 } 00056 00057 setErrorMessage("Invalid arguments"); 00058 return false; 00059 }
Generated on Tue Jul 12 2022 20:37:29 by
1.7.2
