1#[doc = r" Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - GPIO port mode register"]
5 pub moder: MODER,
6 #[doc = "0x04 - GPIO port output type register"]
7 pub otyper: OTYPER,
8 #[doc = "0x08 - GPIO port output speed register"]
9 pub ospeedr: OSPEEDR,
10 #[doc = "0x0c - GPIO port pull-up/pull-down register"]
11 pub pupdr: PUPDR,
12 #[doc = "0x10 - GPIO port input data register"]
13 pub idr: IDR,
14 #[doc = "0x14 - GPIO port output data register"]
15 pub odr: ODR,
16 #[doc = "0x18 - GPIO port bit set/reset register"]
17 pub bsrr: BSRR,
18 #[doc = "0x1c - GPIO port configuration lock register"]
19 pub lckr: LCKR,
20 #[doc = "0x20 - GPIO alternate function low register"]
21 pub afrl: AFRL,
22 #[doc = "0x24 - GPIO alternate function high register"]
23 pub afrh: AFRH,
24 #[doc = "0x28 - Port bit reset register"]
25 pub brr: BRR,
26}
27#[doc = "GPIO port mode register"]
28pub struct MODER {
29 register: ::vcell::VolatileCell<u32>,
30}
31#[doc = "GPIO port mode register"]
32pub mod moder;
33#[doc = "GPIO port output type register"]
34pub struct OTYPER {
35 register: ::vcell::VolatileCell<u32>,
36}
37#[doc = "GPIO port output type register"]
38pub mod otyper;
39#[doc = "GPIO port output speed register"]
40pub struct OSPEEDR {
41 register: ::vcell::VolatileCell<u32>,
42}
43#[doc = "GPIO port output speed register"]
44pub mod ospeedr;
45#[doc = "GPIO port pull-up/pull-down register"]
46pub struct PUPDR {
47 register: ::vcell::VolatileCell<u32>,
48}
49#[doc = "GPIO port pull-up/pull-down register"]
50pub mod pupdr;
51#[doc = "GPIO port input data register"]
52pub struct IDR {
53 register: ::vcell::VolatileCell<u32>,
54}
55#[doc = "GPIO port input data register"]
56pub mod idr;
57#[doc = "GPIO port output data register"]
58pub struct ODR {
59 register: ::vcell::VolatileCell<u32>,
60}
61#[doc = "GPIO port output data register"]
62pub mod odr;
63#[doc = "GPIO port bit set/reset register"]
64pub struct BSRR {
65 register: ::vcell::VolatileCell<u32>,
66}
67#[doc = "GPIO port bit set/reset register"]
68pub mod bsrr;
69#[doc = "GPIO port configuration lock register"]
70pub struct LCKR {
71 register: ::vcell::VolatileCell<u32>,
72}
73#[doc = "GPIO port configuration lock register"]
74pub mod lckr;
75#[doc = "GPIO alternate function low register"]
76pub struct AFRL {
77 register: ::vcell::VolatileCell<u32>,
78}
79#[doc = "GPIO alternate function low register"]
80pub mod afrl;
81#[doc = "GPIO alternate function high register"]
82pub struct AFRH {
83 register: ::vcell::VolatileCell<u32>,
84}
85#[doc = "GPIO alternate function high register"]
86pub mod afrh;
87#[doc = "Port bit reset register"]
88pub struct BRR {
89 register: ::vcell::VolatileCell<u32>,
90}
91#[doc = "Port bit reset register"]
92pub mod brr;