怎么我的协调器与路由器之间传输21个字节数据需要730ms,怎么样才能提高速度?
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.
通过我最近的观察发现耗时基本在
AF_DataRequest( &SampleApp_Periodic_DstAddr,
(endPointDesc_t *)&SampleApp_epDesc,
id,
len, buf,
&SampleApp_TransID,
//AF_DISCV_ROUTE,
AF_DISCV_ROUTE,
60 )
这个函数里面。因为我收到广播命令后如果马上发送一条广播命令他耗时570ms,如果发送两条广播命令耗时1127ms.我附件里有抓包资料,你可以对比一下。看看能不能帮我找到在哪里设置相关参数缩短这个函数的执行时间。万分感谢!如果可以的话希望能加下你qq,或者你加下我qq:421181705.
从你给出的psd文件来看,两个广播包之间的时间差为570ms, 数据的传递方式是A发广播,B收到广播后广播。这个570ms可能是由于B设备得到数据延迟或者nwk发发缓存造成的。如果0x4C7B(抓包文件中第二次广播的节点),是End, 这部分时间可能是它Poll到数据的延迟,要验证这个猜测,需要使用两个FFD来测试,广播地址使用0xFFFC。 再一个,B设备的发送缓存造成,由于前一次广播的数据B设备接收到A的广播消息以后,仍然要进行一次广播,这一次广播与它后面要发送的广播之间出现时间差的原因可能是底层将两个广播排队,这个是没有办法的。
ANY WAY, 尽量不要在ZigBee网络内使用broadcast通信。