3、可以理解为,MTU的大小跟蓝牙芯片无关,当客户在开发APP的时候,可以在APP端主动设置好MTU的大小,然后同步到蓝牙芯片即可
==》没有修改MTU,手机下发数据,我们内部默认都是20个字节进行拆包和分包的 。
==》设置MTU为128之后,那么数据就会是以128个字节进行拆包发送
==》所以关于MTU,是主机端设置即可,我们芯片这边不需要修改
4、BLE传输带宽主要跟两个要素有关: 通信周期和每个通信点可传输的数据量。
==》通信周期: 安卓手机一般可支持到10ms,苹果一般可支持到15ms
==》每个通信点可传输的数据量: 就是指每包的长度以及可以传多少包
5、总之,BLE的速率是很难提高的,也不怎么稳定,尤其高速率的情况下
==》距离远了会丢包重发,环境复杂了也会丢包重发,也会影响速率
==》所以对于大文件的传输,不推荐使用BLE ,没办法的话,也只能忍受这个速率,无解
6、测试举例--BLE测试app设置MTU的方法--其他app其实类似
第一步,在app里面设置mtu为256 。因为测试app“蓝牙调试宝”刚连接上,默认就是23
第二步,测试app往蓝牙芯片下发 1024个字节的数据
实际的效果如下,可以看到蓝牙芯片内部是分4包数据收完的。
关于SPP的速率详细说明:
1、spp就没有那么多事,简单直接,因为spp还是属于经典蓝牙里面子协议,共享经典蓝牙的带宽以及跳频点,所以速率相对会快很多 。但是千万不要拿出来和蓝牙音频去进行比较
2、关于SPP的速率,就只有两个重点
==》第一,把蓝牙芯片的串口波特率尽量的调高,越高越好
==》第二,每一包的数据,尽量的大,比如:手机可以每次发512字节给蓝牙芯片,而不是分4次,每次128 。因为蓝牙芯片永远都是隔一段时间通讯一次 。同时蓝牙芯片发送给手机,也是这个原理
返回搜狐,查看更多