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.
Diff: Device/Address.h
- Revision:
- 0:837e6c48e90d
- Child:
- 6:5f31ddc17239
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Device/Address.h Thu Oct 22 12:28:26 2015 +0000 @@ -0,0 +1,61 @@ +#ifndef UK_AC_HERTS_SMARTLAB_XBEE_Address +#define UK_AC_HERTS_SMARTLAB_XBEE_Address + +#include "mbed.h" + +class Address +{ +protected: + // total 10 bytes + // IEEE 64 + 16bit networ address + char value[10]; +public: + static Address * BROADCAST_ZIGBEE; + static Address * BROADCAST_XBEE; + + /// <summary> + /// create empty address : 0x00000000 0x00000000 0x0000 + /// this is the default ZigBee Coordinatior + /// </summary> + Address(); + + /// <summary> + /// create address from byte[8 + 2] value : 8 bytes of ieee + 2 bytes network + /// </summary> + /// <param name="Address64"></param> + /// <param name="NET16"></param> + Address(const char * address64, const char * NET16); + + /// <summary> + /// create address from byte[10] value : 8 bytes of ieee follow 2 bytes network + /// </summary> + /// <param name="value"></param> + Address(const char * addr); + + Address(long serialNumberHigh, long serialNumberLow, int networkAddress); + + long getSerialNumberHigh(); + + long getSerialNumberLow(); + + int getNetworkAddress(); + + void setSerialNumberHigh(long SerialNumberHigh); + + void setSerialNumberLow(long SerialNumberLow); + + void setNetworkAddress(int NetworkAddress); + + /// <summary> + /// total 10 bytes + /// IEEE 64 + 16bit networ address + /// </summary> + /// <returns></returns> + const char * getAddressValue(); + + friend bool operator ==(const Address &a,const Address &b); + + friend bool operator !=(const Address &a,const Address &b); +}; + +#endif \ No newline at end of file