16 个不稳定版本 (6 个破坏性版本)
0.7.0 | 2024年7月4日 |
---|---|
0.5.2 | 2024年6月16日 |
0.5.1 | 2022年6月18日 |
0.5.0 | 2021年12月20日 |
0.2.1 | 2021年11月13日 |
#110 在 嵌入式开发 中
104 每月下载量
用于 vorago-reb1
215KB
4.5K SLoC
为 Vorago VA108xx 微控制器系列提供的 HAL
此仓库包含硬件抽象层(HAL),它是基于外设访问 API 的额外硬件抽象。
它是读取设备数据手册并编码在原始 PAC 之上的类型安全层的成果。此 crate 还实现了嵌入式-hal 项目指定的 trait,使其与嵌入式 Rust 生态系统中的各种驱动程序兼容。
与其他 HAL 实现相比,这里只有一个芯片变体可用,因此无需传递芯片变体作为功能。
构建
构建应用程序需要 thumbv6m-none-eabi
跨编译器工具链。如果您尚未安装,可以使用以下命令安装:
rustup target add thumbv6m-none-eabi
之后,您可以使用 cargo build
命令构建 crate 的开发版本。
如果您尚未这样做,建议阅读一些可用的优秀资源来学习 Rust
设置您自己的二进制 crate
如果您有自定义板,您可能对为您的项目设置新的二进制 crate 感兴趣。以下步骤旨在提供完整的列表,以使二进制 crate 能够为您自定义板进行闪存。
嵌入式开发的“Hello World”通常是闪烁 LED。此示例包含在示例文件夹中。
-
如果您尚未设置,请设置 Rust 跨编译器。有关更多信息,请参阅构建章节
-
使用
cargo init
创建新的二进制 crate -
为确保
cargo build
能够进行交叉编译,建议创建一个.cargo/config.toml
文件。此仓库中也提供了一个示例.cargo/config.toml
文件。 -
将
memory.x
文件复制到您的项目中。此文件包含链接器所需的信息。 -
将
blinky.rs
文件复制到您的二进制crate中的src/main.rs
文件。 -
您需要在您的
Cargo.toml
文件中添加一些依赖项。[dependencies] cortex-m = "<Compatible Version>" cortex-m-rt = "<Compatible Version>" panic-halt = "<Compatible Version>" embedded-hal = "<Compatible Version>" [dependencies.va108xx-hal] version = "<Most Recent Version>" features = ["rt"]
-
使用
cargo build
构建应用程序。 -
不同板子的板级烧录可能有所不同,通常有多种方法。您可以在主要的README文件中找到示例说明。
依赖项
~1.7–2.3MB
~44K SLoC