用于BLE任务的Adafruit库是否会牺牲性能?

时间:2018-08-06 03:42:12

标签: bluetooth-lowenergy stm32 spi adafruit

Adafruit_BluefruitLE_nRF51库是否为了兼具与adafruit的其他设备的功能和兼容性而牺牲了BLE速度?在adafruit的BLE FAQ page中,它们具有以下部分:

  

BLE的理论速度极限是多少?

     

这取决于多种因素,并且取决于中央设备(移动电话等)以及外围设备的功能。   考虑到nR51822的硬件限制(每个连接间隔最多6个数据包,最小连接间隔7.5ms),您最终在各种移动操作系统上会遇到以下理论限制:

iPhone 5/6 + IOS 8.0/8.1
6 packets * 20 bytes * 1/0.030 s = 4 kB/s = 32 kbps
iPhone 5/6 + IOS 8.2/8.3
3 packets * 20 bytes * 1/0.030 s = 2 kB/s = 16 kbps
iPhone 5/6 + IOS 8.x with nRF8001
1 packet * 20 bytes * 1/0.030 s = 0.67 kB/s = 5.3 kbps
Nexus 4
4 packets * 20 bytes * 1/0.0075 s = 10.6 kB/s = 84 kbps
Nordic Master Emulator Firmware (MEFW) with nRF51822 0.9.0
1 packet * 20 bytes * 1/0.0075 = 2.67 kB/s = 21.33 kbps
Nordic Master Emulator Firmware (MEFW) with nRF51822 0.11.0
6 packets * 20 bytes * 1/0.0075 = 16 kB/s = 128 kbps
  

Bluefruit LE固件也有一些限制,但我们正在积极努力以显着提高即将于2016年第二季度发布的即将发布的0.7.0版本的吞吐量。以上数据可作为理论上的最大值确定BLE是否适合您的项目。

在库中找到的示例中,我还注意到了一些奇怪的示例,说明它们如何通过BLE发送数据,这似乎效率很低。

我必须在adafruit的BLE SPI Friend上非常可靠地使用BLE,并且必须具有最高带宽,并且可以与启用STM32 SPI的微控制器一起使用。由于性能低下,我应该避免选择该库吗?我是否应该使用Nordic Semiconductors IDE之类的工具以获得最佳性能?还有其他建议吗?

1 个答案:

答案 0 :(得分:0)

nRF52832只需FYI即可轻松完成700kbps的传输。