This crate provides an autogenerated API for access to STM32F3 peripherals. The API is generated using [svd2rust] with patched svd files containing extensive type-safe support. For more information please see the [main repo].
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:
toml
[dependencies.stm32f3]
version = "0.3.1"
features = ["stm32f301", "rt"]
The rt
feature is optional and brings in support for cortex-m-rt
.
In your code:
```rust extern crate stm32f3; use stm32f3::stm32f301;
let mut peripherals = stm32f301::Peripherals::take().unwrap(); let gpioa = &peripherals.GPIOA; gpioa.odr.modify(|, w| w.odr0().setbit()); ```
For full details on the autogenerated API, please see: https://docs.rs/svd2rust/0.13.1/svd2rust/#peripheral-api
| Module | Devices | Links | |:------:|:-------:|:-----:| | stm32f301 | STM32F301 | RM0366, st.com | | stm32f302 | STM32F302 | RM0365, st.com | | stm32f303 | STM32F303 | RM0316, st.com | | stm32f373 | STM32F373 | RM0313, st.com | | stm32f3x4 | STM32F334 | RM0364, st.com | | stm32f3x8 | STM32F318, STM32F328, STM32F358, STM32F378, STM32F398 | RM0316, st.com |