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.
Request/RemoteATCommandRequest.cpp@0:837e6c48e90d, 2015-10-22 (annotated)
- 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?
User | Revision | Line number | New 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 | } |