Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Контрольный список шаблонов проектирования HAL

  • Именование (крейт соответствует соглашениям об именовании в Rust)
  • Взаимодействие (крейт хорошо взаимодействует с функциональностью других библиотек)
    • Типы-обертки предоставляют метод деструктора (C-FREE)
    • HAL переэкспортируют свой крейт доступа к регистрам (C-REEXPORT-PAC)
    • Типы реализуют трейты embedded-hal (C-HAL-TRAITS)
  • Предсказуемость (крейт позволяет писать читаемый код, который работает так, как выглядит)
    • Используются конструкторы вместо трейтов расширения (C-CTOR)
  • Интерфейсы GPIO (Интерфейсы GPIO следуют общему шаблону)
    • Типы пинов по умолчанию нулевого размера (C-ZST-PIN)
    • Типы пинов предоставляют методы для стирания пина и порта (C-ERASED-PIN)
    • Состояние пина должно быть закодировано как параметры типа (C-PIN-STATE)