我用的是TIMAC1.5 ,使用协调器发送数据且不是通过间接方式给终端,可以抓包看到协调器发出的数据包,但终端没收到是什么原因?(协调器发送数据时目的地址设置为终端短地址)。
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。
协调器是使用的单播的方式来发送数据给终端的?------对,协调器通过单播方式发送数据,协调器使用 MAC_McpsDataReq()发送数据,并设置发送方式 txOptions = MAC_TXOPTION_ACK;(使用MAC_TXOPTION_INDIRECT方式会需要终端poll协调器后再发送,但我希望协调器直接发送数据给终端,省略节点poll协调器的过程)。目前协调器使用MAC_TXOPTION_ACK的方式发送数据,可以通过抓包工具抓到协调器发送的数据包和终端的回复包,但终端实际并没收到数据,附图如下:
终端的data request设置是多少? ------我不太明白您的意思?是指终端poll协调器时的参数吗?
协调器发送数据的频率是多少? ------协调器是在 终端给协调器发送数据暂停期间 单独发送的一次数据包。
user6205623 说:终端的data request设置是多少? ------我不太明白您的意思?是指终端poll协调器时的参数吗?
是的
谢谢 YiKai 前辈指导!
调试了几天不行,后面我更换了版本,解决了该问题,此前来回答这个问题。
根据协议栈更新日志上看到确实有这个BUG:
Bug Fixes:
- [5783] Fixed a problem in the CC2530 MAC where a transmit packet would
be "pended" during active packet reception but never got sent. Transmit
packets would not be sent until the device received its next packet.
使用TIMAC 1.5.2版本可以解决该问题。