#adafruit #protocols #bluetooth #no-alloc #bluefruit

no-std adafruit-bluefruit-protocol

用于 Adafruit Bluefruit LE Connect 控制器协议的 no_std 解析器

3 个不稳定版本

0.2.0 2023 年 11 月 14 日
0.1.1 2023 年 1 月 7 日
0.1.0 2022 年 12 月 18 日

#1963嵌入式开发

MIT/Apache

40KB
867

Adafruit Bluefruit LE Connect 控制器协议解析器

CI Crates.io Licenses unsafe forbidden

此实现 Adafruit Bluefruit LE Connect 控制器协议,例如由 Adafruit Bluefruit LE Connect 控制器协议 使用,例如 Adafruit Bluefruit LE UART Friend

请注意,这项工作与 Adafruit 无关。

强制特性

此 crate 是 no_std,您可以通过选择功能 use_heapless 使用 heapless::Vec 或通过选择功能 use_alloc 使用 alloc::vec::Vec。如果您选择两者都不选或都选,则会出现编译错误。

可选特性

  • defmt:您可以通过启用 defmt 特性来为所有结构体和枚举实现 defmt::Format 实现,并为每个正在解析的命令实现一个 defmt::debug! 调用。
  • rgb:如果启用,则实现了 From<ColorEvent> for RGB8 以支持 RGB crate
  • serde:如果启用,则所有事件都实现了 serde #[derive(Serialize, Deserialize)]
  • 所有事件都可以被选为独立特征。默认情况下,它们都是选中的,但你可以选择只选择你感兴趣的事件,这将导致二进制文件大小更小。如果收到其他事件,将返回一个 ProtocolParseError::DisabledControllerDataPackageType

示例

STM32F4微控制器的简单示例可在此处找到

更新日志

有关更新日志,请参阅专门的CHANGELOG.md

最低支持的Rust版本(MSRV)

此crate保证能在稳定的Rust 1.62及以上版本上编译。它可能也能在较旧版本上编译,但这可能在任何新的补丁版本中发生变化。

依赖项

~0–350KB