1.
引言
1.1.
硬件
1.2.
no_std
1.3.
工具
1.4.
安装
1.4.1.
Linux
1.4.2.
MacOS
1.4.3.
Windows
1.4.4.
验证工具链的安装
2.
开始
2.1.
QEMU
2.2.
硬件
2.3.
存储映射的寄存器
2.4.
半主机模式
2.5.
运行时恐慌(Panicking)
2.6.
异常
2.7.
中断
2.8.
IO
3.
外设
3.1.
Rust尝鲜
3.2.
借用检查器
3.3.
单例
4.
静态保障(static guarantees)
4.1.
类型状态编程
4.2.
把外设当作状态机
4.3.
设计约定
4.4.
零成本抽象
5.
可移植性
6.
并发
7.
容器
8.
设计模式
8.1.
HALs
8.1.1.
列表
8.1.2.
命名
8.1.3.
互操性
8.1.4.
可预见性
8.1.5.
GPIO
9.
给嵌入式C开发者的贴士
10.
互操性
10.1.
使用C的Rust
10.2.
使用Rust的C
11.
没有排序的主题
11.1.
优化: 速度与大小间的博弈
11.2.
执行数学运算
附录A: 词汇表
Light
Rust
Coal
Navy
Ayu
The Embedded Rust Book
命名
crate要被恰当地命名(C-CRATE-NAME)
HAL crates应该在目标支持的芯片或者芯片系列之后被命名。它们的名字应该以
-hal
结尾,为了将它们与PAC区分开来。名字不应该包含下划线(请改用破折号)。