1#[repr(C)]
2#[cfg_attr(feature = "debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5 verid: Verid,
6 _reserved1: [u8; 0x0c],
7 gpclr: Gpclr,
8 gpchr: Gpchr,
9 _reserved3: [u8; 0x08],
10 config: Config,
11 _reserved4: [u8; 0x3c],
12 calib0: Calib0,
13 calib1: Calib1,
14 _reserved6: [u8; 0x18],
15 pcr0: Pcr0,
16 pcr1: Pcr1,
17 pcr2: Pcr2,
18 pcr3: Pcr3,
19 pcr4: Pcr4,
20 pcr5: Pcr5,
21 pcr6: Pcr6,
22 pcr7: Pcr7,
23 pcr8: Pcr8,
24 pcr9: Pcr9,
25 pcr10: Pcr10,
26 pcr11: Pcr11,
27 pcr12: Pcr12,
28 pcr13: Pcr13,
29 pcr14: Pcr14,
30 pcr15: Pcr15,
31 pcr16: Pcr16,
32 pcr17: Pcr17,
33 pcr18: Pcr18,
34 pcr19: Pcr19,
35 pcr20: Pcr20,
36 pcr21: Pcr21,
37 pcr22: Pcr22,
38 pcr23: Pcr23,
39 pcr24: Pcr24,
40 pcr25: Pcr25,
41 pcr26: Pcr26,
42 pcr27: Pcr27,
43 pcr28: Pcr28,
44 pcr29: Pcr29,
45 pcr30: Pcr30,
46 pcr31: Pcr31,
47}
48impl RegisterBlock {
49 #[doc = "0x00 - Version ID"]
50 #[inline(always)]
51 pub const fn verid(&self) -> &Verid {
52 &self.verid
53 }
54 #[doc = "0x10 - Global Pin Control Low"]
55 #[inline(always)]
56 pub const fn gpclr(&self) -> &Gpclr {
57 &self.gpclr
58 }
59 #[doc = "0x14 - Global Pin Control High"]
60 #[inline(always)]
61 pub const fn gpchr(&self) -> &Gpchr {
62 &self.gpchr
63 }
64 #[doc = "0x20 - Configuration"]
65 #[inline(always)]
66 pub const fn config(&self) -> &Config {
67 &self.config
68 }
69 #[doc = "0x60 - Calibration 0"]
70 #[inline(always)]
71 pub const fn calib0(&self) -> &Calib0 {
72 &self.calib0
73 }
74 #[doc = "0x64 - Calibration 1"]
75 #[inline(always)]
76 pub const fn calib1(&self) -> &Calib1 {
77 &self.calib1
78 }
79 #[doc = "0x80 - Pin Control 0"]
80 #[inline(always)]
81 pub const fn pcr0(&self) -> &Pcr0 {
82 &self.pcr0
83 }
84 #[doc = "0x84 - Pin Control 1"]
85 #[inline(always)]
86 pub const fn pcr1(&self) -> &Pcr1 {
87 &self.pcr1
88 }
89 #[doc = "0x88 - Pin Control 2"]
90 #[inline(always)]
91 pub const fn pcr2(&self) -> &Pcr2 {
92 &self.pcr2
93 }
94 #[doc = "0x8c - Pin Control 3"]
95 #[inline(always)]
96 pub const fn pcr3(&self) -> &Pcr3 {
97 &self.pcr3
98 }
99 #[doc = "0x90 - Pin Control 4"]
100 #[inline(always)]
101 pub const fn pcr4(&self) -> &Pcr4 {
102 &self.pcr4
103 }
104 #[doc = "0x94 - Pin Control 5"]
105 #[inline(always)]
106 pub const fn pcr5(&self) -> &Pcr5 {
107 &self.pcr5
108 }
109 #[doc = "0x98 - Pin Control 6"]
110 #[inline(always)]
111 pub const fn pcr6(&self) -> &Pcr6 {
112 &self.pcr6
113 }
114 #[doc = "0x9c - Pin Control 7"]
115 #[inline(always)]
116 pub const fn pcr7(&self) -> &Pcr7 {
117 &self.pcr7
118 }
119 #[doc = "0xa0 - Pin Control 8"]
120 #[inline(always)]
121 pub const fn pcr8(&self) -> &Pcr8 {
122 &self.pcr8
123 }
124 #[doc = "0xa4 - Pin Control 9"]
125 #[inline(always)]
126 pub const fn pcr9(&self) -> &Pcr9 {
127 &self.pcr9
128 }
129 #[doc = "0xa8 - Pin Control 10"]
130 #[inline(always)]
131 pub const fn pcr10(&self) -> &Pcr10 {
132 &self.pcr10
133 }
134 #[doc = "0xac - Pin Control 11"]
135 #[inline(always)]
136 pub const fn pcr11(&self) -> &Pcr11 {
137 &self.pcr11
138 }
139 #[doc = "0xb0 - Pin Control 12"]
140 #[inline(always)]
141 pub const fn pcr12(&self) -> &Pcr12 {
142 &self.pcr12
143 }
144 #[doc = "0xb4 - Pin Control 13"]
145 #[inline(always)]
146 pub const fn pcr13(&self) -> &Pcr13 {
147 &self.pcr13
148 }
149 #[doc = "0xb8 - Pin Control 14"]
150 #[inline(always)]
151 pub const fn pcr14(&self) -> &Pcr14 {
152 &self.pcr14
153 }
154 #[doc = "0xbc - Pin Control 15"]
155 #[inline(always)]
156 pub const fn pcr15(&self) -> &Pcr15 {
157 &self.pcr15
158 }
159 #[doc = "0xc0 - Pin Control 16"]
160 #[inline(always)]
161 pub const fn pcr16(&self) -> &Pcr16 {
162 &self.pcr16
163 }
164 #[doc = "0xc4 - Pin Control 17"]
165 #[inline(always)]
166 pub const fn pcr17(&self) -> &Pcr17 {
167 &self.pcr17
168 }
169 #[doc = "0xc8 - Pin Control 18"]
170 #[inline(always)]
171 pub const fn pcr18(&self) -> &Pcr18 {
172 &self.pcr18
173 }
174 #[doc = "0xcc - Pin Control 19"]
175 #[inline(always)]
176 pub const fn pcr19(&self) -> &Pcr19 {
177 &self.pcr19
178 }
179 #[doc = "0xd0 - Pin Control 20"]
180 #[inline(always)]
181 pub const fn pcr20(&self) -> &Pcr20 {
182 &self.pcr20
183 }
184 #[doc = "0xd4 - Pin Control 21"]
185 #[inline(always)]
186 pub const fn pcr21(&self) -> &Pcr21 {
187 &self.pcr21
188 }
189 #[doc = "0xd8 - Pin Control 22"]
190 #[inline(always)]
191 pub const fn pcr22(&self) -> &Pcr22 {
192 &self.pcr22
193 }
194 #[doc = "0xdc - Pin Control 23"]
195 #[inline(always)]
196 pub const fn pcr23(&self) -> &Pcr23 {
197 &self.pcr23
198 }
199 #[doc = "0xe0 - Pin Control 24"]
200 #[inline(always)]
201 pub const fn pcr24(&self) -> &Pcr24 {
202 &self.pcr24
203 }
204 #[doc = "0xe4 - Pin Control 25"]
205 #[inline(always)]
206 pub const fn pcr25(&self) -> &Pcr25 {
207 &self.pcr25
208 }
209 #[doc = "0xe8 - Pin Control 26"]
210 #[inline(always)]
211 pub const fn pcr26(&self) -> &Pcr26 {
212 &self.pcr26
213 }
214 #[doc = "0xec - Pin Control 27"]
215 #[inline(always)]
216 pub const fn pcr27(&self) -> &Pcr27 {
217 &self.pcr27
218 }
219 #[doc = "0xf0 - Pin Control 28"]
220 #[inline(always)]
221 pub const fn pcr28(&self) -> &Pcr28 {
222 &self.pcr28
223 }
224 #[doc = "0xf4 - Pin Control 29"]
225 #[inline(always)]
226 pub const fn pcr29(&self) -> &Pcr29 {
227 &self.pcr29
228 }
229 #[doc = "0xf8 - Pin Control 30"]
230 #[inline(always)]
231 pub const fn pcr30(&self) -> &Pcr30 {
232 &self.pcr30
233 }
234 #[doc = "0xfc - Pin Control 31"]
235 #[inline(always)]
236 pub const fn pcr31(&self) -> &Pcr31 {
237 &self.pcr31
238 }
239}
240#[doc = "VERID (r) register accessor: Version ID\n\nYou can [`read`](crate::Reg::read) this register and get [`verid::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@verid`] module"]
241#[doc(alias = "VERID")]
242pub type Verid = crate::Reg<verid::VeridSpec>;
243#[doc = "Version ID"]
244pub mod verid;
245#[doc = "GPCLR (rw) register accessor: Global Pin Control Low\n\nYou can [`read`](crate::Reg::read) this register and get [`gpclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gpclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gpclr`] module"]
246#[doc(alias = "GPCLR")]
247pub type Gpclr = crate::Reg<gpclr::GpclrSpec>;
248#[doc = "Global Pin Control Low"]
249pub mod gpclr;
250#[doc = "GPCHR (rw) register accessor: Global Pin Control High\n\nYou can [`read`](crate::Reg::read) this register and get [`gpchr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gpchr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gpchr`] module"]
251#[doc(alias = "GPCHR")]
252pub type Gpchr = crate::Reg<gpchr::GpchrSpec>;
253#[doc = "Global Pin Control High"]
254pub mod gpchr;
255#[doc = "CONFIG (rw) register accessor: Configuration\n\nYou can [`read`](crate::Reg::read) this register and get [`config::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`config::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@config`] module"]
256#[doc(alias = "CONFIG")]
257pub type Config = crate::Reg<config::ConfigSpec>;
258#[doc = "Configuration"]
259pub mod config;
260#[doc = "CALIB0 (rw) register accessor: Calibration 0\n\nYou can [`read`](crate::Reg::read) this register and get [`calib0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`calib0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@calib0`] module"]
261#[doc(alias = "CALIB0")]
262pub type Calib0 = crate::Reg<calib0::Calib0Spec>;
263#[doc = "Calibration 0"]
264pub mod calib0;
265#[doc = "CALIB1 (rw) register accessor: Calibration 1\n\nYou can [`read`](crate::Reg::read) this register and get [`calib1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`calib1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@calib1`] module"]
266#[doc(alias = "CALIB1")]
267pub type Calib1 = crate::Reg<calib1::Calib1Spec>;
268#[doc = "Calibration 1"]
269pub mod calib1;
270#[doc = "PCR0 (rw) register accessor: Pin Control 0\n\nYou can [`read`](crate::Reg::read) this register and get [`pcr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pcr0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pcr0`] module"]
271#[doc(alias = "PCR0")]
272pub type Pcr0 = crate::Reg<pcr0::Pcr0Spec>;
273#[doc = "Pin Control 0"]
274pub mod pcr0;
275pub use pcr0 as pcr1;
276pub use pcr0 as pcr2;
277pub use pcr0 as pcr3;
278pub use pcr0 as pcr4;
279pub use pcr0 as pcr5;
280pub use pcr0 as pcr6;
281pub use pcr0 as pcr7;
282pub use pcr0 as pcr8;
283pub use pcr0 as pcr9;
284pub use pcr0 as pcr10;
285pub use pcr0 as pcr11;
286pub use pcr0 as pcr12;
287pub use pcr0 as pcr13;
288pub use pcr0 as pcr14;
289pub use pcr0 as pcr15;
290pub use pcr0 as pcr16;
291pub use pcr0 as pcr17;
292pub use pcr0 as pcr18;
293pub use pcr0 as pcr19;
294pub use pcr0 as pcr20;
295pub use pcr0 as pcr21;
296pub use pcr0 as pcr22;
297pub use pcr0 as pcr23;
298pub use pcr0 as pcr24;
299pub use pcr0 as pcr25;
300pub use pcr0 as pcr26;
301pub use pcr0 as pcr27;
302pub use pcr0 as pcr28;
303pub use pcr0 as pcr29;
304pub use pcr0 as pcr30;
305pub use pcr0 as pcr31;
306pub use Pcr0 as Pcr1;
307pub use Pcr0 as Pcr2;
308pub use Pcr0 as Pcr3;
309pub use Pcr0 as Pcr4;
310pub use Pcr0 as Pcr5;
311pub use Pcr0 as Pcr6;
312pub use Pcr0 as Pcr7;
313pub use Pcr0 as Pcr8;
314pub use Pcr0 as Pcr9;
315pub use Pcr0 as Pcr10;
316pub use Pcr0 as Pcr11;
317pub use Pcr0 as Pcr12;
318pub use Pcr0 as Pcr13;
319pub use Pcr0 as Pcr14;
320pub use Pcr0 as Pcr15;
321pub use Pcr0 as Pcr16;
322pub use Pcr0 as Pcr17;
323pub use Pcr0 as Pcr18;
324pub use Pcr0 as Pcr19;
325pub use Pcr0 as Pcr20;
326pub use Pcr0 as Pcr21;
327pub use Pcr0 as Pcr22;
328pub use Pcr0 as Pcr23;
329pub use Pcr0 as Pcr24;
330pub use Pcr0 as Pcr25;
331pub use Pcr0 as Pcr26;
332pub use Pcr0 as Pcr27;
333pub use Pcr0 as Pcr28;
334pub use Pcr0 as Pcr29;
335pub use Pcr0 as Pcr30;
336pub use Pcr0 as Pcr31;