XBee and XBee-PRO ZigBee RF modules provide cost-effective wireless connectivity to electronic devices. They are interoperable with other ZigBee PRO feature set devices, including devices from other vendors.

Dependencies:   BufferedArray

Dependents:   MBEDminiproject

Committer:
yangcq88517
Date:
Thu Oct 22 12:28:26 2015 +0000
Revision:
0:837e6c48e90d
Child:
6:5f31ddc17239
initial upload

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yangcq88517 0:837e6c48e90d 1 #include "RemoteATCommandRequest.h"
yangcq88517 0:837e6c48e90d 2
yangcq88517 0:837e6c48e90d 3 RemoteATCommandRequest::RemoteATCommandRequest(char frameID, Address * remoteAddress, const char * command, OptionsBase * transmitOptions, const char * parameter, int parameterOffset, int parameterLength)
yangcq88517 0:837e6c48e90d 4 : TxBase(13 + (parameter == NULL ? 0 : parameterLength), APIFrame::Remote_Command_Request, frameID)
yangcq88517 0:837e6c48e90d 5 {
yangcq88517 0:837e6c48e90d 6 sets(remoteAddress->getAddressValue(), 0, 10);
yangcq88517 0:837e6c48e90d 7 set(transmitOptions->getValue());
yangcq88517 0:837e6c48e90d 8 sets(command, 0, 2);
yangcq88517 0:837e6c48e90d 9
yangcq88517 0:837e6c48e90d 10 if (parameter != NULL)
yangcq88517 0:837e6c48e90d 11 sets(parameter, parameterOffset, parameterLength);
yangcq88517 0:837e6c48e90d 12 }
yangcq88517 0:837e6c48e90d 13
yangcq88517 0:837e6c48e90d 14 void RemoteATCommandRequest::setTransmitOptions(OptionsBase * transmitOptions)
yangcq88517 0:837e6c48e90d 15 {
yangcq88517 0:837e6c48e90d 16 data[12] = transmitOptions->getValue();
yangcq88517 0:837e6c48e90d 17 }
yangcq88517 0:837e6c48e90d 18
yangcq88517 0:837e6c48e90d 19 void RemoteATCommandRequest::setAppleChanges(bool appleChanges)
yangcq88517 0:837e6c48e90d 20 {
yangcq88517 0:837e6c48e90d 21 if (appleChanges)
yangcq88517 0:837e6c48e90d 22 data[12] |= 0x02;
yangcq88517 0:837e6c48e90d 23 else data[12] &= 0xFD;
yangcq88517 0:837e6c48e90d 24 }
yangcq88517 0:837e6c48e90d 25
yangcq88517 0:837e6c48e90d 26 void RemoteATCommandRequest::setCommand(const char * command)
yangcq88517 0:837e6c48e90d 27 {
yangcq88517 0:837e6c48e90d 28 sets(13, command, 0, 2);
yangcq88517 0:837e6c48e90d 29 }
yangcq88517 0:837e6c48e90d 30
yangcq88517 0:837e6c48e90d 31 void RemoteATCommandRequest::setParameter(const char * parameter, int offset, int length)
yangcq88517 0:837e6c48e90d 32 {
yangcq88517 0:837e6c48e90d 33 setPosition(15);
yangcq88517 0:837e6c48e90d 34 sets(parameter, offset, length);
yangcq88517 0:837e6c48e90d 35 }
yangcq88517 0:837e6c48e90d 36
yangcq88517 0:837e6c48e90d 37 void RemoteATCommandRequest::setRemoteAddress(Address * remoteAddress)
yangcq88517 0:837e6c48e90d 38 {
yangcq88517 0:837e6c48e90d 39 sets(2, remoteAddress->getAddressValue(), 0, 10);
yangcq88517 0:837e6c48e90d 40 }