# stm32g4-staging This crate provides an autogenerated API for access to STM32G4 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. [svd2rust]: https://github.com/rust-embedded/svd2rust [main repo]: https://github.com/stm32-rs/stm32-rs [documentation]: https://docs.rs/stm32g4-staging/latest/stm32g4-staging/ ## Usage 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.stm32g4-staging] version = "0.19.0" features = ["stm32g431"] ``` The `rt` feature is enabled by default and brings in support for `cortex-m-rt`. To disable, specify `default-features = false` in `Cargo.toml`. In your code: ```rust use stm32g4-staging::stm32g431; let mut peripherals = stm32g431::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.35.0/svd2rust/#peripheral-api ## Supported Devices | Module | Devices | Links | |:------:|:-------:|:-----:| | stm32g4x1 | STM32G431, STM32G441, STM32G491 | [RM0440](https://www.st.com/resource/en/reference_manual/dm00355726.pdf), [st.com](https://www.st.com/en/microcontrollers-microprocessors/stm32g4x1.html) | | stm32g4x3 | STM32G473, STM32G483 | [RM0440](https://www.st.com/resource/en/reference_manual/dm00355726.pdf), [st.com](https://www.st.com/en/microcontrollers-microprocessors/stm32g4x3.html) | | stm32g4x4 | STM32G474, STM32G484 | [RM0440](https://www.st.com/resource/en/reference_manual/dm00355726.pdf), [st.com](https://www.st.com/en/microcontrollers-microprocessors/stm32g4x4.html) |