组播描述的就是网络中所有节点设备被分组后组内相互通信的过程,确定通信对象的就是节点的组号。关注SampleApp.c
中的2
项内容:
1. 组播afAddrType_t
的类型变量:
afAddrType_t SampleApp_Flash_DstAddr; /* 组播 */
2. 组播内容的结构体:
aps_Group_t SampleApp_Group; /* 分组内容 */
组播参数的配置如下:
/* Setup for the flash command's destination address - Group 1 */
SampleApp_Flash_DstAddr.addrMode = ( afAddrMode_t ) afAddrGroup;
SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP;
已经定义的组信息代码,将ID
修改成组号相对应,方便以后自己扩展分组需要SAMPLEAPP_FLASH_GROUP
,如下(在SampleApp_Init
函数中,位于函数最后面):
/* By default, all devices start out in Group 1 */
SampleApp_Group.ID = SAMPLEAPP_FLASH_GROUP; /* 0x0001 */
osal_memcpy ( SampleApp_Group.name, "Group 1", 7 );
aps_AddGroup ( SAMPLEAPP_ENDPOINT, &Sampl