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:
Sat Nov 14 16:42:36 2015 +0000
Revision:
6:5f31ddc17239
Parent:
0:837e6c48e90d
change to unsigned char array

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yangcq88517 0:837e6c48e90d 1 #include "XBeeRx64Indicator.h"
yangcq88517 0:837e6c48e90d 2
yangcq88517 0:837e6c48e90d 3 XBeeRx64Indicator::XBeeRx64Indicator(APIFrame * frame)
yangcq88517 0:837e6c48e90d 4 : RxBase(frame)
yangcq88517 0:837e6c48e90d 5 { }
yangcq88517 0:837e6c48e90d 6
yangcq88517 6:5f31ddc17239 7 unsigned char * XBeeRx64Indicator::getReceivedData()
yangcq88517 0:837e6c48e90d 8 {
yangcq88517 0:837e6c48e90d 9 if (getReceivedDataLength() <= 0)
yangcq88517 0:837e6c48e90d 10 return NULL;
yangcq88517 0:837e6c48e90d 11
yangcq88517 0:837e6c48e90d 12 return data + 11;
yangcq88517 0:837e6c48e90d 13 }
yangcq88517 0:837e6c48e90d 14
yangcq88517 0:837e6c48e90d 15 int XBeeRx64Indicator::getReceivedDataOffset()
yangcq88517 0:837e6c48e90d 16 {
yangcq88517 0:837e6c48e90d 17 return 11;
yangcq88517 0:837e6c48e90d 18 }
yangcq88517 0:837e6c48e90d 19
yangcq88517 0:837e6c48e90d 20 char XBeeRx64Indicator::getReceivedData(int index)
yangcq88517 0:837e6c48e90d 21 {
yangcq88517 0:837e6c48e90d 22 return data[11 + index];
yangcq88517 0:837e6c48e90d 23 }
yangcq88517 0:837e6c48e90d 24
yangcq88517 0:837e6c48e90d 25 int XBeeRx64Indicator::getReceivedDataLength()
yangcq88517 0:837e6c48e90d 26 {
yangcq88517 0:837e6c48e90d 27 return getPosition() - 11;
yangcq88517 0:837e6c48e90d 28 }
yangcq88517 0:837e6c48e90d 29
yangcq88517 0:837e6c48e90d 30 int XBeeRx64Indicator::getRSSI()
yangcq88517 0:837e6c48e90d 31 {
yangcq88517 0:837e6c48e90d 32 return data[9] * -1;
yangcq88517 0:837e6c48e90d 33 }
yangcq88517 0:837e6c48e90d 34
yangcq88517 0:837e6c48e90d 35 int XBeeRx64Indicator::getReceiveStatus()
yangcq88517 0:837e6c48e90d 36 {
yangcq88517 0:837e6c48e90d 37 return data[10];
yangcq88517 0:837e6c48e90d 38 }
yangcq88517 0:837e6c48e90d 39
yangcq88517 0:837e6c48e90d 40 Address XBeeRx64Indicator::getRemoteDevice()
yangcq88517 0:837e6c48e90d 41 {
yangcq88517 0:837e6c48e90d 42 return Address(data + 1, NULL);
yangcq88517 0:837e6c48e90d 43 }
yangcq88517 0:837e6c48e90d 44
yangcq88517 0:837e6c48e90d 45 bool XBeeRx64Indicator::convert(APIFrame * frame)
yangcq88517 0:837e6c48e90d 46 {
yangcq88517 0:837e6c48e90d 47 if (frame == NULL)
yangcq88517 0:837e6c48e90d 48 return false;
yangcq88517 0:837e6c48e90d 49
yangcq88517 0:837e6c48e90d 50 if (frame->getFrameType() != APIFrame::Rx64_Receive_Packet)
yangcq88517 0:837e6c48e90d 51 return false;
yangcq88517 0:837e6c48e90d 52
yangcq88517 0:837e6c48e90d 53 return APIFrame::convert(frame);
yangcq88517 0:837e6c48e90d 54 }
yangcq88517 0:837e6c48e90d 55