#![no_std]
#[cfg(feature="rt")]
extern crate cortex_m_rt;
mod register;
#[cfg(feature="rt")]
pub use cortex_m_rt::interrupt;
pub use crate::register::{RORegister, UnsafeRORegister};
pub use crate::register::{WORegister, UnsafeWORegister};
pub use crate::register::{RWRegister, UnsafeRWRegister};
#[cfg(any(feature="doc", feature="armv6m", feature="armv7em", feature="armv7m", feature="armv8m"))]
pub mod cortex_m;
#[cfg(feature="armv6m")]
pub use cortex_m::armv6m::*;
#[cfg(feature="armv7em")]
pub use cortex_m::armv7em::*;
#[cfg(feature="armv7m")]
pub use cortex_m::armv7m::*;
#[cfg(feature="armv8m")]
pub use cortex_m::armv8m::*;
#[cfg(any(feature="doc", feature="stm32f0x0", feature="stm32f0x1", feature="stm32f0x2", feature="stm32f0x8"))]
pub mod stm32f0;
#[cfg(feature="stm32f0x0")]
pub use stm32f0::stm32f0x0::*;
#[cfg(feature="stm32f0x1")]
pub use stm32f0::stm32f0x1::*;
#[cfg(feature="stm32f0x2")]
pub use stm32f0::stm32f0x2::*;
#[cfg(feature="stm32f0x8")]
pub use stm32f0::stm32f0x8::*;
#[cfg(any(feature="doc", feature="stm32f100", feature="stm32f101", feature="stm32f102", feature="stm32f103", feature="stm32f107"))]
pub mod stm32f1;
#[cfg(feature="stm32f100")]
pub use stm32f1::stm32f100::*;
#[cfg(feature="stm32f101")]
pub use stm32f1::stm32f101::*;
#[cfg(feature="stm32f102")]
pub use stm32f1::stm32f102::*;
#[cfg(feature="stm32f103")]
pub use stm32f1::stm32f103::*;
#[cfg(feature="stm32f107")]
pub use stm32f1::stm32f107::*;
#[cfg(any(feature="doc", feature="stm32f215", feature="stm32f217"))]
pub mod stm32f2;
#[cfg(feature="stm32f215")]
pub use stm32f2::stm32f215::*;
#[cfg(feature="stm32f217")]
pub use stm32f2::stm32f217::*;
#[cfg(any(feature="doc", feature="stm32f301", feature="stm32f302", feature="stm32f303", feature="stm32f373", feature="stm32f3x4", feature="stm32f3x8"))]
pub mod stm32f3;
#[cfg(feature="stm32f301")]
pub use stm32f3::stm32f301::*;
#[cfg(feature="stm32f302")]
pub use stm32f3::stm32f302::*;
#[cfg(feature="stm32f303")]
pub use stm32f3::stm32f303::*;
#[cfg(feature="stm32f373")]
pub use stm32f3::stm32f373::*;
#[cfg(feature="stm32f3x4")]
pub use stm32f3::stm32f3x4::*;
#[cfg(feature="stm32f3x8")]
pub use stm32f3::stm32f3x8::*;
#[cfg(any(feature="doc", feature="stm32f401", feature="stm32f405", feature="stm32f407", feature="stm32f410", feature="stm32f411", feature="stm32f412", feature="stm32f413", feature="stm32f427", feature="stm32f429", feature="stm32f446", feature="stm32f469"))]
pub mod stm32f4;
#[cfg(feature="stm32f401")]
pub use stm32f4::stm32f401::*;
#[cfg(feature="stm32f405")]
pub use stm32f4::stm32f405::*;
#[cfg(feature="stm32f407")]
pub use stm32f4::stm32f407::*;
#[cfg(feature="stm32f410")]
pub use stm32f4::stm32f410::*;
#[cfg(feature="stm32f411")]
pub use stm32f4::stm32f411::*;
#[cfg(feature="stm32f412")]
pub use stm32f4::stm32f412::*;
#[cfg(feature="stm32f413")]
pub use stm32f4::stm32f413::*;
#[cfg(feature="stm32f427")]
pub use stm32f4::stm32f427::*;
#[cfg(feature="stm32f429")]
pub use stm32f4::stm32f429::*;
#[cfg(feature="stm32f446")]
pub use stm32f4::stm32f446::*;
#[cfg(feature="stm32f469")]
pub use stm32f4::stm32f469::*;
#[cfg(any(feature="doc", feature="stm32f730", feature="stm32f745", feature="stm32f750", feature="stm32f765", feature="stm32f7x2", feature="stm32f7x3", feature="stm32f7x6", feature="stm32f7x7", feature="stm32f7x9"))]
pub mod stm32f7;
#[cfg(feature="stm32f730")]
pub use stm32f7::stm32f730::*;
#[cfg(feature="stm32f745")]
pub use stm32f7::stm32f745::*;
#[cfg(feature="stm32f750")]
pub use stm32f7::stm32f750::*;
#[cfg(feature="stm32f765")]
pub use stm32f7::stm32f765::*;
#[cfg(feature="stm32f7x2")]
pub use stm32f7::stm32f7x2::*;
#[cfg(feature="stm32f7x3")]
pub use stm32f7::stm32f7x3::*;
#[cfg(feature="stm32f7x6")]
pub use stm32f7::stm32f7x6::*;
#[cfg(feature="stm32f7x7")]
pub use stm32f7::stm32f7x7::*;
#[cfg(feature="stm32f7x9")]
pub use stm32f7::stm32f7x9::*;
#[cfg(any(feature="doc", feature="stm32g030", feature="stm32g031", feature="stm32g041", feature="stm32g070", feature="stm32g071", feature="stm32g07x", feature="stm32g081"))]
pub mod stm32g0;
#[cfg(feature="stm32g030")]
pub use stm32g0::stm32g030::*;
#[cfg(feature="stm32g031")]
pub use stm32g0::stm32g031::*;
#[cfg(feature="stm32g041")]
pub use stm32g0::stm32g041::*;
#[cfg(feature="stm32g070")]
pub use stm32g0::stm32g070::*;
#[cfg(feature="stm32g071")]
pub use stm32g0::stm32g071::*;
#[cfg(feature="stm32g07x")]
pub use stm32g0::stm32g07x::*;
#[cfg(feature="stm32g081")]
pub use stm32g0::stm32g081::*;
#[cfg(any(feature="doc", feature="stm32g431", feature="stm32g441", feature="stm32g471", feature="stm32g473", feature="stm32g474", feature="stm32g483", feature="stm32g484"))]
pub mod stm32g4;
#[cfg(feature="stm32g431")]
pub use stm32g4::stm32g431::*;
#[cfg(feature="stm32g441")]
pub use stm32g4::stm32g441::*;
#[cfg(feature="stm32g471")]
pub use stm32g4::stm32g471::*;
#[cfg(feature="stm32g473")]
pub use stm32g4::stm32g473::*;
#[cfg(feature="stm32g474")]
pub use stm32g4::stm32g474::*;
#[cfg(feature="stm32g483")]
pub use stm32g4::stm32g483::*;
#[cfg(feature="stm32g484")]
pub use stm32g4::stm32g484::*;
#[cfg(any(feature="doc", feature="stm32h743", feature="stm32h743v", feature="stm32h747cm4", feature="stm32h747cm7", feature="stm32h753", feature="stm32h753v", feature="stm32h7b3"))]
pub mod stm32h7;
#[cfg(feature="stm32h743")]
pub use stm32h7::stm32h743::*;
#[cfg(feature="stm32h743v")]
pub use stm32h7::stm32h743v::*;
#[cfg(feature="stm32h747cm4")]
pub use stm32h7::stm32h747cm4::*;
#[cfg(feature="stm32h747cm7")]
pub use stm32h7::stm32h747cm7::*;
#[cfg(feature="stm32h753")]
pub use stm32h7::stm32h753::*;
#[cfg(feature="stm32h753v")]
pub use stm32h7::stm32h753v::*;
#[cfg(feature="stm32h7b3")]
pub use stm32h7::stm32h7b3::*;
#[cfg(any(feature="doc", feature="stm32l0x1", feature="stm32l0x2", feature="stm32l0x3"))]
pub mod stm32l0;
#[cfg(feature="stm32l0x1")]
pub use stm32l0::stm32l0x1::*;
#[cfg(feature="stm32l0x2")]
pub use stm32l0::stm32l0x2::*;
#[cfg(feature="stm32l0x3")]
pub use stm32l0::stm32l0x3::*;
#[cfg(any(feature="doc", feature="stm32l100", feature="stm32l151", feature="stm32l162"))]
pub mod stm32l1;
#[cfg(feature="stm32l100")]
pub use stm32l1::stm32l100::*;
#[cfg(feature="stm32l151")]
pub use stm32l1::stm32l151::*;
#[cfg(feature="stm32l162")]
pub use stm32l1::stm32l162::*;
#[cfg(any(feature="doc", feature="stm32l4x1", feature="stm32l4x2", feature="stm32l4x3", feature="stm32l4x5", feature="stm32l4x6"))]
pub mod stm32l4;
#[cfg(feature="stm32l4x1")]
pub use stm32l4::stm32l4x1::*;
#[cfg(feature="stm32l4x2")]
pub use stm32l4::stm32l4x2::*;
#[cfg(feature="stm32l4x3")]
pub use stm32l4::stm32l4x3::*;
#[cfg(feature="stm32l4x5")]
pub use stm32l4::stm32l4x5::*;
#[cfg(feature="stm32l4x6")]
pub use stm32l4::stm32l4x6::*;
#[cfg(any(feature="doc", feature="stm32l552", feature="stm32l562"))]
pub mod stm32l5;
#[cfg(feature="stm32l552")]
pub use stm32l5::stm32l552::*;
#[cfg(feature="stm32l562")]
pub use stm32l5::stm32l562::*;
#[cfg(any(feature="doc", feature="stm32mp157"))]
pub mod stm32mp;
#[cfg(feature="stm32mp157")]
pub use stm32mp::stm32mp157::*;
#[cfg(any(feature="doc", feature="stm32wb55"))]
pub mod stm32wb;
#[cfg(feature="stm32wb55")]
pub use stm32wb::stm32wb55::*;
#[cfg(any(feature="doc", feature="stm32wle5"))]
pub mod stm32wl;
#[cfg(feature="stm32wle5")]
pub use stm32wl::stm32wle5::*;