#bus #hal #stm32-hal #can

no-std bxcan

STM32 bxCAN外设驱动程序

12个版本 (6个重大更新)

0.7.0 2022年5月30日
0.6.2 2021年11月15日
0.6.0 2021年9月5日
0.5.1 2021年5月15日
0.3.0 2020年12月28日

#1935 in 嵌入式开发

Download history 1647/week @ 2024-03-14 1772/week @ 2024-03-21 1510/week @ 2024-03-28 1323/week @ 2024-04-04 1544/week @ 2024-04-11 1561/week @ 2024-04-18 1325/week @ 2024-04-25 1047/week @ 2024-05-02 1658/week @ 2024-05-09 1920/week @ 2024-05-16 1272/week @ 2024-05-23 1478/week @ 2024-05-30 1757/week @ 2024-06-06 1945/week @ 2024-06-13 1465/week @ 2024-06-20 1342/week @ 2024-06-27

每月下载量6,711
用于 49 个包 (19个直接使用)

MIT/Apache

270KB
8K SLoC

bxCAN外设驱动程序

crates.io docs.rs CI

此包实现了许多中低端STM32微控制器中发现的bxCAN外设的驱动程序。

请参阅变更日志,了解最新版本中发生了哪些变化。

用法

在您的 Cargo.toml 中添加条目

[dependencies]
bxcan = "0.7.0"

查看API文档了解如何使用此包的功能。

Rust版本支持

此包支持至少3个最新的稳定Rust版本。只要这3个版本仍然受到支持,提高最低支持的Rust版本(MSRV)不被视为重大更改。


lib.rs:

STM32 bxCAN外设的驱动程序。

此包为许多中低端STM32微控制器中发现的bxCAN外设提供了可重用的驱动程序。兼容芯片的HAL可以重新导出此包并实现其特质,以便轻松暴露功能丰富的CAN驱动程序。

特性

  • 支持单外设和双外设配置(其中bxCAN实例管理次要实例的过滤器)。
  • 处理标准帧和扩展帧,以及数据帧和远程帧。
  • 支持bxCAN外设发出的中断。
  • 传输尊重CAN ID,并防止优先级反转(在入队更高优先级的帧时可能出队较低优先级的帧)。
  • 实现embedded-hal特质以实现互操作性。
  • 支持RX FIFO(作为[Rx0]和[Rx1])。

限制

  • 对查询错误状态和处理错误中断的支持不完整。

Cargo功能

功能 描述
unstable-defmt 为此包中的类型实现defmtFormat特质。[^1]

注[^1]:defmt的具体版本未指定,可能在补丁版本中更新。

依赖项

约150-325KB