1

我是 BLE 和蓝牙的新手,但我的项目包括通过 BT 5 进行通信。由于 BLE 通信必须传输大约 2 个字节,一次传输到 1 MB,我正在寻找一个优化传输时间的方法。我知道较低传输频率 (125 kbps) 和最高传输频率 (2 Mbps) 以及 251 PDU 字节的 DLE 的优缺点,但我从不同的论坛和文章中看到,吞吐量主要取决于在连接参数上作为连接间隔和每个连接事件的数据包。但是传输频率从何而来?

我已经尝试在这个论坛中搜索答案,以及其他几个,甚至是 BT 核心规范,但我无法找到解决我的问题的方法。

4

2 回答 2

0

如果您阅读我在Why is BLE 4.2 faster than BLE 4.1中的回答,您会发现有许多组件会影响整体传输速度。

您首先拥有无线电传输速率本身,它设置了上限。

然后,您拥有所有数据包之间的开销,这些开销随着您拥有的较长数据包变得不那么明显。

如果您希望吞吐量较高,则每个连接事件的连接间隔和长度可能很重要。如果只有一个连接并且蓝牙芯片不是太笨,连接事件长度将填满连接间隔,因此连接间隔并不重要。但是,如果以必须关闭连接事件的方式安排了其他冲突的无线电事件,则传输无法继续,直到下一个连接事件。所以在这种情况下,如果你降低连接间隔,吞吐量会更高。因此,总而言之,它在很大程度上取决于芯片运行的蓝牙堆栈、主机如何配置以及您拥有多少活动连接。

于 2019-02-21T21:12:38.397 回答
0

传输速率控制你的底层比特率,但最重要的是 BLE 协议的不同层,这会减慢可实现的吞吐量。本文对不同层如何影响吞吐量进行了一般推导,以防万一有用!

于 2019-02-26T06:29:44.450 回答