This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2530 ZStack 协调器和终端通信问题

协调器 每300ms 给 终端 发送一个消息包,  终端每隔1s, 向协调器发送DataRequest。 

那么,

1、1s时间, 该终端有三个消息包,  终端会一次性从协调器端获取三个消息包吗, 还是每次只获取一个消息包?

2、如果终端突然断电了, 在协调器的发送缓存中,可能还有该终端未发送的消息包。 那么向这样 不能发送的消息包, 协调器端是怎样处理的?

3、协调器的发送缓存大小有限, 上层应用 该怎么处理, 消息包 从协调器 到 各个终端(终端数目多,消息比较频繁时,发送缓存队列可能会满, 但终端还未DataRequest)。 是否需要 协调器给终端发消息包, 终端收到消息包后,给协调器反馈,  然后上层应用 再给该终端发送下一个消息包?

  • 1, 每次获得一条,每次节点发送数据或者data request时,协调器回复的ACK里面得Pending bit会告诉终端设备,父设备是否有数据给他。

    2,丢弃了,因为这些包是保存在RAM里的,掉电就没了

    3,有MAC ACK

  • 请教一下, 协调器是怎么处理 从终端来的 消息或Data Request?

    我想加一段程序, 当终端有消息过来时,标记为当前在线。(可以在协调器接收 终端消息或DataRequest 处, 也可以在协调器进行消息反馈的地方,等任意地方, 只要表示终端有消息过来了)

    可以实现吗?