主题中讨论的其他部件:CC2592, Z-stack, CC2538, CC2530
我正在使用基于CC2538+CC2592的2592的自定义板,运行经过修改的SampleSwitch应用程序(Z-Stack Home 1.2 .2a.4.4539万),协调员配置。
终端设备是定制设计的CC2530板,在路由器EB配置中运行修改的SampleLight。
我的应用程序要求我设置一些端到端确认系统,以确保“终端设备接收到的命令由它成功处理”。
我有两种方法:
1.我使用内置Z-Stack报告机制.i.e:
--cc2538 SampleSwitch代码,zcl_samplesw.c--
案例ZCL_CMD_REPORT:
//zclSampleSw_ProcessInReportCmd (pInMsg);
中断;
#endif
--CC2530 SampleLight代码,zcl_samplesw.c--
rptcmd.numAttr = 1;
rptcmd.attList[0].attroid = ATTRID_on_off;
rptcmd.attList[0].datatype = ZCL_datatype_UINT8;
rptcmd.attList[0].attroData =(uint8*)&zclSampleLight_OnOff;
zcl_SendReportCmd (SAMPLELIGHT_ENPOINT,0x0000,ZCL_CLON_ID_GEN_ON_OFF,&rptcmd,ZCL_FRAME_CLIENT_SERVER_DIR,FALSE,0);
afAddrType_t DstAddr;
DstAddr.addrMode =(afAddrMode_t) Addr16Bit;
DstAddr.endpoint =您的DST设备端点;
DstAddr.addr.shortAddr =您的DST设备短地址;
zcl_SendReportCmd (SAMPLELIGHT_EndPoint,&DstAddr,...);
2.我从终端设备向协调员发送一条消息,让协调员知道在上次接收命令时执行了什么操作。
我是Zigbee的新用户,我想知道应该选择哪种方法以及为什么选择这两种方法。
如果有人能告诉我这是什么以及为什么,那将是很好的! :-)
请帮助。