微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > Z-stack SerialApp 通讯丢包问题

Z-stack SerialApp 通讯丢包问题

时间:10-02 整理:3721RD 点击:

您好,我有两个个问题想请教:

问题一:我最近在做串口透明传输的实验,测试了serialApp的程序,并了解里面有一个重传的机制。这个机制在大多数时候还是比较管用的。但是发送速度比较快的时候(其实也不快,也就几KB),丢包还是会发生,而且一旦发生,通讯就好像完全堵上,后续的数据都没法传输,要等好几秒才能又继续。

请问照成这样的原因是什么?buffer小了?有没有改进的方法(减少丢包率,丢包之后能立即恢复通讯)。

问题二:这个问题也就是来源于第一个问题,应用层可以自己写重传机制, 那下面几层,比如MAC层或者别的层有没有定义数据包重传机制?比如像TCP里的重传机制。如果有,那Z-stack中是否有相应的API?

谢谢~!

你好!

问题一:单次发送数据有大小限制的SerialApp_TxLen

问题二:有APS层ACK和MAC ACK两种,一般MAC层 ACK是默认开启的,保证通信链路上可靠传输,也有重发机制

你好,谢谢你的回答!

问题一:我的单次发包是有在大小限制内的。掉包我可以理解,但比较疑惑的是,一旦掉包,通讯就死掉,需要等待几秒钟。这个是什么原因呢?

问题二:有相应的API吗? 是否有相关的文档?

谢谢!

如果有丢包的话,底层会尝试多次发送,你后来送到串口的数据可能没法及时发送出去!

你可以看下Z-Stack 安装目录《Documents下Z-Stack Developer's Guide》第8节

好的,谢谢!

请问在哪里 禁止 MAC层的ACK?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top