1#[doc = "Register `ODMER%s` reader"]
2pub struct R(crate::R<ODMER_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<ODMER_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<ODMER_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<ODMER_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `ODMER%s` writer"]
17pub struct W(crate::W<ODMER_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<ODMER_SPEC>;
20 #[inline(always)]
21 fn deref(&self) -> &Self::Target {
22 &self.0
23 }
24}
25impl core::ops::DerefMut for W {
26 #[inline(always)]
27 fn deref_mut(&mut self) -> &mut Self::Target {
28 &mut self.0
29 }
30}
31impl From<crate::W<ODMER_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<ODMER_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Field `P0` reader - Open Drain Mode Enable"]
38pub type P0_R = crate::BitReader<bool>;
39#[doc = "Field `P0` writer - Open Drain Mode Enable"]
40pub type P0_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
41#[doc = "Field `P1` reader - Open Drain Mode Enable"]
42pub type P1_R = crate::BitReader<bool>;
43#[doc = "Field `P1` writer - Open Drain Mode Enable"]
44pub type P1_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
45#[doc = "Field `P2` reader - Open Drain Mode Enable"]
46pub type P2_R = crate::BitReader<bool>;
47#[doc = "Field `P2` writer - Open Drain Mode Enable"]
48pub type P2_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
49#[doc = "Field `P3` reader - Open Drain Mode Enable"]
50pub type P3_R = crate::BitReader<bool>;
51#[doc = "Field `P3` writer - Open Drain Mode Enable"]
52pub type P3_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
53#[doc = "Field `P4` reader - Open Drain Mode Enable"]
54pub type P4_R = crate::BitReader<bool>;
55#[doc = "Field `P4` writer - Open Drain Mode Enable"]
56pub type P4_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
57#[doc = "Field `P5` reader - Open Drain Mode Enable"]
58pub type P5_R = crate::BitReader<bool>;
59#[doc = "Field `P5` writer - Open Drain Mode Enable"]
60pub type P5_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
61#[doc = "Field `P6` reader - Open Drain Mode Enable"]
62pub type P6_R = crate::BitReader<bool>;
63#[doc = "Field `P6` writer - Open Drain Mode Enable"]
64pub type P6_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
65#[doc = "Field `P7` reader - Open Drain Mode Enable"]
66pub type P7_R = crate::BitReader<bool>;
67#[doc = "Field `P7` writer - Open Drain Mode Enable"]
68pub type P7_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
69#[doc = "Field `P8` reader - Open Drain Mode Enable"]
70pub type P8_R = crate::BitReader<bool>;
71#[doc = "Field `P8` writer - Open Drain Mode Enable"]
72pub type P8_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
73#[doc = "Field `P9` reader - Open Drain Mode Enable"]
74pub type P9_R = crate::BitReader<bool>;
75#[doc = "Field `P9` writer - Open Drain Mode Enable"]
76pub type P9_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
77#[doc = "Field `P10` reader - Open Drain Mode Enable"]
78pub type P10_R = crate::BitReader<bool>;
79#[doc = "Field `P10` writer - Open Drain Mode Enable"]
80pub type P10_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
81#[doc = "Field `P11` reader - Open Drain Mode Enable"]
82pub type P11_R = crate::BitReader<bool>;
83#[doc = "Field `P11` writer - Open Drain Mode Enable"]
84pub type P11_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
85#[doc = "Field `P12` reader - Open Drain Mode Enable"]
86pub type P12_R = crate::BitReader<bool>;
87#[doc = "Field `P12` writer - Open Drain Mode Enable"]
88pub type P12_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
89#[doc = "Field `P13` reader - Open Drain Mode Enable"]
90pub type P13_R = crate::BitReader<bool>;
91#[doc = "Field `P13` writer - Open Drain Mode Enable"]
92pub type P13_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
93#[doc = "Field `P14` reader - Open Drain Mode Enable"]
94pub type P14_R = crate::BitReader<bool>;
95#[doc = "Field `P14` writer - Open Drain Mode Enable"]
96pub type P14_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
97#[doc = "Field `P15` reader - Open Drain Mode Enable"]
98pub type P15_R = crate::BitReader<bool>;
99#[doc = "Field `P15` writer - Open Drain Mode Enable"]
100pub type P15_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
101#[doc = "Field `P16` reader - Open Drain Mode Enable"]
102pub type P16_R = crate::BitReader<bool>;
103#[doc = "Field `P16` writer - Open Drain Mode Enable"]
104pub type P16_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
105#[doc = "Field `P17` reader - Open Drain Mode Enable"]
106pub type P17_R = crate::BitReader<bool>;
107#[doc = "Field `P17` writer - Open Drain Mode Enable"]
108pub type P17_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
109#[doc = "Field `P18` reader - Open Drain Mode Enable"]
110pub type P18_R = crate::BitReader<bool>;
111#[doc = "Field `P18` writer - Open Drain Mode Enable"]
112pub type P18_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
113#[doc = "Field `P19` reader - Open Drain Mode Enable"]
114pub type P19_R = crate::BitReader<bool>;
115#[doc = "Field `P19` writer - Open Drain Mode Enable"]
116pub type P19_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
117#[doc = "Field `P20` reader - Open Drain Mode Enable"]
118pub type P20_R = crate::BitReader<bool>;
119#[doc = "Field `P20` writer - Open Drain Mode Enable"]
120pub type P20_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
121#[doc = "Field `P21` reader - Open Drain Mode Enable"]
122pub type P21_R = crate::BitReader<bool>;
123#[doc = "Field `P21` writer - Open Drain Mode Enable"]
124pub type P21_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
125#[doc = "Field `P22` reader - Open Drain Mode Enable"]
126pub type P22_R = crate::BitReader<bool>;
127#[doc = "Field `P22` writer - Open Drain Mode Enable"]
128pub type P22_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
129#[doc = "Field `P23` reader - Open Drain Mode Enable"]
130pub type P23_R = crate::BitReader<bool>;
131#[doc = "Field `P23` writer - Open Drain Mode Enable"]
132pub type P23_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
133#[doc = "Field `P24` reader - Open Drain Mode Enable"]
134pub type P24_R = crate::BitReader<bool>;
135#[doc = "Field `P24` writer - Open Drain Mode Enable"]
136pub type P24_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
137#[doc = "Field `P25` reader - Open Drain Mode Enable"]
138pub type P25_R = crate::BitReader<bool>;
139#[doc = "Field `P25` writer - Open Drain Mode Enable"]
140pub type P25_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
141#[doc = "Field `P26` reader - Open Drain Mode Enable"]
142pub type P26_R = crate::BitReader<bool>;
143#[doc = "Field `P26` writer - Open Drain Mode Enable"]
144pub type P26_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
145#[doc = "Field `P27` reader - Open Drain Mode Enable"]
146pub type P27_R = crate::BitReader<bool>;
147#[doc = "Field `P27` writer - Open Drain Mode Enable"]
148pub type P27_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
149#[doc = "Field `P28` reader - Open Drain Mode Enable"]
150pub type P28_R = crate::BitReader<bool>;
151#[doc = "Field `P28` writer - Open Drain Mode Enable"]
152pub type P28_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
153#[doc = "Field `P29` reader - Open Drain Mode Enable"]
154pub type P29_R = crate::BitReader<bool>;
155#[doc = "Field `P29` writer - Open Drain Mode Enable"]
156pub type P29_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
157#[doc = "Field `P30` reader - Open Drain Mode Enable"]
158pub type P30_R = crate::BitReader<bool>;
159#[doc = "Field `P30` writer - Open Drain Mode Enable"]
160pub type P30_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
161#[doc = "Field `P31` reader - Open Drain Mode Enable"]
162pub type P31_R = crate::BitReader<bool>;
163#[doc = "Field `P31` writer - Open Drain Mode Enable"]
164pub type P31_W<'a, const O: u8> = crate::BitWriter<'a, u32, ODMER_SPEC, bool, O>;
165impl R {
166 #[doc = "Bit 0 - Open Drain Mode Enable"]
167 #[inline(always)]
168 pub fn p0(&self) -> P0_R {
169 P0_R::new((self.bits & 1) != 0)
170 }
171 #[doc = "Bit 1 - Open Drain Mode Enable"]
172 #[inline(always)]
173 pub fn p1(&self) -> P1_R {
174 P1_R::new(((self.bits >> 1) & 1) != 0)
175 }
176 #[doc = "Bit 2 - Open Drain Mode Enable"]
177 #[inline(always)]
178 pub fn p2(&self) -> P2_R {
179 P2_R::new(((self.bits >> 2) & 1) != 0)
180 }
181 #[doc = "Bit 3 - Open Drain Mode Enable"]
182 #[inline(always)]
183 pub fn p3(&self) -> P3_R {
184 P3_R::new(((self.bits >> 3) & 1) != 0)
185 }
186 #[doc = "Bit 4 - Open Drain Mode Enable"]
187 #[inline(always)]
188 pub fn p4(&self) -> P4_R {
189 P4_R::new(((self.bits >> 4) & 1) != 0)
190 }
191 #[doc = "Bit 5 - Open Drain Mode Enable"]
192 #[inline(always)]
193 pub fn p5(&self) -> P5_R {
194 P5_R::new(((self.bits >> 5) & 1) != 0)
195 }
196 #[doc = "Bit 6 - Open Drain Mode Enable"]
197 #[inline(always)]
198 pub fn p6(&self) -> P6_R {
199 P6_R::new(((self.bits >> 6) & 1) != 0)
200 }
201 #[doc = "Bit 7 - Open Drain Mode Enable"]
202 #[inline(always)]
203 pub fn p7(&self) -> P7_R {
204 P7_R::new(((self.bits >> 7) & 1) != 0)
205 }
206 #[doc = "Bit 8 - Open Drain Mode Enable"]
207 #[inline(always)]
208 pub fn p8(&self) -> P8_R {
209 P8_R::new(((self.bits >> 8) & 1) != 0)
210 }
211 #[doc = "Bit 9 - Open Drain Mode Enable"]
212 #[inline(always)]
213 pub fn p9(&self) -> P9_R {
214 P9_R::new(((self.bits >> 9) & 1) != 0)
215 }
216 #[doc = "Bit 10 - Open Drain Mode Enable"]
217 #[inline(always)]
218 pub fn p10(&self) -> P10_R {
219 P10_R::new(((self.bits >> 10) & 1) != 0)
220 }
221 #[doc = "Bit 11 - Open Drain Mode Enable"]
222 #[inline(always)]
223 pub fn p11(&self) -> P11_R {
224 P11_R::new(((self.bits >> 11) & 1) != 0)
225 }
226 #[doc = "Bit 12 - Open Drain Mode Enable"]
227 #[inline(always)]
228 pub fn p12(&self) -> P12_R {
229 P12_R::new(((self.bits >> 12) & 1) != 0)
230 }
231 #[doc = "Bit 13 - Open Drain Mode Enable"]
232 #[inline(always)]
233 pub fn p13(&self) -> P13_R {
234 P13_R::new(((self.bits >> 13) & 1) != 0)
235 }
236 #[doc = "Bit 14 - Open Drain Mode Enable"]
237 #[inline(always)]
238 pub fn p14(&self) -> P14_R {
239 P14_R::new(((self.bits >> 14) & 1) != 0)
240 }
241 #[doc = "Bit 15 - Open Drain Mode Enable"]
242 #[inline(always)]
243 pub fn p15(&self) -> P15_R {
244 P15_R::new(((self.bits >> 15) & 1) != 0)
245 }
246 #[doc = "Bit 16 - Open Drain Mode Enable"]
247 #[inline(always)]
248 pub fn p16(&self) -> P16_R {
249 P16_R::new(((self.bits >> 16) & 1) != 0)
250 }
251 #[doc = "Bit 17 - Open Drain Mode Enable"]
252 #[inline(always)]
253 pub fn p17(&self) -> P17_R {
254 P17_R::new(((self.bits >> 17) & 1) != 0)
255 }
256 #[doc = "Bit 18 - Open Drain Mode Enable"]
257 #[inline(always)]
258 pub fn p18(&self) -> P18_R {
259 P18_R::new(((self.bits >> 18) & 1) != 0)
260 }
261 #[doc = "Bit 19 - Open Drain Mode Enable"]
262 #[inline(always)]
263 pub fn p19(&self) -> P19_R {
264 P19_R::new(((self.bits >> 19) & 1) != 0)
265 }
266 #[doc = "Bit 20 - Open Drain Mode Enable"]
267 #[inline(always)]
268 pub fn p20(&self) -> P20_R {
269 P20_R::new(((self.bits >> 20) & 1) != 0)
270 }
271 #[doc = "Bit 21 - Open Drain Mode Enable"]
272 #[inline(always)]
273 pub fn p21(&self) -> P21_R {
274 P21_R::new(((self.bits >> 21) & 1) != 0)
275 }
276 #[doc = "Bit 22 - Open Drain Mode Enable"]
277 #[inline(always)]
278 pub fn p22(&self) -> P22_R {
279 P22_R::new(((self.bits >> 22) & 1) != 0)
280 }
281 #[doc = "Bit 23 - Open Drain Mode Enable"]
282 #[inline(always)]
283 pub fn p23(&self) -> P23_R {
284 P23_R::new(((self.bits >> 23) & 1) != 0)
285 }
286 #[doc = "Bit 24 - Open Drain Mode Enable"]
287 #[inline(always)]
288 pub fn p24(&self) -> P24_R {
289 P24_R::new(((self.bits >> 24) & 1) != 0)
290 }
291 #[doc = "Bit 25 - Open Drain Mode Enable"]
292 #[inline(always)]
293 pub fn p25(&self) -> P25_R {
294 P25_R::new(((self.bits >> 25) & 1) != 0)
295 }
296 #[doc = "Bit 26 - Open Drain Mode Enable"]
297 #[inline(always)]
298 pub fn p26(&self) -> P26_R {
299 P26_R::new(((self.bits >> 26) & 1) != 0)
300 }
301 #[doc = "Bit 27 - Open Drain Mode Enable"]
302 #[inline(always)]
303 pub fn p27(&self) -> P27_R {
304 P27_R::new(((self.bits >> 27) & 1) != 0)
305 }
306 #[doc = "Bit 28 - Open Drain Mode Enable"]
307 #[inline(always)]
308 pub fn p28(&self) -> P28_R {
309 P28_R::new(((self.bits >> 28) & 1) != 0)
310 }
311 #[doc = "Bit 29 - Open Drain Mode Enable"]
312 #[inline(always)]
313 pub fn p29(&self) -> P29_R {
314 P29_R::new(((self.bits >> 29) & 1) != 0)
315 }
316 #[doc = "Bit 30 - Open Drain Mode Enable"]
317 #[inline(always)]
318 pub fn p30(&self) -> P30_R {
319 P30_R::new(((self.bits >> 30) & 1) != 0)
320 }
321 #[doc = "Bit 31 - Open Drain Mode Enable"]
322 #[inline(always)]
323 pub fn p31(&self) -> P31_R {
324 P31_R::new(((self.bits >> 31) & 1) != 0)
325 }
326}
327impl W {
328 #[doc = "Bit 0 - Open Drain Mode Enable"]
329 #[inline(always)]
330 #[must_use]
331 pub fn p0(&mut self) -> P0_W<0> {
332 P0_W::new(self)
333 }
334 #[doc = "Bit 1 - Open Drain Mode Enable"]
335 #[inline(always)]
336 #[must_use]
337 pub fn p1(&mut self) -> P1_W<1> {
338 P1_W::new(self)
339 }
340 #[doc = "Bit 2 - Open Drain Mode Enable"]
341 #[inline(always)]
342 #[must_use]
343 pub fn p2(&mut self) -> P2_W<2> {
344 P2_W::new(self)
345 }
346 #[doc = "Bit 3 - Open Drain Mode Enable"]
347 #[inline(always)]
348 #[must_use]
349 pub fn p3(&mut self) -> P3_W<3> {
350 P3_W::new(self)
351 }
352 #[doc = "Bit 4 - Open Drain Mode Enable"]
353 #[inline(always)]
354 #[must_use]
355 pub fn p4(&mut self) -> P4_W<4> {
356 P4_W::new(self)
357 }
358 #[doc = "Bit 5 - Open Drain Mode Enable"]
359 #[inline(always)]
360 #[must_use]
361 pub fn p5(&mut self) -> P5_W<5> {
362 P5_W::new(self)
363 }
364 #[doc = "Bit 6 - Open Drain Mode Enable"]
365 #[inline(always)]
366 #[must_use]
367 pub fn p6(&mut self) -> P6_W<6> {
368 P6_W::new(self)
369 }
370 #[doc = "Bit 7 - Open Drain Mode Enable"]
371 #[inline(always)]
372 #[must_use]
373 pub fn p7(&mut self) -> P7_W<7> {
374 P7_W::new(self)
375 }
376 #[doc = "Bit 8 - Open Drain Mode Enable"]
377 #[inline(always)]
378 #[must_use]
379 pub fn p8(&mut self) -> P8_W<8> {
380 P8_W::new(self)
381 }
382 #[doc = "Bit 9 - Open Drain Mode Enable"]
383 #[inline(always)]
384 #[must_use]
385 pub fn p9(&mut self) -> P9_W<9> {
386 P9_W::new(self)
387 }
388 #[doc = "Bit 10 - Open Drain Mode Enable"]
389 #[inline(always)]
390 #[must_use]
391 pub fn p10(&mut self) -> P10_W<10> {
392 P10_W::new(self)
393 }
394 #[doc = "Bit 11 - Open Drain Mode Enable"]
395 #[inline(always)]
396 #[must_use]
397 pub fn p11(&mut self) -> P11_W<11> {
398 P11_W::new(self)
399 }
400 #[doc = "Bit 12 - Open Drain Mode Enable"]
401 #[inline(always)]
402 #[must_use]
403 pub fn p12(&mut self) -> P12_W<12> {
404 P12_W::new(self)
405 }
406 #[doc = "Bit 13 - Open Drain Mode Enable"]
407 #[inline(always)]
408 #[must_use]
409 pub fn p13(&mut self) -> P13_W<13> {
410 P13_W::new(self)
411 }
412 #[doc = "Bit 14 - Open Drain Mode Enable"]
413 #[inline(always)]
414 #[must_use]
415 pub fn p14(&mut self) -> P14_W<14> {
416 P14_W::new(self)
417 }
418 #[doc = "Bit 15 - Open Drain Mode Enable"]
419 #[inline(always)]
420 #[must_use]
421 pub fn p15(&mut self) -> P15_W<15> {
422 P15_W::new(self)
423 }
424 #[doc = "Bit 16 - Open Drain Mode Enable"]
425 #[inline(always)]
426 #[must_use]
427 pub fn p16(&mut self) -> P16_W<16> {
428 P16_W::new(self)
429 }
430 #[doc = "Bit 17 - Open Drain Mode Enable"]
431 #[inline(always)]
432 #[must_use]
433 pub fn p17(&mut self) -> P17_W<17> {
434 P17_W::new(self)
435 }
436 #[doc = "Bit 18 - Open Drain Mode Enable"]
437 #[inline(always)]
438 #[must_use]
439 pub fn p18(&mut self) -> P18_W<18> {
440 P18_W::new(self)
441 }
442 #[doc = "Bit 19 - Open Drain Mode Enable"]
443 #[inline(always)]
444 #[must_use]
445 pub fn p19(&mut self) -> P19_W<19> {
446 P19_W::new(self)
447 }
448 #[doc = "Bit 20 - Open Drain Mode Enable"]
449 #[inline(always)]
450 #[must_use]
451 pub fn p20(&mut self) -> P20_W<20> {
452 P20_W::new(self)
453 }
454 #[doc = "Bit 21 - Open Drain Mode Enable"]
455 #[inline(always)]
456 #[must_use]
457 pub fn p21(&mut self) -> P21_W<21> {
458 P21_W::new(self)
459 }
460 #[doc = "Bit 22 - Open Drain Mode Enable"]
461 #[inline(always)]
462 #[must_use]
463 pub fn p22(&mut self) -> P22_W<22> {
464 P22_W::new(self)
465 }
466 #[doc = "Bit 23 - Open Drain Mode Enable"]
467 #[inline(always)]
468 #[must_use]
469 pub fn p23(&mut self) -> P23_W<23> {
470 P23_W::new(self)
471 }
472 #[doc = "Bit 24 - Open Drain Mode Enable"]
473 #[inline(always)]
474 #[must_use]
475 pub fn p24(&mut self) -> P24_W<24> {
476 P24_W::new(self)
477 }
478 #[doc = "Bit 25 - Open Drain Mode Enable"]
479 #[inline(always)]
480 #[must_use]
481 pub fn p25(&mut self) -> P25_W<25> {
482 P25_W::new(self)
483 }
484 #[doc = "Bit 26 - Open Drain Mode Enable"]
485 #[inline(always)]
486 #[must_use]
487 pub fn p26(&mut self) -> P26_W<26> {
488 P26_W::new(self)
489 }
490 #[doc = "Bit 27 - Open Drain Mode Enable"]
491 #[inline(always)]
492 #[must_use]
493 pub fn p27(&mut self) -> P27_W<27> {
494 P27_W::new(self)
495 }
496 #[doc = "Bit 28 - Open Drain Mode Enable"]
497 #[inline(always)]
498 #[must_use]
499 pub fn p28(&mut self) -> P28_W<28> {
500 P28_W::new(self)
501 }
502 #[doc = "Bit 29 - Open Drain Mode Enable"]
503 #[inline(always)]
504 #[must_use]
505 pub fn p29(&mut self) -> P29_W<29> {
506 P29_W::new(self)
507 }
508 #[doc = "Bit 30 - Open Drain Mode Enable"]
509 #[inline(always)]
510 #[must_use]
511 pub fn p30(&mut self) -> P30_W<30> {
512 P30_W::new(self)
513 }
514 #[doc = "Bit 31 - Open Drain Mode Enable"]
515 #[inline(always)]
516 #[must_use]
517 pub fn p31(&mut self) -> P31_W<31> {
518 P31_W::new(self)
519 }
520 #[doc = "Writes raw bits to the register."]
521 #[inline(always)]
522 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
523 self.0.bits(bits);
524 self
525 }
526}
527#[doc = "Open Drain Mode Register\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [odmer](index.html) module"]
528pub struct ODMER_SPEC;
529impl crate::RegisterSpec for ODMER_SPEC {
530 type Ux = u32;
531}
532#[doc = "`read()` method returns [odmer::R](R) reader structure"]
533impl crate::Readable for ODMER_SPEC {
534 type Reader = R;
535}
536#[doc = "`write(|w| ..)` method takes [odmer::W](W) writer structure"]
537impl crate::Writable for ODMER_SPEC {
538 type Writer = W;
539 const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
540 const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
541}
542#[doc = "`reset()` method sets ODMER%s to value 0"]
543impl crate::Resettable for ODMER_SPEC {
544 const RESET_VALUE: Self::Ux = 0;
545}