多个寄存器

我们可以使用结构体来表示 UART 寄存器的内存布局。

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

  • 通过运行 #[repr(C)] 命令,指示编译器按顺序布置结构体字段,遵循与 C 语言相同的规则。这是确保结构体具有可预测布局的必要条件,因为默认的 Rust 表示法允许编译器(以及其他内容)按照其认为合适的方式重新排列字段。