Module hal
Expand description
Provides MCU-specific items.
This module dispatches between one of the following crate, depending on the target MCU family:
| Manufacturer | MCU family | Docs rendered for | Items imported |
|---|---|---|---|
| Espressif | ESP32 | ESP32-C6 | ariel-os-esp::* |
| Nordic Semiconductor | nRF | nRF52840 | ariel-os-nrf::* |
| Raspberry Pi | RP | RP2040 | ariel-os-rp::* |
| STMicroelectronics | STM32 | STM32WB55RG | ariel-os-stm32::* |
Documentation is only rendered for the MCUs listed in the table above, but many others are
supported.
To render the docs locally for the MCU of your choice, adapt the cargo doc command used to
generate documentation for the relevant
crate.
§Portability
To ensure portability of your application, it is recommended to use the generic, MCU-family-agnostic items provided in other modules. Items from this module should only be used when MCU-specific settings are necessary for your application.
Macros§
- define_
peripherals - This macro allows to obtain peripherals from the one listed in the
peripheralsmodule exported by this crate. - group_
peripherals - This macro allows to group peripheral structs defined with
define_peripherals!into a single peripheral struct.
Traits§
- Peripheral
- Trait for any type that can be used as a peripheral of type
P.