This crate provides an autogenerated API for access to STM32L4 peripherals. The API is generated using svd2rust with patched svd files containing extensive type-safe support. For more information please see the main repo.
Refer to the documentation for full details.
Each device supported by this crate is behind a feature gate so that you only compile the device(s) you want. To use, in your Cargo.toml:
[dependencies.stm32l4]
version = "0.7.0"
features = ["stm32l4x1", "rt"]
The rt
feature is optional and brings in support for cortex-m-rt
.
In your code:
use stm32l4::stm32l4x1;
let mut peripherals = stm32l4x1::Peripherals::take().unwrap();
let gpioa = &peripherals.GPIOA;
gpioa.odr.modify(|_, w| w.odr0().set_bit());
For full details on the autogenerated API, please see: https://docs.rs/svd2rust/0.14.0/svd2rust/#peripheral-api
Module | Devices | Links |
---|---|---|
stm32l4x1 | STM32L431, STM32L451, STM32L471 | RM0394, st.com |
stm32l4x2 | STM32L432, STM32L442, STM32L452, STM32L462 | RM0394, st.com |
stm32l4x3 | STM32L433, STM32L443 | RM0394, st.com |
stm32l4x5 | STM32L475 | RM0351, st.com |
stm32l4x6 | STM32L476, STM32L486, STM32L496, STM32L4A6 | RM0351, st.com |