10 个版本
0.3.0 | 2024 年 7 月 13 日 |
---|---|
0.2.8 | 2024 年 7 月 11 日 |
0.2.5 | 2024 年 4 月 16 日 |
0.2.2 | 2024 年 2 月 17 日 |
0.1.0 | 2020 年 3 月 7 日 |
104 在 嵌入式开发
每月 387 次下载
4MB
105K SLoC
EFM32PG1B 外设访问包 (PAC)
适用于 ARM Cortex-M4 微控制器系列 Silicon Labs EFM32PG1B 的低级寄存器映射,使用 Rust 编写。代码自动从供应商提供的 SVD 文件生成,使用 svd2rust v0.33.0
svd2rust -i EFM32PG1B.svd -c svd2rust.toml
rm -rf src
form -i lib.rs -o src/ && rm lib.rs
cargo fmt
此包的目的是为使用 Rust 编写的嵌入式程序或库提供对 EFM32PG1B MCU 完整功能的访问。
使用的 SVD 文件基于 EFM32PG1B CMSIS-Pack 中的所有文件。它们之间的唯一区别是 <name>
,<description>
和 <flashSize>
字段值。以下是每个 MCU 的闪存大小
EFM32PG1B | 闪存大小 |
---|---|
100F128GM32 |
0x20000 |
100F128IM32 |
0x20000 |
100F256GM32 |
0x40000 |
100F256IM32 |
0x40000 |
200F128GM32 |
0x20000 |
200F128GM48 |
0x20000 |
200F128IM32 |
0x20000 |
200F256GM32 |
0x40000 |
200F256GM48 |
0x40000 |
200F256IM32 |
0x40000 |
200F256IM48 |
0x40000 |
在源 flashSize
文件中使用的 EFM32PG1B.svd
文件中设置的值为最低值(0x20000
)。
时钟管理单元所有通道控制寄存器的 ASYNC
(异步反射)字段已重命名为 ASYNCREFL
,因为 svd2rust
将其转换为 async
,这是 Rust 的关键字,导致编译错误。
文档
SVD 文件可在 EFM32PG1B CMSIS-Pack 中找到。
额外的供应商提供的文档
许可
许可协议为
-
Apache许可证,版本2.0(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
任由您选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,都将如上双重许可,不附加任何额外条款或条件。
依赖
~0.6–1.1MB
~16K SLoC