如下摘自ti的document!
Each device is a node in the Zigbee. Each node has a long and short address, the short address of the node is used by other nodes to send it data. Each node has 241 endpoint (0 reserved, 1-240 application assigned).
Each endpointis separately addressable;when a device sends data it must specify the destination node’s short address and theendpoint that will receive that data. An application must register one or more endpoints to send and receive data in a Zigbee network.
Each endpoint must have a Zigbee Simple Descriptor. This descriptor describes the endpoint to the rest of the Zigbee network.
typedef struct { byte EndPoint; uint16 AppProfId; uint16 AppDeviceId; byte AppDevVer:4; byte Reserved:4; // AF_V1_SUPPORT uses for AppFlags:4. byte AppNumInClusters; cId_t *pAppInClusterList; byte AppNumOutClusters; cId_t *pAppOutClusterList; } SimpleDescriptionFormat_t; EndPoint – The endpoint number 1-240 (0 is reserved). This is the subaddress of the node, and is used to receive data..//端点可以用于接受数据 AppProfId – This field identifies the Profile ID supported on this endpoint. The IDs shall be obtained from the ZigBee Alliance. AppDeviceId –This field identifies the Device ID supported on this endpoint. The IDs shall be obtained from the ZigBee Alliance.
AppDevVer –Identifies the version of the relevant Device Description that this device implements on this endpoint.
0x00 is Version 1.0. Reserved – not used. AppNumInClusters – This indicates the number of input clusters supported by this endpoint. pAppInClusterList – Pointer to the input cluster ID list. AppNumOutClusters – 8 bit field. This indicates the number of output clusters supported by this endpoint. pAppOutClusterList – Pointer to the output cluster ID list.
在实际的应用中,很多参数不需要我们自己去配置,而是系统默认的。但是记住很重要的一个:byte EndPoint; 这个参数必须是唯一的,对于需要绑定的设备(比如一个按键和一个灯)。只有具有相同的EndPoint,设备之间才能说话(灯设备和按键设备正常通信)。