firm newest

Dependencies:   MTS-Serial libmDot-dev-mbed5-deprecated

Committer:
nguyenhoang9x5555
Date:
Mon Oct 22 01:56:09 2018 +0000
Revision:
1:c1c6549b9333
Parent:
0:3c869a8cb8f8
hey

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nguyenhoang9x5555 0:3c869a8cb8f8 1 #include "CmdTxFrequency.h"
nguyenhoang9x5555 0:3c869a8cb8f8 2 #include <climits>
nguyenhoang9x5555 0:3c869a8cb8f8 3
nguyenhoang9x5555 0:3c869a8cb8f8 4
nguyenhoang9x5555 0:3c869a8cb8f8 5 CmdTxFrequency::CmdTxFrequency() :
nguyenhoang9x5555 0:3c869a8cb8f8 6 Command("Tx Frequency", "AT+TXF", "Set Tx frequency", "SEE PLAN") {
nguyenhoang9x5555 0:3c869a8cb8f8 7 _queryable = true;
nguyenhoang9x5555 0:3c869a8cb8f8 8 }
nguyenhoang9x5555 0:3c869a8cb8f8 9
nguyenhoang9x5555 0:3c869a8cb8f8 10 uint32_t CmdTxFrequency::action(std::vector<std::string> args)
nguyenhoang9x5555 0:3c869a8cb8f8 11 {
nguyenhoang9x5555 0:3c869a8cb8f8 12 if (args.size() == 1)
nguyenhoang9x5555 0:3c869a8cb8f8 13 {
nguyenhoang9x5555 0:3c869a8cb8f8 14 CommandTerminal::Serial()->writef("%lu\r\n", CommandTerminal::Dot()->getTxFrequency());
nguyenhoang9x5555 0:3c869a8cb8f8 15 }
nguyenhoang9x5555 0:3c869a8cb8f8 16 else if (args.size() == 2)
nguyenhoang9x5555 0:3c869a8cb8f8 17 {
nguyenhoang9x5555 0:3c869a8cb8f8 18 int frequency = 0;
nguyenhoang9x5555 0:3c869a8cb8f8 19
nguyenhoang9x5555 0:3c869a8cb8f8 20 sscanf(args[1].c_str(), "%d", &frequency);
nguyenhoang9x5555 0:3c869a8cb8f8 21 if (CommandTerminal::Dot()->setTxFrequency(frequency) != mDot::MDOT_OK)
nguyenhoang9x5555 0:3c869a8cb8f8 22 {
nguyenhoang9x5555 0:3c869a8cb8f8 23 CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());;
nguyenhoang9x5555 0:3c869a8cb8f8 24 return 1;
nguyenhoang9x5555 0:3c869a8cb8f8 25 }
nguyenhoang9x5555 0:3c869a8cb8f8 26 }
nguyenhoang9x5555 0:3c869a8cb8f8 27
nguyenhoang9x5555 0:3c869a8cb8f8 28 return 0;
nguyenhoang9x5555 0:3c869a8cb8f8 29 }
nguyenhoang9x5555 0:3c869a8cb8f8 30
nguyenhoang9x5555 0:3c869a8cb8f8 31 bool CmdTxFrequency::verify(std::vector<std::string> args)
nguyenhoang9x5555 0:3c869a8cb8f8 32 {
nguyenhoang9x5555 0:3c869a8cb8f8 33 if (args.size() == 1)
nguyenhoang9x5555 0:3c869a8cb8f8 34 return true;
nguyenhoang9x5555 0:3c869a8cb8f8 35
nguyenhoang9x5555 0:3c869a8cb8f8 36 if (args.size() == 2)
nguyenhoang9x5555 0:3c869a8cb8f8 37 {
nguyenhoang9x5555 0:3c869a8cb8f8 38 int frequency = ULONG_MAX;
nguyenhoang9x5555 0:3c869a8cb8f8 39 if (sscanf(args[1].c_str(), "%d", &frequency) != 1) {
nguyenhoang9x5555 0:3c869a8cb8f8 40 CommandTerminal::setErrorMessage("Invalid argument");
nguyenhoang9x5555 0:3c869a8cb8f8 41 return false;
nguyenhoang9x5555 0:3c869a8cb8f8 42 }
nguyenhoang9x5555 0:3c869a8cb8f8 43
nguyenhoang9x5555 0:3c869a8cb8f8 44 if (frequency != 0 && (frequency < int(CommandTerminal::Dot()->getMinFrequency()) || frequency > int(CommandTerminal::Dot()->getMaxFrequency()))) {
nguyenhoang9x5555 0:3c869a8cb8f8 45 char tmp[256];
nguyenhoang9x5555 0:3c869a8cb8f8 46 sprintf(tmp, "Invalid frequency, expects (0,%lu-%lu)", CommandTerminal::Dot()->getMinFrequency(), CommandTerminal::Dot()->getMaxFrequency());
nguyenhoang9x5555 0:3c869a8cb8f8 47 CommandTerminal::setErrorMessage(tmp);
nguyenhoang9x5555 0:3c869a8cb8f8 48 return false;
nguyenhoang9x5555 0:3c869a8cb8f8 49 }
nguyenhoang9x5555 0:3c869a8cb8f8 50
nguyenhoang9x5555 0:3c869a8cb8f8 51 return true;
nguyenhoang9x5555 0:3c869a8cb8f8 52 }
nguyenhoang9x5555 0:3c869a8cb8f8 53
nguyenhoang9x5555 0:3c869a8cb8f8 54 CommandTerminal::setErrorMessage("Invalid arguments");
nguyenhoang9x5555 0:3c869a8cb8f8 55 return false;
nguyenhoang9x5555 0:3c869a8cb8f8 56 }
nguyenhoang9x5555 0:3c869a8cb8f8 57