抓包显示,协调器和路由节点已经组网成功,但是路由节点调用 AF_DataRequest发送 经常发送不成功,在抓包软件中看不到有数据发送出去20180904.psd
YiKai Chen:
路由节点调用 AF_DataRequest发送 是发送給誰?另外你用的Z-Stack版本跟例程是哪個?
user5000173:
回复 YiKai Chen:
//协议版本2.5.1a 发送给协调器
uint8 SendFrame(uint8 *msg, uint8 len)
{gscm_routerapp_DstAddr.addrMode = (afAddrMode_t)afAddr16Bit;gscm_routerapp_DstAddr.addr.shortAddr = COORDINATOR_SHORTADDR;//协调器return AppRtrSendMsgOTA(msg, len, AF_ACK_REQUEST);
}
user5000173:
回复 YiKai Chen:
一直没注意,正在测试看看返回值 ,根据返回值可以确定什么原因吗
user5000173:
回复 YiKai Chen:
一直没注意返回值,根据返回值可以判断什么原因吗
Alvin Chen:
回复 user5000173:
可以的,你却debug一下至少可以给一个方向
user5000173:
回复 Alvin Chen:
返回 02 呢
YiKai Chen:
回复 user5000173:
0x02是afStatus_INVALID_PARAMETER,應該是你的參數有誤
user5000173:
回复 YiKai Chen:
// Address is not a valid broadcast typeif ( dstAddr->addrMode == afAddrBroadcast )这个地方直接返回 了这个是什么错误呢
// Validate broadcastingif ( ( dstAddr->addrMode == afAddr16Bit) ||( dstAddr->addrMode == afAddrBroadcast )){// Check for valid broadcast valuesif( ADDR_NOT_BCAST != NLME_IsAddressBroadcast( dstAddr->addr.shortAddr )){// Force mode to broadcastdstAddr->addrMode = afAddrBroadcast;}else{// Address is not a valid broadcast typeif ( dstAddr->addrMode == afAddrBroadcast ){return afStatus_INVALID_PARAMETER;}}}
TI中文支持网