CC2530 ZStack 协调器和终端通信问题
时间:10-02
整理:3721RD
点击:
协调器 每300ms 给 终端 发送一个消息包, 终端每隔1s, 向协调器发送DataRequest。
那么,
1、1s时间, 该终端有三个消息包, 终端会一次性从协调器端获取三个消息包吗, 还是每次只获取一个消息包?
2、如果终端突然断电了, 在协调器的发送缓存中,可能还有该终端未发送的消息包。 那么向这样 不能发送的消息包, 协调器端是怎样处理的?
3、协调器的发送缓存大小有限, 上层应用 该怎么处理, 消息包 从协调器 到 各个终端(终端数目多,消息比较频繁时,发送缓存队列可能会满, 但终端还未DataRequest)。 是否需要 协调器给终端发消息包, 终端收到消息包后,给协调器反馈, 然后上层应用 再给该终端发送下一个消息包?
1, 每次获得一条,每次节点发送数据或者data request时,协调器回复的ACK里面得Pending bit会告诉终端设备,父设备是否有数据给他。
2,丢弃了,因为这些包是保存在RAM里的,掉电就没了
3,有MAC ACK
请教一下, 协调器是怎么处理 从终端来的 消息或Data Request?
我想加一段程序, 当终端有消息过来时,标记为当前在线。(可以在协调器接收 终端消息或DataRequest 处, 也可以在协调器进行消息反馈的地方,等任意地方, 只要表示终端有消息过来了)
可以实现吗?