HAL 设计模式清单

  • 命名 (crate 与 Rust 命名约定一致)
  • 互操作性 (crate 与其他库的功能良好交互)
  • 可预测性 (crate 能够实现清晰易懂且行为与其外观一致的代码)
    • 使用构造函数而不是扩展 traits (C-CTOR)
  • GPIO 接口 (GPIO 接口遵循通用模式)
    • 默认情况下,引脚类型是零大小的 (C-ZST-PIN)
    • 引脚类型提供擦除引脚和端口的方法 (C-ERASED-PIN)
    • 引脚状态应编码为类型参数 (C-PIN-STATE)