Quantcast
Channel: Zigbee 和 Thread
Viewing all articles
Browse latest Browse all 16962

帖子: RE: zcl_SendCommand() 返回成功但没有发送出数据包

$
0
0

1. 解决方法:

这个问题可以在应用层加超时机制和重传解决。

2. 根本原因猜想:

AF_DataRequest只是把数据包打包后到达MAC层的Queue等待发送,

802.15.4中有一个原语purge,这个原语的作用对象是协调器,作用是删除发送Queue中的一个消息,

所以可能由于某种原因这个原语被使用了。

3. 测试思路建议:

purge接口在 mac_api.h 中描述如下:

/**************************************************************************************************
* @fn MAC_McpsPurgeReq
*
* @brief This function purges and discards a data request from the
* MAC data queue. When the operation is complete the MAC sends
* a MAC_MCPS_PURGE_CNF.
*
* input parameters
*
* @param msduHandle - The application-defined handle value
*
* output parameters
*
* None.
*
* @return None.
**************************************************************************************************
*/
extern void MAC_McpsPurgeReq(uint8 msduHandle);

从描述中可以看到这个原语有confirm,所以可以在CNF回掉函数中进行测试打印。

4.  如果有进行测试希望可以分享结果哈,谢谢!


Viewing all articles
Browse latest Browse all 16962

Trending Articles