关于终端节点接收数据重复等问题
时间:10-02
整理:3721RD
点击:
协议栈版本ZStack-CC2530-2.5.1a
为了实现设备类型(路由、终端)的串口配置转换,做了如下配置修改:
- 编译选项:BUILD_ALL_DEVICES
- link->Extra Options:修改为AllDevice-Pro.lib
- f8wConfig.cfg:-DRFD_RCVC_ALWAYS_ON=TRUE
- .cfg文件修改为f8wRouter.cfg
- ZDOInitDevice函数中添加
zgInitItems( FALSE );
if( zgDeviceLogicalType == ZG_DEVICETYPE_COORDINATOR )
{
zgDeviceLogicalType = ZG_DEVICETYPE_ENDDEVICE;
osal_nv_write(ZCD_NV_LOGICAL_TYPE,0,sizeof(uint8),&zgDeviceLogicalType);
}
这样修改后,可以通过MT去配置设备类型
但是当配置成终端时,设备收到的消息会重复4-8次不等;例如ZDO_END_DEVICE_ANNCE_IND消息,会收到连续好多次
调试后发现问题出在
- link->Extra Options:修改为AllDevice-Pro.lib
当我改回EndDevice-Pro.lib后,就没有问题了
请问,
- AllDevice-Pro.lib和EndDevice-Pro.lib是什么东西,在对终端节点的消息处理上有什么不同?
- 如果我一定要使用AllDevice-Pro.lib,消息重复的问题要怎么才能比较好的处理掉?
测了一下 终端只会对广播消息重复接收
终于找人有人通过串口修改设备类型了。
大神。我的工程没有用MT层的,该怎么弄啊?具体在MT里面那里呢?方便加个qq吗 292812832