本章原理
ZigBee 的通信方式主要有 3 种:点播,广播与组播。点播,顾名思义就是点对点通信,也就是两个
设备之间的通信,不容许有第三个设备收到信息。广播,就是一个设备发出的信息让所有设备都能收到。
组播,就是把网络中的节点分组,每一个组员发出的信息,只有相同组号的组员才能收到
TIP
终端需要设置f8wConfig -DRFD_RCVC_ALWAYS_ON=TRUE
初始化组播代码
SampleApp_Flash_DstAddr.addrMode = (afAddrMode_t)afAddrGroup;
SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; //端点描述
SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP; //组播地址 1
组播发送函数
if ( AF_DataRequest( &SampleApp_Flash_DstAddr/*这个是组播端点描述,必须改**/
, &SampleApp_epDesc,
SAMPLEAPP_FLASH_CLUSTERID, //这个不重要可自己定义
3,
buffer,
&SampleApp_TransID,
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
{
}
else
{
// Error occurred in request to send.
}
接收到信息
case SAMPLEAPP_FLASH_CLUSTERID:
if(0x0001 == pkt->groupId)
{
}