#蓝牙 #stm32 #ble #读写

无std stm32wb-hci

STM32WB系列微控制器的蓝牙HCI实现

6个版本

0.17.2 2024年1月17日
0.17.1 2024年1月15日
0.16.0 2023年12月28日
0.1.4 2023年7月27日
0.1.2 2023年6月22日

#402 in 嵌入式开发

MIT/Apache

765KB
10K SLoC

STM32WB-HCI

bluetooth_hci 分支而来

Build Status

该crate定义了STM32WB系列微控制器的蓝牙主机控制器接口(Bluetooth Host-Controller Interface)的纯Rust实现。它定义了规范中的命令和事件,以及厂商特定的命令和事件。

版本

该crate旨在匹配ST发布的最新固件二进制文件。该crate的次要版本号应指示应使用的适当固件版本,在表中不明确时请参考。

crate版本 固件版本
0.17.2 1.17.1
0.17.0 1.17.0
0.16.0 1.16.0
旧版 1.15.0

用法

该crate定义了一个trait(Controller),该trait应该为特定的BLE芯片实现。任何实现者都可以用作host::uart::UartHci来读取和写入芯片。

impl stm32wb_hci::Controller for MyController {
    async fn controller_write(&mut self, header: &[u8], payload: &[u8]) -> Result<(), Self::Error> {
        // implementation...
    }
    async fn controller_read_into(&mut self, buffer: &mut [u8]) -> Result<(), Self::Error> {
        // implementation...
    }
}

整个蓝牙HCI都是通过处理低级I/O的这些函数实现的。

依赖项

~170–370KB