with 36errors
Dependencies: MTS-Serial libxDot-dev-mbed5-deprecated
Fork of Dot-AT-Firmware by
CmdRxDataRate.cpp
00001 #include "CmdRxDataRate.h" 00002 00003 CmdRxDataRate::CmdRxDataRate() 00004 : 00005 Command("Rx Data Rate", "AT+RXDR", "Set the Rx datarate, testing purposes only", "7-10|DR0-DR15, Depends on Channel Plan") 00006 00007 { 00008 _queryable = true; 00009 } 00010 00011 uint32_t CmdRxDataRate::action(std::vector<std::string> args) { 00012 if (args.size() == 1) { 00013 CommandTerminal::Serial()->writef("DR%d - %s\r\n", CommandTerminal::Dot()->getTxDataRate(), CommandTerminal::Dot()->getDataRateDetails(CommandTerminal::Dot()->getRxDataRate()).c_str()); 00014 } 00015 else if (args.size() == 2) { 00016 std::string dr = mts::Text::toUpper(args[1]); 00017 00018 int datarate = 0; 00019 uint8_t i; 00020 00021 int res = sscanf(dr.c_str(), "%d", &datarate); 00022 00023 if (res == 0) { 00024 for (i = 0; i < 24; i++) { 00025 if (mDot::DataRateStr(i).find(dr) != std::string::npos) { 00026 datarate = i; 00027 break; 00028 } 00029 } 00030 } 00031 00032 if (CommandTerminal::Dot()->setRxDataRate(datarate) != mDot::MDOT_OK) { 00033 CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());; 00034 return 1; 00035 } 00036 } 00037 00038 return 0; 00039 } 00040 00041 bool CmdRxDataRate::verify(std::vector<std::string> args) { 00042 if (args.size() == 1) 00043 return true; 00044 00045 if (args.size() == 2) { 00046 return true; 00047 } 00048 00049 CommandTerminal::setErrorMessage("Invalid arguments"); 00050 return false; 00051 }
Generated on Wed Jul 13 2022 06:20:58 by 1.7.2