TI论坛
直播中

李新美

7年用户 197经验值
私信 关注
[问答]

请问cc2530 ZStack-CC2530-2.3.0-1.4.0终端节点如何判断与协调器断开连接.

hi 大侠们:
如题,网络中只有协调器和一个终端,终端要如何得知它与协调器之间的连接已断开?

具体应用是想用zigbee控制玩具小车。小车上装有cc2530,它与协调器断开连接后要停止前进。
断开连接有2种情况:
1.小车跑出有效范围
这个似乎可以让小车不断的给协调器发请求,然后判断RSSI值来计算是否超有效范围。
2.协调器断电了
我用网蜂的板子试了下,协调器断电后,终端的黄色组网灯就会闪烁,终端是怎么知道协调器断电的?应用层要怎么捕获这个事件?

谢谢!!

回帖(2)

李新美

2018-8-13 08:36:48
2.协调器断电了
找到了一点小线索,刚刚试了下在应用层可以判断_NIB.nwkState的值。
终端入网后值为4,协调器关闭后终端的nwkState会变1次0,然后持续为2,
再把协调器打开时,终端的nwkState会变1次9,然后持续为4。

还不知道通过_NIB.nwkState来判断连接断开与否,是否准确。
举报

李果

2018-8-13 08:46:56
引用: 脑洞大赛11 发表于 2018-8-13 08:36
2.协调器断电了
找到了一点小线索,刚刚试了下在应用层可以判断_NIB.nwkState的值。
终端入网后值为4,协调器关闭后终端的nwkState会变1次0,然后持续为2,

如果只有点对点的话就没有问题
节点状态的值:
typedef enum
[
NWK_INIT,
NWK_JOINING_ORPHAN,
NWK_DISC,
NWK_JOINING,
NWK_ENDDEVICE,
PAN_CHNL_SELECTION,
PAN_CHNL_VERIFY,
PAN_STARTING,
NWK_ROUTER,
NWK_REJOINING
] nwk_states_t;
如果是4的话,代表节点入网成功,是end device设备。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分