1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#[repr(C)]
#[derive(Debug)]
///Register block
pub struct RegisterBlock {
moder: MODER,
otyper: OTYPER,
ospeedr: OSPEEDR,
pupdr: PUPDR,
idr: IDR,
odr: ODR,
bsrr: BSRR,
lckr: LCKR,
afrl: AFRL,
afrh: AFRH,
brr: BRR,
}
impl RegisterBlock {
///0x00 - GPIO port mode register
#[inline(always)]
pub const fn moder(&self) -> &MODER {
&self.moder
}
///0x04 - GPIO port output type register
#[inline(always)]
pub const fn otyper(&self) -> &OTYPER {
&self.otyper
}
///0x08 - GPIO port output speed register
#[inline(always)]
pub const fn ospeedr(&self) -> &OSPEEDR {
&self.ospeedr
}
///0x0c - GPIO port pull-up/pull-down register
#[inline(always)]
pub const fn pupdr(&self) -> &PUPDR {
&self.pupdr
}
///0x10 - GPIO port input data register
#[inline(always)]
pub const fn idr(&self) -> &IDR {
&self.idr
}
///0x14 - GPIO port output data register
#[inline(always)]
pub const fn odr(&self) -> &ODR {
&self.odr
}
///0x18 - GPIO port bit set/reset register
#[inline(always)]
pub const fn bsrr(&self) -> &BSRR {
&self.bsrr
}
///0x1c - GPIO port configuration lock register
#[inline(always)]
pub const fn lckr(&self) -> &LCKR {
&self.lckr
}
///0x20 - GPIO alternate function low register
#[inline(always)]
pub const fn afrl(&self) -> &AFRL {
&self.afrl
}
///0x24 - GPIO alternate function high register
#[inline(always)]
pub const fn afrh(&self) -> &AFRH {
&self.afrh
}
///0x28 - port bit reset register
#[inline(always)]
pub const fn brr(&self) -> &BRR {
&self.brr
}
}
/**MODER (rw) register accessor: GPIO port mode register
You can [`read`](crate::Reg::read) this register and get [`moder::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`moder::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#GPIOB:MODER)
For information about available fields see [`mod@moder`] module*/
pub type MODER = crate::Reg<moder::MODERrs>;
///GPIO port mode register
pub mod moder;
pub use crate::stm32g0c1::gpioa::otyper;
pub use crate::stm32g0c1::gpioa::OTYPER;
/**OSPEEDR (rw) register accessor: GPIO port output speed register
You can [`read`](crate::Reg::read) this register and get [`ospeedr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ospeedr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#GPIOB:OSPEEDR)
For information about available fields see [`mod@ospeedr`] module*/
pub type OSPEEDR = crate::Reg<ospeedr::OSPEEDRrs>;
///GPIO port output speed register
pub mod ospeedr;
/**PUPDR (rw) register accessor: GPIO port pull-up/pull-down register
You can [`read`](crate::Reg::read) this register and get [`pupdr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pupdr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#GPIOB:PUPDR)
For information about available fields see [`mod@pupdr`] module*/
pub type PUPDR = crate::Reg<pupdr::PUPDRrs>;
///GPIO port pull-up/pull-down register
pub mod pupdr;
pub use crate::stm32g0c1::gpioa::afrh;
pub use crate::stm32g0c1::gpioa::afrl;
pub use crate::stm32g0c1::gpioa::brr;
pub use crate::stm32g0c1::gpioa::bsrr;
pub use crate::stm32g0c1::gpioa::idr;
pub use crate::stm32g0c1::gpioa::lckr;
pub use crate::stm32g0c1::gpioa::odr;
pub use crate::stm32g0c1::gpioa::AFRH;
pub use crate::stm32g0c1::gpioa::AFRL;
pub use crate::stm32g0c1::gpioa::BRR;
pub use crate::stm32g0c1::gpioa::BSRR;
pub use crate::stm32g0c1::gpioa::IDR;
pub use crate::stm32g0c1::gpioa::LCKR;
pub use crate::stm32g0c1::gpioa::ODR;