蓝牙每次只能发20字节左右的数据,连续发送几百字节,会出现丢包现象。
加大连接间隔等参数,仍存在丢包;
造成的原因有哪些?
热门产品 :
CH394: 以太网协议栈芯片
蓝牙每次只能发20字节左右的数据,连续发送几百字节,会出现丢包现象。
加大连接间隔等参数,仍存在丢包;
造成的原因有哪些?
首先蓝牙每包数据的大小是根据MTU来决定的,默认mtu为23,那么你就只能每包20字节,修改mtu为247,则每包可以发送244字节,发送又是如何发送的,判断发送成功发下一包还是一直猛发,通讯的距离以及周围的干扰也可能造成。
修改mtu可参考/bbs/thread-88224-1.html
想问一下,数据发送成功的返回函数app_drv_fifo_result_t 里面的APP_DRV_FIFO_RESULT_SUCCESS = 0,吗?
是的,建议把mtu调大试试,
MTU修改了,还是存在丢数据的现象,但首次上电和主机通信的第一次通信,不会丢包,后期存储变多,就会存在丢包。每次发送的数目一定,存储数据量的大小对发送有影响吗?距离十分近,且周围无干扰,还有什么影响因素吗?
我这里尝试了一次发送230字节的数据,发现现象是正常的。你这里需要发送长包,可以使用从机例程进行修改,或者使用BLE_UART的例程也尝试一下。