1#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"Pmn Pin Function Control Register"]
28unsafe impl ::core::marker::Send for super::Pfs {}
29unsafe impl ::core::marker::Sync for super::Pfs {}
30impl super::Pfs {
31 #[allow(unused)]
32 #[inline(always)]
33 pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34 self.ptr
35 }
36
37 #[doc = "Port 00%s Pin Function Select Register"]
38 #[inline(always)]
39 pub const fn p00pfs(
40 &self,
41 ) -> &'static crate::common::ClusterRegisterArray<
42 crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW>,
43 10,
44 0x4,
45 > {
46 unsafe {
47 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x0usize))
48 }
49 }
50 #[inline(always)]
51 pub const fn p000pfs(
52 &self,
53 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
54 unsafe {
55 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
56 self._svd2pac_as_ptr().add(0x0usize),
57 )
58 }
59 }
60 #[inline(always)]
61 pub const fn p001pfs(
62 &self,
63 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
64 unsafe {
65 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
66 self._svd2pac_as_ptr().add(0x4usize),
67 )
68 }
69 }
70 #[inline(always)]
71 pub const fn p002pfs(
72 &self,
73 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
74 unsafe {
75 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
76 self._svd2pac_as_ptr().add(0x8usize),
77 )
78 }
79 }
80 #[inline(always)]
81 pub const fn p003pfs(
82 &self,
83 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
84 unsafe {
85 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
86 self._svd2pac_as_ptr().add(0xcusize),
87 )
88 }
89 }
90 #[inline(always)]
91 pub const fn p004pfs(
92 &self,
93 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
94 unsafe {
95 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
96 self._svd2pac_as_ptr().add(0x10usize),
97 )
98 }
99 }
100 #[inline(always)]
101 pub const fn p005pfs(
102 &self,
103 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
104 unsafe {
105 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
106 self._svd2pac_as_ptr().add(0x14usize),
107 )
108 }
109 }
110 #[inline(always)]
111 pub const fn p006pfs(
112 &self,
113 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
114 unsafe {
115 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
116 self._svd2pac_as_ptr().add(0x18usize),
117 )
118 }
119 }
120 #[inline(always)]
121 pub const fn p007pfs(
122 &self,
123 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
124 unsafe {
125 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
126 self._svd2pac_as_ptr().add(0x1cusize),
127 )
128 }
129 }
130 #[inline(always)]
131 pub const fn p008pfs(
132 &self,
133 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
134 unsafe {
135 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
136 self._svd2pac_as_ptr().add(0x20usize),
137 )
138 }
139 }
140 #[inline(always)]
141 pub const fn p009pfs(
142 &self,
143 ) -> &'static crate::common::Reg<self::P00Pfs_SPEC, crate::common::RW> {
144 unsafe {
145 crate::common::Reg::<self::P00Pfs_SPEC, crate::common::RW>::from_ptr(
146 self._svd2pac_as_ptr().add(0x24usize),
147 )
148 }
149 }
150
151 #[doc = "Port 00%s Pin Function Select Register"]
152 #[inline(always)]
153 pub const fn p00pfs_ha(
154 &self,
155 ) -> &'static crate::common::ClusterRegisterArray<
156 crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW>,
157 10,
158 0x4,
159 > {
160 unsafe {
161 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x0usize))
162 }
163 }
164 #[inline(always)]
165 pub const fn p000pfs_ha(
166 &self,
167 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
168 unsafe {
169 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
170 self._svd2pac_as_ptr().add(0x0usize),
171 )
172 }
173 }
174 #[inline(always)]
175 pub const fn p001pfs_ha(
176 &self,
177 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
178 unsafe {
179 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
180 self._svd2pac_as_ptr().add(0x4usize),
181 )
182 }
183 }
184 #[inline(always)]
185 pub const fn p002pfs_ha(
186 &self,
187 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
188 unsafe {
189 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
190 self._svd2pac_as_ptr().add(0x8usize),
191 )
192 }
193 }
194 #[inline(always)]
195 pub const fn p003pfs_ha(
196 &self,
197 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
198 unsafe {
199 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
200 self._svd2pac_as_ptr().add(0xcusize),
201 )
202 }
203 }
204 #[inline(always)]
205 pub const fn p004pfs_ha(
206 &self,
207 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
208 unsafe {
209 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
210 self._svd2pac_as_ptr().add(0x10usize),
211 )
212 }
213 }
214 #[inline(always)]
215 pub const fn p005pfs_ha(
216 &self,
217 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
218 unsafe {
219 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
220 self._svd2pac_as_ptr().add(0x14usize),
221 )
222 }
223 }
224 #[inline(always)]
225 pub const fn p006pfs_ha(
226 &self,
227 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
228 unsafe {
229 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
230 self._svd2pac_as_ptr().add(0x18usize),
231 )
232 }
233 }
234 #[inline(always)]
235 pub const fn p007pfs_ha(
236 &self,
237 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
238 unsafe {
239 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
240 self._svd2pac_as_ptr().add(0x1cusize),
241 )
242 }
243 }
244 #[inline(always)]
245 pub const fn p008pfs_ha(
246 &self,
247 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
248 unsafe {
249 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
250 self._svd2pac_as_ptr().add(0x20usize),
251 )
252 }
253 }
254 #[inline(always)]
255 pub const fn p009pfs_ha(
256 &self,
257 ) -> &'static crate::common::Reg<self::P00PfsHa_SPEC, crate::common::RW> {
258 unsafe {
259 crate::common::Reg::<self::P00PfsHa_SPEC, crate::common::RW>::from_ptr(
260 self._svd2pac_as_ptr().add(0x24usize),
261 )
262 }
263 }
264
265 #[doc = "Port 00%s Pin Function Select Register"]
266 #[inline(always)]
267 pub const fn p00pfs_by(
268 &self,
269 ) -> &'static crate::common::ClusterRegisterArray<
270 crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW>,
271 10,
272 0x4,
273 > {
274 unsafe {
275 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x0usize))
276 }
277 }
278 #[inline(always)]
279 pub const fn p000pfs_by(
280 &self,
281 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
282 unsafe {
283 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
284 self._svd2pac_as_ptr().add(0x0usize),
285 )
286 }
287 }
288 #[inline(always)]
289 pub const fn p001pfs_by(
290 &self,
291 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
292 unsafe {
293 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
294 self._svd2pac_as_ptr().add(0x4usize),
295 )
296 }
297 }
298 #[inline(always)]
299 pub const fn p002pfs_by(
300 &self,
301 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
302 unsafe {
303 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
304 self._svd2pac_as_ptr().add(0x8usize),
305 )
306 }
307 }
308 #[inline(always)]
309 pub const fn p003pfs_by(
310 &self,
311 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
312 unsafe {
313 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
314 self._svd2pac_as_ptr().add(0xcusize),
315 )
316 }
317 }
318 #[inline(always)]
319 pub const fn p004pfs_by(
320 &self,
321 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
322 unsafe {
323 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
324 self._svd2pac_as_ptr().add(0x10usize),
325 )
326 }
327 }
328 #[inline(always)]
329 pub const fn p005pfs_by(
330 &self,
331 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
332 unsafe {
333 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
334 self._svd2pac_as_ptr().add(0x14usize),
335 )
336 }
337 }
338 #[inline(always)]
339 pub const fn p006pfs_by(
340 &self,
341 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
342 unsafe {
343 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
344 self._svd2pac_as_ptr().add(0x18usize),
345 )
346 }
347 }
348 #[inline(always)]
349 pub const fn p007pfs_by(
350 &self,
351 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
352 unsafe {
353 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
354 self._svd2pac_as_ptr().add(0x1cusize),
355 )
356 }
357 }
358 #[inline(always)]
359 pub const fn p008pfs_by(
360 &self,
361 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
362 unsafe {
363 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
364 self._svd2pac_as_ptr().add(0x20usize),
365 )
366 }
367 }
368 #[inline(always)]
369 pub const fn p009pfs_by(
370 &self,
371 ) -> &'static crate::common::Reg<self::P00PfsBy_SPEC, crate::common::RW> {
372 unsafe {
373 crate::common::Reg::<self::P00PfsBy_SPEC, crate::common::RW>::from_ptr(
374 self._svd2pac_as_ptr().add(0x24usize),
375 )
376 }
377 }
378
379 #[doc = "Port 0%s Pin Function Select Register"]
380 #[inline(always)]
381 pub const fn p0pfs(
382 &self,
383 ) -> &'static crate::common::ClusterRegisterArray<
384 crate::common::Reg<self::P0Pfs_SPEC, crate::common::RW>,
385 2,
386 0x4,
387 > {
388 unsafe {
389 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x38usize))
390 }
391 }
392 #[inline(always)]
393 pub const fn p014pfs(
394 &self,
395 ) -> &'static crate::common::Reg<self::P0Pfs_SPEC, crate::common::RW> {
396 unsafe {
397 crate::common::Reg::<self::P0Pfs_SPEC, crate::common::RW>::from_ptr(
398 self._svd2pac_as_ptr().add(0x38usize),
399 )
400 }
401 }
402 #[inline(always)]
403 pub const fn p015pfs(
404 &self,
405 ) -> &'static crate::common::Reg<self::P0Pfs_SPEC, crate::common::RW> {
406 unsafe {
407 crate::common::Reg::<self::P0Pfs_SPEC, crate::common::RW>::from_ptr(
408 self._svd2pac_as_ptr().add(0x3cusize),
409 )
410 }
411 }
412
413 #[doc = "Port 0%s Pin Function Select Register"]
414 #[inline(always)]
415 pub const fn p0pfs_ha(
416 &self,
417 ) -> &'static crate::common::ClusterRegisterArray<
418 crate::common::Reg<self::P0PfsHa_SPEC, crate::common::RW>,
419 2,
420 0x4,
421 > {
422 unsafe {
423 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x38usize))
424 }
425 }
426 #[inline(always)]
427 pub const fn p014pfs_ha(
428 &self,
429 ) -> &'static crate::common::Reg<self::P0PfsHa_SPEC, crate::common::RW> {
430 unsafe {
431 crate::common::Reg::<self::P0PfsHa_SPEC, crate::common::RW>::from_ptr(
432 self._svd2pac_as_ptr().add(0x38usize),
433 )
434 }
435 }
436 #[inline(always)]
437 pub const fn p015pfs_ha(
438 &self,
439 ) -> &'static crate::common::Reg<self::P0PfsHa_SPEC, crate::common::RW> {
440 unsafe {
441 crate::common::Reg::<self::P0PfsHa_SPEC, crate::common::RW>::from_ptr(
442 self._svd2pac_as_ptr().add(0x3cusize),
443 )
444 }
445 }
446
447 #[doc = "Port 0%s Pin Function Select Register"]
448 #[inline(always)]
449 pub const fn p0pfs_by(
450 &self,
451 ) -> &'static crate::common::ClusterRegisterArray<
452 crate::common::Reg<self::P0PfsBy_SPEC, crate::common::RW>,
453 2,
454 0x4,
455 > {
456 unsafe {
457 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x38usize))
458 }
459 }
460 #[inline(always)]
461 pub const fn p014pfs_by(
462 &self,
463 ) -> &'static crate::common::Reg<self::P0PfsBy_SPEC, crate::common::RW> {
464 unsafe {
465 crate::common::Reg::<self::P0PfsBy_SPEC, crate::common::RW>::from_ptr(
466 self._svd2pac_as_ptr().add(0x38usize),
467 )
468 }
469 }
470 #[inline(always)]
471 pub const fn p015pfs_by(
472 &self,
473 ) -> &'static crate::common::Reg<self::P0PfsBy_SPEC, crate::common::RW> {
474 unsafe {
475 crate::common::Reg::<self::P0PfsBy_SPEC, crate::common::RW>::from_ptr(
476 self._svd2pac_as_ptr().add(0x3cusize),
477 )
478 }
479 }
480
481 #[doc = "Port 10%s Pin Function Select Register"]
482 #[inline(always)]
483 pub const fn p10pfs(
484 &self,
485 ) -> &'static crate::common::ClusterRegisterArray<
486 crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW>,
487 8,
488 0x4,
489 > {
490 unsafe {
491 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x40usize))
492 }
493 }
494 #[inline(always)]
495 pub const fn p100pfs(
496 &self,
497 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
498 unsafe {
499 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
500 self._svd2pac_as_ptr().add(0x40usize),
501 )
502 }
503 }
504 #[inline(always)]
505 pub const fn p101pfs(
506 &self,
507 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
508 unsafe {
509 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
510 self._svd2pac_as_ptr().add(0x44usize),
511 )
512 }
513 }
514 #[inline(always)]
515 pub const fn p102pfs(
516 &self,
517 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
518 unsafe {
519 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
520 self._svd2pac_as_ptr().add(0x48usize),
521 )
522 }
523 }
524 #[inline(always)]
525 pub const fn p103pfs(
526 &self,
527 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
528 unsafe {
529 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
530 self._svd2pac_as_ptr().add(0x4cusize),
531 )
532 }
533 }
534 #[inline(always)]
535 pub const fn p104pfs(
536 &self,
537 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
538 unsafe {
539 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
540 self._svd2pac_as_ptr().add(0x50usize),
541 )
542 }
543 }
544 #[inline(always)]
545 pub const fn p105pfs(
546 &self,
547 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
548 unsafe {
549 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
550 self._svd2pac_as_ptr().add(0x54usize),
551 )
552 }
553 }
554 #[inline(always)]
555 pub const fn p106pfs(
556 &self,
557 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
558 unsafe {
559 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
560 self._svd2pac_as_ptr().add(0x58usize),
561 )
562 }
563 }
564 #[inline(always)]
565 pub const fn p107pfs(
566 &self,
567 ) -> &'static crate::common::Reg<self::P10Pfs_SPEC, crate::common::RW> {
568 unsafe {
569 crate::common::Reg::<self::P10Pfs_SPEC, crate::common::RW>::from_ptr(
570 self._svd2pac_as_ptr().add(0x5cusize),
571 )
572 }
573 }
574
575 #[doc = "Port 10%s Pin Function Select Register"]
576 #[inline(always)]
577 pub const fn p10pfs_ha(
578 &self,
579 ) -> &'static crate::common::ClusterRegisterArray<
580 crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW>,
581 8,
582 0x4,
583 > {
584 unsafe {
585 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x40usize))
586 }
587 }
588 #[inline(always)]
589 pub const fn p100pfs_ha(
590 &self,
591 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
592 unsafe {
593 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
594 self._svd2pac_as_ptr().add(0x40usize),
595 )
596 }
597 }
598 #[inline(always)]
599 pub const fn p101pfs_ha(
600 &self,
601 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
602 unsafe {
603 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
604 self._svd2pac_as_ptr().add(0x44usize),
605 )
606 }
607 }
608 #[inline(always)]
609 pub const fn p102pfs_ha(
610 &self,
611 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
612 unsafe {
613 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
614 self._svd2pac_as_ptr().add(0x48usize),
615 )
616 }
617 }
618 #[inline(always)]
619 pub const fn p103pfs_ha(
620 &self,
621 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
622 unsafe {
623 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
624 self._svd2pac_as_ptr().add(0x4cusize),
625 )
626 }
627 }
628 #[inline(always)]
629 pub const fn p104pfs_ha(
630 &self,
631 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
632 unsafe {
633 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
634 self._svd2pac_as_ptr().add(0x50usize),
635 )
636 }
637 }
638 #[inline(always)]
639 pub const fn p105pfs_ha(
640 &self,
641 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
642 unsafe {
643 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
644 self._svd2pac_as_ptr().add(0x54usize),
645 )
646 }
647 }
648 #[inline(always)]
649 pub const fn p106pfs_ha(
650 &self,
651 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
652 unsafe {
653 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
654 self._svd2pac_as_ptr().add(0x58usize),
655 )
656 }
657 }
658 #[inline(always)]
659 pub const fn p107pfs_ha(
660 &self,
661 ) -> &'static crate::common::Reg<self::P10PfsHa_SPEC, crate::common::RW> {
662 unsafe {
663 crate::common::Reg::<self::P10PfsHa_SPEC, crate::common::RW>::from_ptr(
664 self._svd2pac_as_ptr().add(0x5cusize),
665 )
666 }
667 }
668
669 #[doc = "Port 10%s Pin Function Select Register"]
670 #[inline(always)]
671 pub const fn p10pfs_by(
672 &self,
673 ) -> &'static crate::common::ClusterRegisterArray<
674 crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW>,
675 8,
676 0x4,
677 > {
678 unsafe {
679 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x40usize))
680 }
681 }
682 #[inline(always)]
683 pub const fn p100pfs_by(
684 &self,
685 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
686 unsafe {
687 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
688 self._svd2pac_as_ptr().add(0x40usize),
689 )
690 }
691 }
692 #[inline(always)]
693 pub const fn p101pfs_by(
694 &self,
695 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
696 unsafe {
697 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
698 self._svd2pac_as_ptr().add(0x44usize),
699 )
700 }
701 }
702 #[inline(always)]
703 pub const fn p102pfs_by(
704 &self,
705 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
706 unsafe {
707 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
708 self._svd2pac_as_ptr().add(0x48usize),
709 )
710 }
711 }
712 #[inline(always)]
713 pub const fn p103pfs_by(
714 &self,
715 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
716 unsafe {
717 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
718 self._svd2pac_as_ptr().add(0x4cusize),
719 )
720 }
721 }
722 #[inline(always)]
723 pub const fn p104pfs_by(
724 &self,
725 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
726 unsafe {
727 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
728 self._svd2pac_as_ptr().add(0x50usize),
729 )
730 }
731 }
732 #[inline(always)]
733 pub const fn p105pfs_by(
734 &self,
735 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
736 unsafe {
737 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
738 self._svd2pac_as_ptr().add(0x54usize),
739 )
740 }
741 }
742 #[inline(always)]
743 pub const fn p106pfs_by(
744 &self,
745 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
746 unsafe {
747 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
748 self._svd2pac_as_ptr().add(0x58usize),
749 )
750 }
751 }
752 #[inline(always)]
753 pub const fn p107pfs_by(
754 &self,
755 ) -> &'static crate::common::Reg<self::P10PfsBy_SPEC, crate::common::RW> {
756 unsafe {
757 crate::common::Reg::<self::P10PfsBy_SPEC, crate::common::RW>::from_ptr(
758 self._svd2pac_as_ptr().add(0x5cusize),
759 )
760 }
761 }
762
763 #[doc = "Port 1%s Pin Function Select Register"]
764 #[inline(always)]
765 pub const fn p1pfs(
766 &self,
767 ) -> &'static crate::common::ClusterRegisterArray<
768 crate::common::Reg<self::P1Pfs_SPEC, crate::common::RW>,
769 4,
770 0x4,
771 > {
772 unsafe {
773 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x70usize))
774 }
775 }
776 #[inline(always)]
777 pub const fn p112pfs(
778 &self,
779 ) -> &'static crate::common::Reg<self::P1Pfs_SPEC, crate::common::RW> {
780 unsafe {
781 crate::common::Reg::<self::P1Pfs_SPEC, crate::common::RW>::from_ptr(
782 self._svd2pac_as_ptr().add(0x70usize),
783 )
784 }
785 }
786 #[inline(always)]
787 pub const fn p113pfs(
788 &self,
789 ) -> &'static crate::common::Reg<self::P1Pfs_SPEC, crate::common::RW> {
790 unsafe {
791 crate::common::Reg::<self::P1Pfs_SPEC, crate::common::RW>::from_ptr(
792 self._svd2pac_as_ptr().add(0x74usize),
793 )
794 }
795 }
796 #[inline(always)]
797 pub const fn p114pfs(
798 &self,
799 ) -> &'static crate::common::Reg<self::P1Pfs_SPEC, crate::common::RW> {
800 unsafe {
801 crate::common::Reg::<self::P1Pfs_SPEC, crate::common::RW>::from_ptr(
802 self._svd2pac_as_ptr().add(0x78usize),
803 )
804 }
805 }
806 #[inline(always)]
807 pub const fn p115pfs(
808 &self,
809 ) -> &'static crate::common::Reg<self::P1Pfs_SPEC, crate::common::RW> {
810 unsafe {
811 crate::common::Reg::<self::P1Pfs_SPEC, crate::common::RW>::from_ptr(
812 self._svd2pac_as_ptr().add(0x7cusize),
813 )
814 }
815 }
816
817 #[doc = "Port 1%s Pin Function Select Register"]
818 #[inline(always)]
819 pub const fn p1pfs_ha(
820 &self,
821 ) -> &'static crate::common::ClusterRegisterArray<
822 crate::common::Reg<self::P1PfsHa_SPEC, crate::common::RW>,
823 4,
824 0x4,
825 > {
826 unsafe {
827 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x70usize))
828 }
829 }
830 #[inline(always)]
831 pub const fn p112pfs_ha(
832 &self,
833 ) -> &'static crate::common::Reg<self::P1PfsHa_SPEC, crate::common::RW> {
834 unsafe {
835 crate::common::Reg::<self::P1PfsHa_SPEC, crate::common::RW>::from_ptr(
836 self._svd2pac_as_ptr().add(0x70usize),
837 )
838 }
839 }
840 #[inline(always)]
841 pub const fn p113pfs_ha(
842 &self,
843 ) -> &'static crate::common::Reg<self::P1PfsHa_SPEC, crate::common::RW> {
844 unsafe {
845 crate::common::Reg::<self::P1PfsHa_SPEC, crate::common::RW>::from_ptr(
846 self._svd2pac_as_ptr().add(0x74usize),
847 )
848 }
849 }
850 #[inline(always)]
851 pub const fn p114pfs_ha(
852 &self,
853 ) -> &'static crate::common::Reg<self::P1PfsHa_SPEC, crate::common::RW> {
854 unsafe {
855 crate::common::Reg::<self::P1PfsHa_SPEC, crate::common::RW>::from_ptr(
856 self._svd2pac_as_ptr().add(0x78usize),
857 )
858 }
859 }
860 #[inline(always)]
861 pub const fn p115pfs_ha(
862 &self,
863 ) -> &'static crate::common::Reg<self::P1PfsHa_SPEC, crate::common::RW> {
864 unsafe {
865 crate::common::Reg::<self::P1PfsHa_SPEC, crate::common::RW>::from_ptr(
866 self._svd2pac_as_ptr().add(0x7cusize),
867 )
868 }
869 }
870
871 #[doc = "Port 1%s Pin Function Select Register"]
872 #[inline(always)]
873 pub const fn p1pfs_by(
874 &self,
875 ) -> &'static crate::common::ClusterRegisterArray<
876 crate::common::Reg<self::P1PfsBy_SPEC, crate::common::RW>,
877 4,
878 0x4,
879 > {
880 unsafe {
881 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x70usize))
882 }
883 }
884 #[inline(always)]
885 pub const fn p112pfs_by(
886 &self,
887 ) -> &'static crate::common::Reg<self::P1PfsBy_SPEC, crate::common::RW> {
888 unsafe {
889 crate::common::Reg::<self::P1PfsBy_SPEC, crate::common::RW>::from_ptr(
890 self._svd2pac_as_ptr().add(0x70usize),
891 )
892 }
893 }
894 #[inline(always)]
895 pub const fn p113pfs_by(
896 &self,
897 ) -> &'static crate::common::Reg<self::P1PfsBy_SPEC, crate::common::RW> {
898 unsafe {
899 crate::common::Reg::<self::P1PfsBy_SPEC, crate::common::RW>::from_ptr(
900 self._svd2pac_as_ptr().add(0x74usize),
901 )
902 }
903 }
904 #[inline(always)]
905 pub const fn p114pfs_by(
906 &self,
907 ) -> &'static crate::common::Reg<self::P1PfsBy_SPEC, crate::common::RW> {
908 unsafe {
909 crate::common::Reg::<self::P1PfsBy_SPEC, crate::common::RW>::from_ptr(
910 self._svd2pac_as_ptr().add(0x78usize),
911 )
912 }
913 }
914 #[inline(always)]
915 pub const fn p115pfs_by(
916 &self,
917 ) -> &'static crate::common::Reg<self::P1PfsBy_SPEC, crate::common::RW> {
918 unsafe {
919 crate::common::Reg::<self::P1PfsBy_SPEC, crate::common::RW>::from_ptr(
920 self._svd2pac_as_ptr().add(0x7cusize),
921 )
922 }
923 }
924
925 #[doc = "Port 200 Pin Function Select Register"]
926 #[inline(always)]
927 pub const fn p200pfs(
928 &self,
929 ) -> &'static crate::common::Reg<self::P200Pfs_SPEC, crate::common::RW> {
930 unsafe {
931 crate::common::Reg::<self::P200Pfs_SPEC, crate::common::RW>::from_ptr(
932 self._svd2pac_as_ptr().add(128usize),
933 )
934 }
935 }
936
937 #[doc = "Port 200 Pin Function Select Register"]
938 #[inline(always)]
939 pub const fn p200pfs_ha(
940 &self,
941 ) -> &'static crate::common::Reg<self::P200PfsHa_SPEC, crate::common::RW> {
942 unsafe {
943 crate::common::Reg::<self::P200PfsHa_SPEC, crate::common::RW>::from_ptr(
944 self._svd2pac_as_ptr().add(128usize),
945 )
946 }
947 }
948
949 #[doc = "Port 200 Pin Function Select Register"]
950 #[inline(always)]
951 pub const fn p200pfs_by(
952 &self,
953 ) -> &'static crate::common::Reg<self::P200PfsBy_SPEC, crate::common::RW> {
954 unsafe {
955 crate::common::Reg::<self::P200PfsBy_SPEC, crate::common::RW>::from_ptr(
956 self._svd2pac_as_ptr().add(128usize),
957 )
958 }
959 }
960
961 #[doc = "Port 201 Pin Function Select Register"]
962 #[inline(always)]
963 pub const fn p201pfs(
964 &self,
965 ) -> &'static crate::common::Reg<self::P201Pfs_SPEC, crate::common::RW> {
966 unsafe {
967 crate::common::Reg::<self::P201Pfs_SPEC, crate::common::RW>::from_ptr(
968 self._svd2pac_as_ptr().add(132usize),
969 )
970 }
971 }
972
973 #[doc = "Port 201 Pin Function Select Register"]
974 #[inline(always)]
975 pub const fn p201pfs_ha(
976 &self,
977 ) -> &'static crate::common::Reg<self::P201PfsHa_SPEC, crate::common::RW> {
978 unsafe {
979 crate::common::Reg::<self::P201PfsHa_SPEC, crate::common::RW>::from_ptr(
980 self._svd2pac_as_ptr().add(132usize),
981 )
982 }
983 }
984
985 #[doc = "Port 201 Pin Function Select Register"]
986 #[inline(always)]
987 pub const fn p201pfs_by(
988 &self,
989 ) -> &'static crate::common::Reg<self::P201PfsBy_SPEC, crate::common::RW> {
990 unsafe {
991 crate::common::Reg::<self::P201PfsBy_SPEC, crate::common::RW>::from_ptr(
992 self._svd2pac_as_ptr().add(132usize),
993 )
994 }
995 }
996
997 #[doc = "Port 20%s Pin Function Select Register"]
998 #[inline(always)]
999 pub const fn p20pfs(
1000 &self,
1001 ) -> &'static crate::common::ClusterRegisterArray<
1002 crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW>,
1003 6,
1004 0x4,
1005 > {
1006 unsafe {
1007 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x88usize))
1008 }
1009 }
1010 #[inline(always)]
1011 pub const fn p202pfs(
1012 &self,
1013 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1014 unsafe {
1015 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1016 self._svd2pac_as_ptr().add(0x88usize),
1017 )
1018 }
1019 }
1020 #[inline(always)]
1021 pub const fn p203pfs(
1022 &self,
1023 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1024 unsafe {
1025 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1026 self._svd2pac_as_ptr().add(0x8cusize),
1027 )
1028 }
1029 }
1030 #[inline(always)]
1031 pub const fn p204pfs(
1032 &self,
1033 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1034 unsafe {
1035 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1036 self._svd2pac_as_ptr().add(0x90usize),
1037 )
1038 }
1039 }
1040 #[inline(always)]
1041 pub const fn p205pfs(
1042 &self,
1043 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1044 unsafe {
1045 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1046 self._svd2pac_as_ptr().add(0x94usize),
1047 )
1048 }
1049 }
1050 #[inline(always)]
1051 pub const fn p206pfs(
1052 &self,
1053 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1054 unsafe {
1055 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1056 self._svd2pac_as_ptr().add(0x98usize),
1057 )
1058 }
1059 }
1060 #[inline(always)]
1061 pub const fn p207pfs(
1062 &self,
1063 ) -> &'static crate::common::Reg<self::P20Pfs_SPEC, crate::common::RW> {
1064 unsafe {
1065 crate::common::Reg::<self::P20Pfs_SPEC, crate::common::RW>::from_ptr(
1066 self._svd2pac_as_ptr().add(0x9cusize),
1067 )
1068 }
1069 }
1070
1071 #[doc = "Port 20%s Pin Function Select Register"]
1072 #[inline(always)]
1073 pub const fn p20pfs_ha(
1074 &self,
1075 ) -> &'static crate::common::ClusterRegisterArray<
1076 crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW>,
1077 6,
1078 0x4,
1079 > {
1080 unsafe {
1081 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x88usize))
1082 }
1083 }
1084 #[inline(always)]
1085 pub const fn p202pfs_ha(
1086 &self,
1087 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1088 unsafe {
1089 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1090 self._svd2pac_as_ptr().add(0x88usize),
1091 )
1092 }
1093 }
1094 #[inline(always)]
1095 pub const fn p203pfs_ha(
1096 &self,
1097 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1098 unsafe {
1099 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1100 self._svd2pac_as_ptr().add(0x8cusize),
1101 )
1102 }
1103 }
1104 #[inline(always)]
1105 pub const fn p204pfs_ha(
1106 &self,
1107 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1108 unsafe {
1109 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1110 self._svd2pac_as_ptr().add(0x90usize),
1111 )
1112 }
1113 }
1114 #[inline(always)]
1115 pub const fn p205pfs_ha(
1116 &self,
1117 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1118 unsafe {
1119 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1120 self._svd2pac_as_ptr().add(0x94usize),
1121 )
1122 }
1123 }
1124 #[inline(always)]
1125 pub const fn p206pfs_ha(
1126 &self,
1127 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1128 unsafe {
1129 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1130 self._svd2pac_as_ptr().add(0x98usize),
1131 )
1132 }
1133 }
1134 #[inline(always)]
1135 pub const fn p207pfs_ha(
1136 &self,
1137 ) -> &'static crate::common::Reg<self::P20PfsHa_SPEC, crate::common::RW> {
1138 unsafe {
1139 crate::common::Reg::<self::P20PfsHa_SPEC, crate::common::RW>::from_ptr(
1140 self._svd2pac_as_ptr().add(0x9cusize),
1141 )
1142 }
1143 }
1144
1145 #[doc = "Port 20%s Pin Function Select Register"]
1146 #[inline(always)]
1147 pub const fn p20pfs_by(
1148 &self,
1149 ) -> &'static crate::common::ClusterRegisterArray<
1150 crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW>,
1151 6,
1152 0x4,
1153 > {
1154 unsafe {
1155 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x88usize))
1156 }
1157 }
1158 #[inline(always)]
1159 pub const fn p202pfs_by(
1160 &self,
1161 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1162 unsafe {
1163 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1164 self._svd2pac_as_ptr().add(0x88usize),
1165 )
1166 }
1167 }
1168 #[inline(always)]
1169 pub const fn p203pfs_by(
1170 &self,
1171 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1172 unsafe {
1173 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1174 self._svd2pac_as_ptr().add(0x8cusize),
1175 )
1176 }
1177 }
1178 #[inline(always)]
1179 pub const fn p204pfs_by(
1180 &self,
1181 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1182 unsafe {
1183 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1184 self._svd2pac_as_ptr().add(0x90usize),
1185 )
1186 }
1187 }
1188 #[inline(always)]
1189 pub const fn p205pfs_by(
1190 &self,
1191 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1192 unsafe {
1193 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1194 self._svd2pac_as_ptr().add(0x94usize),
1195 )
1196 }
1197 }
1198 #[inline(always)]
1199 pub const fn p206pfs_by(
1200 &self,
1201 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1202 unsafe {
1203 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1204 self._svd2pac_as_ptr().add(0x98usize),
1205 )
1206 }
1207 }
1208 #[inline(always)]
1209 pub const fn p207pfs_by(
1210 &self,
1211 ) -> &'static crate::common::Reg<self::P20PfsBy_SPEC, crate::common::RW> {
1212 unsafe {
1213 crate::common::Reg::<self::P20PfsBy_SPEC, crate::common::RW>::from_ptr(
1214 self._svd2pac_as_ptr().add(0x9cusize),
1215 )
1216 }
1217 }
1218
1219 #[doc = "Port 208 Pin Function Select Register"]
1220 #[inline(always)]
1221 pub const fn p208pfs(
1222 &self,
1223 ) -> &'static crate::common::Reg<self::P208Pfs_SPEC, crate::common::RW> {
1224 unsafe {
1225 crate::common::Reg::<self::P208Pfs_SPEC, crate::common::RW>::from_ptr(
1226 self._svd2pac_as_ptr().add(160usize),
1227 )
1228 }
1229 }
1230
1231 #[doc = "Port 208 Pin Function Select Register"]
1232 #[inline(always)]
1233 pub const fn p208pfs_ha(
1234 &self,
1235 ) -> &'static crate::common::Reg<self::P208PfsHa_SPEC, crate::common::RW> {
1236 unsafe {
1237 crate::common::Reg::<self::P208PfsHa_SPEC, crate::common::RW>::from_ptr(
1238 self._svd2pac_as_ptr().add(160usize),
1239 )
1240 }
1241 }
1242
1243 #[doc = "Port 208 Pin Function Select Register"]
1244 #[inline(always)]
1245 pub const fn p208pfs_by(
1246 &self,
1247 ) -> &'static crate::common::Reg<self::P208PfsBy_SPEC, crate::common::RW> {
1248 unsafe {
1249 crate::common::Reg::<self::P208PfsBy_SPEC, crate::common::RW>::from_ptr(
1250 self._svd2pac_as_ptr().add(160usize),
1251 )
1252 }
1253 }
1254
1255 #[doc = "Port 209 Pin Function Select Register"]
1256 #[inline(always)]
1257 pub const fn p209pfs(
1258 &self,
1259 ) -> &'static crate::common::Reg<self::P209Pfs_SPEC, crate::common::RW> {
1260 unsafe {
1261 crate::common::Reg::<self::P209Pfs_SPEC, crate::common::RW>::from_ptr(
1262 self._svd2pac_as_ptr().add(164usize),
1263 )
1264 }
1265 }
1266
1267 #[doc = "Port 209 Pin Function Select Register"]
1268 #[inline(always)]
1269 pub const fn p209pfs_ha(
1270 &self,
1271 ) -> &'static crate::common::Reg<self::P209PfsHa_SPEC, crate::common::RW> {
1272 unsafe {
1273 crate::common::Reg::<self::P209PfsHa_SPEC, crate::common::RW>::from_ptr(
1274 self._svd2pac_as_ptr().add(164usize),
1275 )
1276 }
1277 }
1278
1279 #[doc = "Port 209 Pin Function Select Register"]
1280 #[inline(always)]
1281 pub const fn p209pfs_by(
1282 &self,
1283 ) -> &'static crate::common::Reg<self::P209PfsBy_SPEC, crate::common::RW> {
1284 unsafe {
1285 crate::common::Reg::<self::P209PfsBy_SPEC, crate::common::RW>::from_ptr(
1286 self._svd2pac_as_ptr().add(164usize),
1287 )
1288 }
1289 }
1290
1291 #[doc = "Port 210 Pin Function Select Register"]
1292 #[inline(always)]
1293 pub const fn p210pfs(
1294 &self,
1295 ) -> &'static crate::common::Reg<self::P210Pfs_SPEC, crate::common::RW> {
1296 unsafe {
1297 crate::common::Reg::<self::P210Pfs_SPEC, crate::common::RW>::from_ptr(
1298 self._svd2pac_as_ptr().add(168usize),
1299 )
1300 }
1301 }
1302
1303 #[doc = "Port 210 Pin Function Select Register"]
1304 #[inline(always)]
1305 pub const fn p210pfs_ha(
1306 &self,
1307 ) -> &'static crate::common::Reg<self::P210PfsHa_SPEC, crate::common::RW> {
1308 unsafe {
1309 crate::common::Reg::<self::P210PfsHa_SPEC, crate::common::RW>::from_ptr(
1310 self._svd2pac_as_ptr().add(168usize),
1311 )
1312 }
1313 }
1314
1315 #[doc = "Port 210 Pin Function Select Register"]
1316 #[inline(always)]
1317 pub const fn p210pfs_by(
1318 &self,
1319 ) -> &'static crate::common::Reg<self::P210PfsBy_SPEC, crate::common::RW> {
1320 unsafe {
1321 crate::common::Reg::<self::P210PfsBy_SPEC, crate::common::RW>::from_ptr(
1322 self._svd2pac_as_ptr().add(168usize),
1323 )
1324 }
1325 }
1326
1327 #[doc = "Port 211 Pin Function Select Register"]
1328 #[inline(always)]
1329 pub const fn p211pfs(
1330 &self,
1331 ) -> &'static crate::common::Reg<self::P211Pfs_SPEC, crate::common::RW> {
1332 unsafe {
1333 crate::common::Reg::<self::P211Pfs_SPEC, crate::common::RW>::from_ptr(
1334 self._svd2pac_as_ptr().add(172usize),
1335 )
1336 }
1337 }
1338
1339 #[doc = "Port 211 Pin Function Select Register"]
1340 #[inline(always)]
1341 pub const fn p211pfs_ha(
1342 &self,
1343 ) -> &'static crate::common::Reg<self::P211PfsHa_SPEC, crate::common::RW> {
1344 unsafe {
1345 crate::common::Reg::<self::P211PfsHa_SPEC, crate::common::RW>::from_ptr(
1346 self._svd2pac_as_ptr().add(172usize),
1347 )
1348 }
1349 }
1350
1351 #[doc = "Port 211 Pin Function Select Register"]
1352 #[inline(always)]
1353 pub const fn p211pfs_by(
1354 &self,
1355 ) -> &'static crate::common::Reg<self::P211PfsBy_SPEC, crate::common::RW> {
1356 unsafe {
1357 crate::common::Reg::<self::P211PfsBy_SPEC, crate::common::RW>::from_ptr(
1358 self._svd2pac_as_ptr().add(172usize),
1359 )
1360 }
1361 }
1362
1363 #[doc = "Port 2%s Pin Function Select Register"]
1364 #[inline(always)]
1365 pub const fn p2pfs(
1366 &self,
1367 ) -> &'static crate::common::ClusterRegisterArray<
1368 crate::common::Reg<self::P2Pfs_SPEC, crate::common::RW>,
1369 2,
1370 0x4,
1371 > {
1372 unsafe {
1373 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xb0usize))
1374 }
1375 }
1376 #[inline(always)]
1377 pub const fn p212pfs(
1378 &self,
1379 ) -> &'static crate::common::Reg<self::P2Pfs_SPEC, crate::common::RW> {
1380 unsafe {
1381 crate::common::Reg::<self::P2Pfs_SPEC, crate::common::RW>::from_ptr(
1382 self._svd2pac_as_ptr().add(0xb0usize),
1383 )
1384 }
1385 }
1386 #[inline(always)]
1387 pub const fn p213pfs(
1388 &self,
1389 ) -> &'static crate::common::Reg<self::P2Pfs_SPEC, crate::common::RW> {
1390 unsafe {
1391 crate::common::Reg::<self::P2Pfs_SPEC, crate::common::RW>::from_ptr(
1392 self._svd2pac_as_ptr().add(0xb4usize),
1393 )
1394 }
1395 }
1396
1397 #[doc = "Port 2%s Pin Function Select Register"]
1398 #[inline(always)]
1399 pub const fn p2pfs_ha(
1400 &self,
1401 ) -> &'static crate::common::ClusterRegisterArray<
1402 crate::common::Reg<self::P2PfsHa_SPEC, crate::common::RW>,
1403 2,
1404 0x4,
1405 > {
1406 unsafe {
1407 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xb0usize))
1408 }
1409 }
1410 #[inline(always)]
1411 pub const fn p212pfs_ha(
1412 &self,
1413 ) -> &'static crate::common::Reg<self::P2PfsHa_SPEC, crate::common::RW> {
1414 unsafe {
1415 crate::common::Reg::<self::P2PfsHa_SPEC, crate::common::RW>::from_ptr(
1416 self._svd2pac_as_ptr().add(0xb0usize),
1417 )
1418 }
1419 }
1420 #[inline(always)]
1421 pub const fn p213pfs_ha(
1422 &self,
1423 ) -> &'static crate::common::Reg<self::P2PfsHa_SPEC, crate::common::RW> {
1424 unsafe {
1425 crate::common::Reg::<self::P2PfsHa_SPEC, crate::common::RW>::from_ptr(
1426 self._svd2pac_as_ptr().add(0xb4usize),
1427 )
1428 }
1429 }
1430
1431 #[doc = "Port 2%s Pin Function Select Register"]
1432 #[inline(always)]
1433 pub const fn p2pfs_by(
1434 &self,
1435 ) -> &'static crate::common::ClusterRegisterArray<
1436 crate::common::Reg<self::P2PfsBy_SPEC, crate::common::RW>,
1437 2,
1438 0x4,
1439 > {
1440 unsafe {
1441 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xb0usize))
1442 }
1443 }
1444 #[inline(always)]
1445 pub const fn p212pfs_by(
1446 &self,
1447 ) -> &'static crate::common::Reg<self::P2PfsBy_SPEC, crate::common::RW> {
1448 unsafe {
1449 crate::common::Reg::<self::P2PfsBy_SPEC, crate::common::RW>::from_ptr(
1450 self._svd2pac_as_ptr().add(0xb0usize),
1451 )
1452 }
1453 }
1454 #[inline(always)]
1455 pub const fn p213pfs_by(
1456 &self,
1457 ) -> &'static crate::common::Reg<self::P2PfsBy_SPEC, crate::common::RW> {
1458 unsafe {
1459 crate::common::Reg::<self::P2PfsBy_SPEC, crate::common::RW>::from_ptr(
1460 self._svd2pac_as_ptr().add(0xb4usize),
1461 )
1462 }
1463 }
1464
1465 #[doc = "Port 30%s Pin Function Select Register"]
1466 #[inline(always)]
1467 pub const fn p30pfs(
1468 &self,
1469 ) -> &'static crate::common::ClusterRegisterArray<
1470 crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW>,
1471 10,
1472 0x4,
1473 > {
1474 unsafe {
1475 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xc0usize))
1476 }
1477 }
1478 #[inline(always)]
1479 pub const fn p300pfs(
1480 &self,
1481 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1482 unsafe {
1483 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1484 self._svd2pac_as_ptr().add(0xc0usize),
1485 )
1486 }
1487 }
1488 #[inline(always)]
1489 pub const fn p301pfs(
1490 &self,
1491 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1492 unsafe {
1493 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1494 self._svd2pac_as_ptr().add(0xc4usize),
1495 )
1496 }
1497 }
1498 #[inline(always)]
1499 pub const fn p302pfs(
1500 &self,
1501 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1502 unsafe {
1503 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1504 self._svd2pac_as_ptr().add(0xc8usize),
1505 )
1506 }
1507 }
1508 #[inline(always)]
1509 pub const fn p303pfs(
1510 &self,
1511 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1512 unsafe {
1513 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1514 self._svd2pac_as_ptr().add(0xccusize),
1515 )
1516 }
1517 }
1518 #[inline(always)]
1519 pub const fn p304pfs(
1520 &self,
1521 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1522 unsafe {
1523 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1524 self._svd2pac_as_ptr().add(0xd0usize),
1525 )
1526 }
1527 }
1528 #[inline(always)]
1529 pub const fn p305pfs(
1530 &self,
1531 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1532 unsafe {
1533 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1534 self._svd2pac_as_ptr().add(0xd4usize),
1535 )
1536 }
1537 }
1538 #[inline(always)]
1539 pub const fn p306pfs(
1540 &self,
1541 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1542 unsafe {
1543 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1544 self._svd2pac_as_ptr().add(0xd8usize),
1545 )
1546 }
1547 }
1548 #[inline(always)]
1549 pub const fn p307pfs(
1550 &self,
1551 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1552 unsafe {
1553 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1554 self._svd2pac_as_ptr().add(0xdcusize),
1555 )
1556 }
1557 }
1558 #[inline(always)]
1559 pub const fn p308pfs(
1560 &self,
1561 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1562 unsafe {
1563 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1564 self._svd2pac_as_ptr().add(0xe0usize),
1565 )
1566 }
1567 }
1568 #[inline(always)]
1569 pub const fn p309pfs(
1570 &self,
1571 ) -> &'static crate::common::Reg<self::P30Pfs_SPEC, crate::common::RW> {
1572 unsafe {
1573 crate::common::Reg::<self::P30Pfs_SPEC, crate::common::RW>::from_ptr(
1574 self._svd2pac_as_ptr().add(0xe4usize),
1575 )
1576 }
1577 }
1578
1579 #[doc = "Port 30%s Pin Function Select Register"]
1580 #[inline(always)]
1581 pub const fn p30pfs_ha(
1582 &self,
1583 ) -> &'static crate::common::ClusterRegisterArray<
1584 crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW>,
1585 10,
1586 0x4,
1587 > {
1588 unsafe {
1589 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xc0usize))
1590 }
1591 }
1592 #[inline(always)]
1593 pub const fn p300pfs_ha(
1594 &self,
1595 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1596 unsafe {
1597 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1598 self._svd2pac_as_ptr().add(0xc0usize),
1599 )
1600 }
1601 }
1602 #[inline(always)]
1603 pub const fn p301pfs_ha(
1604 &self,
1605 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1606 unsafe {
1607 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1608 self._svd2pac_as_ptr().add(0xc4usize),
1609 )
1610 }
1611 }
1612 #[inline(always)]
1613 pub const fn p302pfs_ha(
1614 &self,
1615 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1616 unsafe {
1617 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1618 self._svd2pac_as_ptr().add(0xc8usize),
1619 )
1620 }
1621 }
1622 #[inline(always)]
1623 pub const fn p303pfs_ha(
1624 &self,
1625 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1626 unsafe {
1627 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1628 self._svd2pac_as_ptr().add(0xccusize),
1629 )
1630 }
1631 }
1632 #[inline(always)]
1633 pub const fn p304pfs_ha(
1634 &self,
1635 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1636 unsafe {
1637 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1638 self._svd2pac_as_ptr().add(0xd0usize),
1639 )
1640 }
1641 }
1642 #[inline(always)]
1643 pub const fn p305pfs_ha(
1644 &self,
1645 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1646 unsafe {
1647 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1648 self._svd2pac_as_ptr().add(0xd4usize),
1649 )
1650 }
1651 }
1652 #[inline(always)]
1653 pub const fn p306pfs_ha(
1654 &self,
1655 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1656 unsafe {
1657 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1658 self._svd2pac_as_ptr().add(0xd8usize),
1659 )
1660 }
1661 }
1662 #[inline(always)]
1663 pub const fn p307pfs_ha(
1664 &self,
1665 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1666 unsafe {
1667 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1668 self._svd2pac_as_ptr().add(0xdcusize),
1669 )
1670 }
1671 }
1672 #[inline(always)]
1673 pub const fn p308pfs_ha(
1674 &self,
1675 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1676 unsafe {
1677 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1678 self._svd2pac_as_ptr().add(0xe0usize),
1679 )
1680 }
1681 }
1682 #[inline(always)]
1683 pub const fn p309pfs_ha(
1684 &self,
1685 ) -> &'static crate::common::Reg<self::P30PfsHa_SPEC, crate::common::RW> {
1686 unsafe {
1687 crate::common::Reg::<self::P30PfsHa_SPEC, crate::common::RW>::from_ptr(
1688 self._svd2pac_as_ptr().add(0xe4usize),
1689 )
1690 }
1691 }
1692
1693 #[doc = "Port 30%s Pin Function Select Register"]
1694 #[inline(always)]
1695 pub const fn p30pfs_by(
1696 &self,
1697 ) -> &'static crate::common::ClusterRegisterArray<
1698 crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW>,
1699 10,
1700 0x4,
1701 > {
1702 unsafe {
1703 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xc0usize))
1704 }
1705 }
1706 #[inline(always)]
1707 pub const fn p300pfs_by(
1708 &self,
1709 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1710 unsafe {
1711 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1712 self._svd2pac_as_ptr().add(0xc0usize),
1713 )
1714 }
1715 }
1716 #[inline(always)]
1717 pub const fn p301pfs_by(
1718 &self,
1719 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1720 unsafe {
1721 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1722 self._svd2pac_as_ptr().add(0xc4usize),
1723 )
1724 }
1725 }
1726 #[inline(always)]
1727 pub const fn p302pfs_by(
1728 &self,
1729 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1730 unsafe {
1731 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1732 self._svd2pac_as_ptr().add(0xc8usize),
1733 )
1734 }
1735 }
1736 #[inline(always)]
1737 pub const fn p303pfs_by(
1738 &self,
1739 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1740 unsafe {
1741 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1742 self._svd2pac_as_ptr().add(0xccusize),
1743 )
1744 }
1745 }
1746 #[inline(always)]
1747 pub const fn p304pfs_by(
1748 &self,
1749 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1750 unsafe {
1751 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1752 self._svd2pac_as_ptr().add(0xd0usize),
1753 )
1754 }
1755 }
1756 #[inline(always)]
1757 pub const fn p305pfs_by(
1758 &self,
1759 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1760 unsafe {
1761 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1762 self._svd2pac_as_ptr().add(0xd4usize),
1763 )
1764 }
1765 }
1766 #[inline(always)]
1767 pub const fn p306pfs_by(
1768 &self,
1769 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1770 unsafe {
1771 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1772 self._svd2pac_as_ptr().add(0xd8usize),
1773 )
1774 }
1775 }
1776 #[inline(always)]
1777 pub const fn p307pfs_by(
1778 &self,
1779 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1780 unsafe {
1781 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1782 self._svd2pac_as_ptr().add(0xdcusize),
1783 )
1784 }
1785 }
1786 #[inline(always)]
1787 pub const fn p308pfs_by(
1788 &self,
1789 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1790 unsafe {
1791 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1792 self._svd2pac_as_ptr().add(0xe0usize),
1793 )
1794 }
1795 }
1796 #[inline(always)]
1797 pub const fn p309pfs_by(
1798 &self,
1799 ) -> &'static crate::common::Reg<self::P30PfsBy_SPEC, crate::common::RW> {
1800 unsafe {
1801 crate::common::Reg::<self::P30PfsBy_SPEC, crate::common::RW>::from_ptr(
1802 self._svd2pac_as_ptr().add(0xe4usize),
1803 )
1804 }
1805 }
1806
1807 #[doc = "Port 3%s Pin Function Select Register"]
1808 #[inline(always)]
1809 pub const fn p3pfs(
1810 &self,
1811 ) -> &'static crate::common::ClusterRegisterArray<
1812 crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW>,
1813 6,
1814 0x4,
1815 > {
1816 unsafe {
1817 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xe8usize))
1818 }
1819 }
1820 #[inline(always)]
1821 pub const fn p310pfs(
1822 &self,
1823 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1824 unsafe {
1825 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1826 self._svd2pac_as_ptr().add(0xe8usize),
1827 )
1828 }
1829 }
1830 #[inline(always)]
1831 pub const fn p311pfs(
1832 &self,
1833 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1834 unsafe {
1835 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1836 self._svd2pac_as_ptr().add(0xecusize),
1837 )
1838 }
1839 }
1840 #[inline(always)]
1841 pub const fn p312pfs(
1842 &self,
1843 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1844 unsafe {
1845 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1846 self._svd2pac_as_ptr().add(0xf0usize),
1847 )
1848 }
1849 }
1850 #[inline(always)]
1851 pub const fn p313pfs(
1852 &self,
1853 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1854 unsafe {
1855 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1856 self._svd2pac_as_ptr().add(0xf4usize),
1857 )
1858 }
1859 }
1860 #[inline(always)]
1861 pub const fn p314pfs(
1862 &self,
1863 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1864 unsafe {
1865 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1866 self._svd2pac_as_ptr().add(0xf8usize),
1867 )
1868 }
1869 }
1870 #[inline(always)]
1871 pub const fn p315pfs(
1872 &self,
1873 ) -> &'static crate::common::Reg<self::P3Pfs_SPEC, crate::common::RW> {
1874 unsafe {
1875 crate::common::Reg::<self::P3Pfs_SPEC, crate::common::RW>::from_ptr(
1876 self._svd2pac_as_ptr().add(0xfcusize),
1877 )
1878 }
1879 }
1880
1881 #[doc = "Port 3%s Pin Function Select Register"]
1882 #[inline(always)]
1883 pub const fn p3pfs_ha(
1884 &self,
1885 ) -> &'static crate::common::ClusterRegisterArray<
1886 crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW>,
1887 6,
1888 0x4,
1889 > {
1890 unsafe {
1891 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xe8usize))
1892 }
1893 }
1894 #[inline(always)]
1895 pub const fn p310pfs_ha(
1896 &self,
1897 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1898 unsafe {
1899 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1900 self._svd2pac_as_ptr().add(0xe8usize),
1901 )
1902 }
1903 }
1904 #[inline(always)]
1905 pub const fn p311pfs_ha(
1906 &self,
1907 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1908 unsafe {
1909 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1910 self._svd2pac_as_ptr().add(0xecusize),
1911 )
1912 }
1913 }
1914 #[inline(always)]
1915 pub const fn p312pfs_ha(
1916 &self,
1917 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1918 unsafe {
1919 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1920 self._svd2pac_as_ptr().add(0xf0usize),
1921 )
1922 }
1923 }
1924 #[inline(always)]
1925 pub const fn p313pfs_ha(
1926 &self,
1927 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1928 unsafe {
1929 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1930 self._svd2pac_as_ptr().add(0xf4usize),
1931 )
1932 }
1933 }
1934 #[inline(always)]
1935 pub const fn p314pfs_ha(
1936 &self,
1937 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1938 unsafe {
1939 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1940 self._svd2pac_as_ptr().add(0xf8usize),
1941 )
1942 }
1943 }
1944 #[inline(always)]
1945 pub const fn p315pfs_ha(
1946 &self,
1947 ) -> &'static crate::common::Reg<self::P3PfsHa_SPEC, crate::common::RW> {
1948 unsafe {
1949 crate::common::Reg::<self::P3PfsHa_SPEC, crate::common::RW>::from_ptr(
1950 self._svd2pac_as_ptr().add(0xfcusize),
1951 )
1952 }
1953 }
1954
1955 #[doc = "Port 3%s Pin Function Select Register"]
1956 #[inline(always)]
1957 pub const fn p3pfs_by(
1958 &self,
1959 ) -> &'static crate::common::ClusterRegisterArray<
1960 crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW>,
1961 6,
1962 0x4,
1963 > {
1964 unsafe {
1965 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xe8usize))
1966 }
1967 }
1968 #[inline(always)]
1969 pub const fn p310pfs_by(
1970 &self,
1971 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
1972 unsafe {
1973 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
1974 self._svd2pac_as_ptr().add(0xe8usize),
1975 )
1976 }
1977 }
1978 #[inline(always)]
1979 pub const fn p311pfs_by(
1980 &self,
1981 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
1982 unsafe {
1983 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
1984 self._svd2pac_as_ptr().add(0xecusize),
1985 )
1986 }
1987 }
1988 #[inline(always)]
1989 pub const fn p312pfs_by(
1990 &self,
1991 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
1992 unsafe {
1993 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
1994 self._svd2pac_as_ptr().add(0xf0usize),
1995 )
1996 }
1997 }
1998 #[inline(always)]
1999 pub const fn p313pfs_by(
2000 &self,
2001 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
2002 unsafe {
2003 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
2004 self._svd2pac_as_ptr().add(0xf4usize),
2005 )
2006 }
2007 }
2008 #[inline(always)]
2009 pub const fn p314pfs_by(
2010 &self,
2011 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
2012 unsafe {
2013 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
2014 self._svd2pac_as_ptr().add(0xf8usize),
2015 )
2016 }
2017 }
2018 #[inline(always)]
2019 pub const fn p315pfs_by(
2020 &self,
2021 ) -> &'static crate::common::Reg<self::P3PfsBy_SPEC, crate::common::RW> {
2022 unsafe {
2023 crate::common::Reg::<self::P3PfsBy_SPEC, crate::common::RW>::from_ptr(
2024 self._svd2pac_as_ptr().add(0xfcusize),
2025 )
2026 }
2027 }
2028
2029 #[doc = "Port 40%s Pin Function Select Register"]
2030 #[inline(always)]
2031 pub const fn p40pfs(
2032 &self,
2033 ) -> &'static crate::common::ClusterRegisterArray<
2034 crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW>,
2035 10,
2036 0x4,
2037 > {
2038 unsafe {
2039 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x100usize))
2040 }
2041 }
2042 #[inline(always)]
2043 pub const fn p400pfs(
2044 &self,
2045 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2046 unsafe {
2047 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2048 self._svd2pac_as_ptr().add(0x100usize),
2049 )
2050 }
2051 }
2052 #[inline(always)]
2053 pub const fn p401pfs(
2054 &self,
2055 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2056 unsafe {
2057 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2058 self._svd2pac_as_ptr().add(0x104usize),
2059 )
2060 }
2061 }
2062 #[inline(always)]
2063 pub const fn p402pfs(
2064 &self,
2065 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2066 unsafe {
2067 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2068 self._svd2pac_as_ptr().add(0x108usize),
2069 )
2070 }
2071 }
2072 #[inline(always)]
2073 pub const fn p403pfs(
2074 &self,
2075 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2076 unsafe {
2077 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2078 self._svd2pac_as_ptr().add(0x10cusize),
2079 )
2080 }
2081 }
2082 #[inline(always)]
2083 pub const fn p404pfs(
2084 &self,
2085 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2086 unsafe {
2087 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2088 self._svd2pac_as_ptr().add(0x110usize),
2089 )
2090 }
2091 }
2092 #[inline(always)]
2093 pub const fn p405pfs(
2094 &self,
2095 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2096 unsafe {
2097 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2098 self._svd2pac_as_ptr().add(0x114usize),
2099 )
2100 }
2101 }
2102 #[inline(always)]
2103 pub const fn p406pfs(
2104 &self,
2105 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2106 unsafe {
2107 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2108 self._svd2pac_as_ptr().add(0x118usize),
2109 )
2110 }
2111 }
2112 #[inline(always)]
2113 pub const fn p407pfs(
2114 &self,
2115 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2116 unsafe {
2117 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2118 self._svd2pac_as_ptr().add(0x11cusize),
2119 )
2120 }
2121 }
2122 #[inline(always)]
2123 pub const fn p408pfs(
2124 &self,
2125 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2126 unsafe {
2127 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2128 self._svd2pac_as_ptr().add(0x120usize),
2129 )
2130 }
2131 }
2132 #[inline(always)]
2133 pub const fn p409pfs(
2134 &self,
2135 ) -> &'static crate::common::Reg<self::P40Pfs_SPEC, crate::common::RW> {
2136 unsafe {
2137 crate::common::Reg::<self::P40Pfs_SPEC, crate::common::RW>::from_ptr(
2138 self._svd2pac_as_ptr().add(0x124usize),
2139 )
2140 }
2141 }
2142
2143 #[doc = "Port 40%s Pin Function Select Register"]
2144 #[inline(always)]
2145 pub const fn p40pfs_ha(
2146 &self,
2147 ) -> &'static crate::common::ClusterRegisterArray<
2148 crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW>,
2149 10,
2150 0x4,
2151 > {
2152 unsafe {
2153 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x100usize))
2154 }
2155 }
2156 #[inline(always)]
2157 pub const fn p400pfs_ha(
2158 &self,
2159 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2160 unsafe {
2161 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2162 self._svd2pac_as_ptr().add(0x100usize),
2163 )
2164 }
2165 }
2166 #[inline(always)]
2167 pub const fn p401pfs_ha(
2168 &self,
2169 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2170 unsafe {
2171 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2172 self._svd2pac_as_ptr().add(0x104usize),
2173 )
2174 }
2175 }
2176 #[inline(always)]
2177 pub const fn p402pfs_ha(
2178 &self,
2179 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2180 unsafe {
2181 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2182 self._svd2pac_as_ptr().add(0x108usize),
2183 )
2184 }
2185 }
2186 #[inline(always)]
2187 pub const fn p403pfs_ha(
2188 &self,
2189 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2190 unsafe {
2191 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2192 self._svd2pac_as_ptr().add(0x10cusize),
2193 )
2194 }
2195 }
2196 #[inline(always)]
2197 pub const fn p404pfs_ha(
2198 &self,
2199 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2200 unsafe {
2201 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2202 self._svd2pac_as_ptr().add(0x110usize),
2203 )
2204 }
2205 }
2206 #[inline(always)]
2207 pub const fn p405pfs_ha(
2208 &self,
2209 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2210 unsafe {
2211 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2212 self._svd2pac_as_ptr().add(0x114usize),
2213 )
2214 }
2215 }
2216 #[inline(always)]
2217 pub const fn p406pfs_ha(
2218 &self,
2219 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2220 unsafe {
2221 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2222 self._svd2pac_as_ptr().add(0x118usize),
2223 )
2224 }
2225 }
2226 #[inline(always)]
2227 pub const fn p407pfs_ha(
2228 &self,
2229 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2230 unsafe {
2231 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2232 self._svd2pac_as_ptr().add(0x11cusize),
2233 )
2234 }
2235 }
2236 #[inline(always)]
2237 pub const fn p408pfs_ha(
2238 &self,
2239 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2240 unsafe {
2241 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2242 self._svd2pac_as_ptr().add(0x120usize),
2243 )
2244 }
2245 }
2246 #[inline(always)]
2247 pub const fn p409pfs_ha(
2248 &self,
2249 ) -> &'static crate::common::Reg<self::P40PfsHa_SPEC, crate::common::RW> {
2250 unsafe {
2251 crate::common::Reg::<self::P40PfsHa_SPEC, crate::common::RW>::from_ptr(
2252 self._svd2pac_as_ptr().add(0x124usize),
2253 )
2254 }
2255 }
2256
2257 #[doc = "Port 40%s Pin Function Select Register"]
2258 #[inline(always)]
2259 pub const fn p40pfs_by(
2260 &self,
2261 ) -> &'static crate::common::ClusterRegisterArray<
2262 crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW>,
2263 10,
2264 0x4,
2265 > {
2266 unsafe {
2267 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x100usize))
2268 }
2269 }
2270 #[inline(always)]
2271 pub const fn p400pfs_by(
2272 &self,
2273 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2274 unsafe {
2275 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2276 self._svd2pac_as_ptr().add(0x100usize),
2277 )
2278 }
2279 }
2280 #[inline(always)]
2281 pub const fn p401pfs_by(
2282 &self,
2283 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2284 unsafe {
2285 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2286 self._svd2pac_as_ptr().add(0x104usize),
2287 )
2288 }
2289 }
2290 #[inline(always)]
2291 pub const fn p402pfs_by(
2292 &self,
2293 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2294 unsafe {
2295 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2296 self._svd2pac_as_ptr().add(0x108usize),
2297 )
2298 }
2299 }
2300 #[inline(always)]
2301 pub const fn p403pfs_by(
2302 &self,
2303 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2304 unsafe {
2305 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2306 self._svd2pac_as_ptr().add(0x10cusize),
2307 )
2308 }
2309 }
2310 #[inline(always)]
2311 pub const fn p404pfs_by(
2312 &self,
2313 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2314 unsafe {
2315 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2316 self._svd2pac_as_ptr().add(0x110usize),
2317 )
2318 }
2319 }
2320 #[inline(always)]
2321 pub const fn p405pfs_by(
2322 &self,
2323 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2324 unsafe {
2325 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2326 self._svd2pac_as_ptr().add(0x114usize),
2327 )
2328 }
2329 }
2330 #[inline(always)]
2331 pub const fn p406pfs_by(
2332 &self,
2333 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2334 unsafe {
2335 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2336 self._svd2pac_as_ptr().add(0x118usize),
2337 )
2338 }
2339 }
2340 #[inline(always)]
2341 pub const fn p407pfs_by(
2342 &self,
2343 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2344 unsafe {
2345 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2346 self._svd2pac_as_ptr().add(0x11cusize),
2347 )
2348 }
2349 }
2350 #[inline(always)]
2351 pub const fn p408pfs_by(
2352 &self,
2353 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2354 unsafe {
2355 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2356 self._svd2pac_as_ptr().add(0x120usize),
2357 )
2358 }
2359 }
2360 #[inline(always)]
2361 pub const fn p409pfs_by(
2362 &self,
2363 ) -> &'static crate::common::Reg<self::P40PfsBy_SPEC, crate::common::RW> {
2364 unsafe {
2365 crate::common::Reg::<self::P40PfsBy_SPEC, crate::common::RW>::from_ptr(
2366 self._svd2pac_as_ptr().add(0x124usize),
2367 )
2368 }
2369 }
2370
2371 #[doc = "Port 4%s Pin Function Select Register"]
2372 #[inline(always)]
2373 pub const fn p4pfs(
2374 &self,
2375 ) -> &'static crate::common::ClusterRegisterArray<
2376 crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW>,
2377 6,
2378 0x4,
2379 > {
2380 unsafe {
2381 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x128usize))
2382 }
2383 }
2384 #[inline(always)]
2385 pub const fn p410pfs(
2386 &self,
2387 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2388 unsafe {
2389 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2390 self._svd2pac_as_ptr().add(0x128usize),
2391 )
2392 }
2393 }
2394 #[inline(always)]
2395 pub const fn p411pfs(
2396 &self,
2397 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2398 unsafe {
2399 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2400 self._svd2pac_as_ptr().add(0x12cusize),
2401 )
2402 }
2403 }
2404 #[inline(always)]
2405 pub const fn p412pfs(
2406 &self,
2407 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2408 unsafe {
2409 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2410 self._svd2pac_as_ptr().add(0x130usize),
2411 )
2412 }
2413 }
2414 #[inline(always)]
2415 pub const fn p413pfs(
2416 &self,
2417 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2418 unsafe {
2419 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2420 self._svd2pac_as_ptr().add(0x134usize),
2421 )
2422 }
2423 }
2424 #[inline(always)]
2425 pub const fn p414pfs(
2426 &self,
2427 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2428 unsafe {
2429 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2430 self._svd2pac_as_ptr().add(0x138usize),
2431 )
2432 }
2433 }
2434 #[inline(always)]
2435 pub const fn p415pfs(
2436 &self,
2437 ) -> &'static crate::common::Reg<self::P4Pfs_SPEC, crate::common::RW> {
2438 unsafe {
2439 crate::common::Reg::<self::P4Pfs_SPEC, crate::common::RW>::from_ptr(
2440 self._svd2pac_as_ptr().add(0x13cusize),
2441 )
2442 }
2443 }
2444
2445 #[doc = "Port 4%s Pin Function Select Register"]
2446 #[inline(always)]
2447 pub const fn p4pfs_ha(
2448 &self,
2449 ) -> &'static crate::common::ClusterRegisterArray<
2450 crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW>,
2451 6,
2452 0x4,
2453 > {
2454 unsafe {
2455 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x128usize))
2456 }
2457 }
2458 #[inline(always)]
2459 pub const fn p410pfs_ha(
2460 &self,
2461 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2462 unsafe {
2463 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2464 self._svd2pac_as_ptr().add(0x128usize),
2465 )
2466 }
2467 }
2468 #[inline(always)]
2469 pub const fn p411pfs_ha(
2470 &self,
2471 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2472 unsafe {
2473 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2474 self._svd2pac_as_ptr().add(0x12cusize),
2475 )
2476 }
2477 }
2478 #[inline(always)]
2479 pub const fn p412pfs_ha(
2480 &self,
2481 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2482 unsafe {
2483 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2484 self._svd2pac_as_ptr().add(0x130usize),
2485 )
2486 }
2487 }
2488 #[inline(always)]
2489 pub const fn p413pfs_ha(
2490 &self,
2491 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2492 unsafe {
2493 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2494 self._svd2pac_as_ptr().add(0x134usize),
2495 )
2496 }
2497 }
2498 #[inline(always)]
2499 pub const fn p414pfs_ha(
2500 &self,
2501 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2502 unsafe {
2503 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2504 self._svd2pac_as_ptr().add(0x138usize),
2505 )
2506 }
2507 }
2508 #[inline(always)]
2509 pub const fn p415pfs_ha(
2510 &self,
2511 ) -> &'static crate::common::Reg<self::P4PfsHa_SPEC, crate::common::RW> {
2512 unsafe {
2513 crate::common::Reg::<self::P4PfsHa_SPEC, crate::common::RW>::from_ptr(
2514 self._svd2pac_as_ptr().add(0x13cusize),
2515 )
2516 }
2517 }
2518
2519 #[doc = "Port 4%s Pin Function Select Register"]
2520 #[inline(always)]
2521 pub const fn p4pfs_by(
2522 &self,
2523 ) -> &'static crate::common::ClusterRegisterArray<
2524 crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW>,
2525 6,
2526 0x4,
2527 > {
2528 unsafe {
2529 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x128usize))
2530 }
2531 }
2532 #[inline(always)]
2533 pub const fn p410pfs_by(
2534 &self,
2535 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2536 unsafe {
2537 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2538 self._svd2pac_as_ptr().add(0x128usize),
2539 )
2540 }
2541 }
2542 #[inline(always)]
2543 pub const fn p411pfs_by(
2544 &self,
2545 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2546 unsafe {
2547 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2548 self._svd2pac_as_ptr().add(0x12cusize),
2549 )
2550 }
2551 }
2552 #[inline(always)]
2553 pub const fn p412pfs_by(
2554 &self,
2555 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2556 unsafe {
2557 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2558 self._svd2pac_as_ptr().add(0x130usize),
2559 )
2560 }
2561 }
2562 #[inline(always)]
2563 pub const fn p413pfs_by(
2564 &self,
2565 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2566 unsafe {
2567 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2568 self._svd2pac_as_ptr().add(0x134usize),
2569 )
2570 }
2571 }
2572 #[inline(always)]
2573 pub const fn p414pfs_by(
2574 &self,
2575 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2576 unsafe {
2577 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2578 self._svd2pac_as_ptr().add(0x138usize),
2579 )
2580 }
2581 }
2582 #[inline(always)]
2583 pub const fn p415pfs_by(
2584 &self,
2585 ) -> &'static crate::common::Reg<self::P4PfsBy_SPEC, crate::common::RW> {
2586 unsafe {
2587 crate::common::Reg::<self::P4PfsBy_SPEC, crate::common::RW>::from_ptr(
2588 self._svd2pac_as_ptr().add(0x13cusize),
2589 )
2590 }
2591 }
2592
2593 #[doc = "Port 50%s Pin Function Select Register"]
2594 #[inline(always)]
2595 pub const fn p50pfs(
2596 &self,
2597 ) -> &'static crate::common::ClusterRegisterArray<
2598 crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW>,
2599 10,
2600 0x4,
2601 > {
2602 unsafe {
2603 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x140usize))
2604 }
2605 }
2606 #[inline(always)]
2607 pub const fn p500pfs(
2608 &self,
2609 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2610 unsafe {
2611 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2612 self._svd2pac_as_ptr().add(0x140usize),
2613 )
2614 }
2615 }
2616 #[inline(always)]
2617 pub const fn p501pfs(
2618 &self,
2619 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2620 unsafe {
2621 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2622 self._svd2pac_as_ptr().add(0x144usize),
2623 )
2624 }
2625 }
2626 #[inline(always)]
2627 pub const fn p502pfs(
2628 &self,
2629 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2630 unsafe {
2631 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2632 self._svd2pac_as_ptr().add(0x148usize),
2633 )
2634 }
2635 }
2636 #[inline(always)]
2637 pub const fn p503pfs(
2638 &self,
2639 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2640 unsafe {
2641 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2642 self._svd2pac_as_ptr().add(0x14cusize),
2643 )
2644 }
2645 }
2646 #[inline(always)]
2647 pub const fn p504pfs(
2648 &self,
2649 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2650 unsafe {
2651 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2652 self._svd2pac_as_ptr().add(0x150usize),
2653 )
2654 }
2655 }
2656 #[inline(always)]
2657 pub const fn p505pfs(
2658 &self,
2659 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2660 unsafe {
2661 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2662 self._svd2pac_as_ptr().add(0x154usize),
2663 )
2664 }
2665 }
2666 #[inline(always)]
2667 pub const fn p506pfs(
2668 &self,
2669 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2670 unsafe {
2671 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2672 self._svd2pac_as_ptr().add(0x158usize),
2673 )
2674 }
2675 }
2676 #[inline(always)]
2677 pub const fn p507pfs(
2678 &self,
2679 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2680 unsafe {
2681 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2682 self._svd2pac_as_ptr().add(0x15cusize),
2683 )
2684 }
2685 }
2686 #[inline(always)]
2687 pub const fn p508pfs(
2688 &self,
2689 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2690 unsafe {
2691 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2692 self._svd2pac_as_ptr().add(0x160usize),
2693 )
2694 }
2695 }
2696 #[inline(always)]
2697 pub const fn p509pfs(
2698 &self,
2699 ) -> &'static crate::common::Reg<self::P50Pfs_SPEC, crate::common::RW> {
2700 unsafe {
2701 crate::common::Reg::<self::P50Pfs_SPEC, crate::common::RW>::from_ptr(
2702 self._svd2pac_as_ptr().add(0x164usize),
2703 )
2704 }
2705 }
2706
2707 #[doc = "Port 50%s Pin Function Select Register"]
2708 #[inline(always)]
2709 pub const fn p50pfs_ha(
2710 &self,
2711 ) -> &'static crate::common::ClusterRegisterArray<
2712 crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW>,
2713 10,
2714 0x4,
2715 > {
2716 unsafe {
2717 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x140usize))
2718 }
2719 }
2720 #[inline(always)]
2721 pub const fn p500pfs_ha(
2722 &self,
2723 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2724 unsafe {
2725 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2726 self._svd2pac_as_ptr().add(0x140usize),
2727 )
2728 }
2729 }
2730 #[inline(always)]
2731 pub const fn p501pfs_ha(
2732 &self,
2733 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2734 unsafe {
2735 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2736 self._svd2pac_as_ptr().add(0x144usize),
2737 )
2738 }
2739 }
2740 #[inline(always)]
2741 pub const fn p502pfs_ha(
2742 &self,
2743 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2744 unsafe {
2745 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2746 self._svd2pac_as_ptr().add(0x148usize),
2747 )
2748 }
2749 }
2750 #[inline(always)]
2751 pub const fn p503pfs_ha(
2752 &self,
2753 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2754 unsafe {
2755 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2756 self._svd2pac_as_ptr().add(0x14cusize),
2757 )
2758 }
2759 }
2760 #[inline(always)]
2761 pub const fn p504pfs_ha(
2762 &self,
2763 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2764 unsafe {
2765 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2766 self._svd2pac_as_ptr().add(0x150usize),
2767 )
2768 }
2769 }
2770 #[inline(always)]
2771 pub const fn p505pfs_ha(
2772 &self,
2773 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2774 unsafe {
2775 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2776 self._svd2pac_as_ptr().add(0x154usize),
2777 )
2778 }
2779 }
2780 #[inline(always)]
2781 pub const fn p506pfs_ha(
2782 &self,
2783 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2784 unsafe {
2785 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2786 self._svd2pac_as_ptr().add(0x158usize),
2787 )
2788 }
2789 }
2790 #[inline(always)]
2791 pub const fn p507pfs_ha(
2792 &self,
2793 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2794 unsafe {
2795 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2796 self._svd2pac_as_ptr().add(0x15cusize),
2797 )
2798 }
2799 }
2800 #[inline(always)]
2801 pub const fn p508pfs_ha(
2802 &self,
2803 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2804 unsafe {
2805 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2806 self._svd2pac_as_ptr().add(0x160usize),
2807 )
2808 }
2809 }
2810 #[inline(always)]
2811 pub const fn p509pfs_ha(
2812 &self,
2813 ) -> &'static crate::common::Reg<self::P50PfsHa_SPEC, crate::common::RW> {
2814 unsafe {
2815 crate::common::Reg::<self::P50PfsHa_SPEC, crate::common::RW>::from_ptr(
2816 self._svd2pac_as_ptr().add(0x164usize),
2817 )
2818 }
2819 }
2820
2821 #[doc = "Port 50%s Pin Function Select Register"]
2822 #[inline(always)]
2823 pub const fn p50pfs_by(
2824 &self,
2825 ) -> &'static crate::common::ClusterRegisterArray<
2826 crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW>,
2827 10,
2828 0x4,
2829 > {
2830 unsafe {
2831 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x140usize))
2832 }
2833 }
2834 #[inline(always)]
2835 pub const fn p500pfs_by(
2836 &self,
2837 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2838 unsafe {
2839 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2840 self._svd2pac_as_ptr().add(0x140usize),
2841 )
2842 }
2843 }
2844 #[inline(always)]
2845 pub const fn p501pfs_by(
2846 &self,
2847 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2848 unsafe {
2849 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2850 self._svd2pac_as_ptr().add(0x144usize),
2851 )
2852 }
2853 }
2854 #[inline(always)]
2855 pub const fn p502pfs_by(
2856 &self,
2857 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2858 unsafe {
2859 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2860 self._svd2pac_as_ptr().add(0x148usize),
2861 )
2862 }
2863 }
2864 #[inline(always)]
2865 pub const fn p503pfs_by(
2866 &self,
2867 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2868 unsafe {
2869 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2870 self._svd2pac_as_ptr().add(0x14cusize),
2871 )
2872 }
2873 }
2874 #[inline(always)]
2875 pub const fn p504pfs_by(
2876 &self,
2877 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2878 unsafe {
2879 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2880 self._svd2pac_as_ptr().add(0x150usize),
2881 )
2882 }
2883 }
2884 #[inline(always)]
2885 pub const fn p505pfs_by(
2886 &self,
2887 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2888 unsafe {
2889 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2890 self._svd2pac_as_ptr().add(0x154usize),
2891 )
2892 }
2893 }
2894 #[inline(always)]
2895 pub const fn p506pfs_by(
2896 &self,
2897 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2898 unsafe {
2899 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2900 self._svd2pac_as_ptr().add(0x158usize),
2901 )
2902 }
2903 }
2904 #[inline(always)]
2905 pub const fn p507pfs_by(
2906 &self,
2907 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2908 unsafe {
2909 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2910 self._svd2pac_as_ptr().add(0x15cusize),
2911 )
2912 }
2913 }
2914 #[inline(always)]
2915 pub const fn p508pfs_by(
2916 &self,
2917 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2918 unsafe {
2919 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2920 self._svd2pac_as_ptr().add(0x160usize),
2921 )
2922 }
2923 }
2924 #[inline(always)]
2925 pub const fn p509pfs_by(
2926 &self,
2927 ) -> &'static crate::common::Reg<self::P50PfsBy_SPEC, crate::common::RW> {
2928 unsafe {
2929 crate::common::Reg::<self::P50PfsBy_SPEC, crate::common::RW>::from_ptr(
2930 self._svd2pac_as_ptr().add(0x164usize),
2931 )
2932 }
2933 }
2934
2935 #[doc = "Port 5%s Pin Function Select Register"]
2936 #[inline(always)]
2937 pub const fn p5pfs(
2938 &self,
2939 ) -> &'static crate::common::ClusterRegisterArray<
2940 crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW>,
2941 6,
2942 0x4,
2943 > {
2944 unsafe {
2945 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x168usize))
2946 }
2947 }
2948 #[inline(always)]
2949 pub const fn p510pfs(
2950 &self,
2951 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
2952 unsafe {
2953 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
2954 self._svd2pac_as_ptr().add(0x168usize),
2955 )
2956 }
2957 }
2958 #[inline(always)]
2959 pub const fn p511pfs(
2960 &self,
2961 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
2962 unsafe {
2963 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
2964 self._svd2pac_as_ptr().add(0x16cusize),
2965 )
2966 }
2967 }
2968 #[inline(always)]
2969 pub const fn p512pfs(
2970 &self,
2971 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
2972 unsafe {
2973 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
2974 self._svd2pac_as_ptr().add(0x170usize),
2975 )
2976 }
2977 }
2978 #[inline(always)]
2979 pub const fn p513pfs(
2980 &self,
2981 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
2982 unsafe {
2983 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
2984 self._svd2pac_as_ptr().add(0x174usize),
2985 )
2986 }
2987 }
2988 #[inline(always)]
2989 pub const fn p514pfs(
2990 &self,
2991 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
2992 unsafe {
2993 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
2994 self._svd2pac_as_ptr().add(0x178usize),
2995 )
2996 }
2997 }
2998 #[inline(always)]
2999 pub const fn p515pfs(
3000 &self,
3001 ) -> &'static crate::common::Reg<self::P5Pfs_SPEC, crate::common::RW> {
3002 unsafe {
3003 crate::common::Reg::<self::P5Pfs_SPEC, crate::common::RW>::from_ptr(
3004 self._svd2pac_as_ptr().add(0x17cusize),
3005 )
3006 }
3007 }
3008
3009 #[doc = "Port 5%s Pin Function Select Register"]
3010 #[inline(always)]
3011 pub const fn p5pfs_ha(
3012 &self,
3013 ) -> &'static crate::common::ClusterRegisterArray<
3014 crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW>,
3015 6,
3016 0x4,
3017 > {
3018 unsafe {
3019 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x168usize))
3020 }
3021 }
3022 #[inline(always)]
3023 pub const fn p510pfs_ha(
3024 &self,
3025 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3026 unsafe {
3027 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3028 self._svd2pac_as_ptr().add(0x168usize),
3029 )
3030 }
3031 }
3032 #[inline(always)]
3033 pub const fn p511pfs_ha(
3034 &self,
3035 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3036 unsafe {
3037 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3038 self._svd2pac_as_ptr().add(0x16cusize),
3039 )
3040 }
3041 }
3042 #[inline(always)]
3043 pub const fn p512pfs_ha(
3044 &self,
3045 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3046 unsafe {
3047 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3048 self._svd2pac_as_ptr().add(0x170usize),
3049 )
3050 }
3051 }
3052 #[inline(always)]
3053 pub const fn p513pfs_ha(
3054 &self,
3055 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3056 unsafe {
3057 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3058 self._svd2pac_as_ptr().add(0x174usize),
3059 )
3060 }
3061 }
3062 #[inline(always)]
3063 pub const fn p514pfs_ha(
3064 &self,
3065 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3066 unsafe {
3067 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3068 self._svd2pac_as_ptr().add(0x178usize),
3069 )
3070 }
3071 }
3072 #[inline(always)]
3073 pub const fn p515pfs_ha(
3074 &self,
3075 ) -> &'static crate::common::Reg<self::P5PfsHa_SPEC, crate::common::RW> {
3076 unsafe {
3077 crate::common::Reg::<self::P5PfsHa_SPEC, crate::common::RW>::from_ptr(
3078 self._svd2pac_as_ptr().add(0x17cusize),
3079 )
3080 }
3081 }
3082
3083 #[doc = "Port 5%s Pin Function Select Register"]
3084 #[inline(always)]
3085 pub const fn p5pfs_by(
3086 &self,
3087 ) -> &'static crate::common::ClusterRegisterArray<
3088 crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW>,
3089 6,
3090 0x4,
3091 > {
3092 unsafe {
3093 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x168usize))
3094 }
3095 }
3096 #[inline(always)]
3097 pub const fn p510pfs_by(
3098 &self,
3099 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3100 unsafe {
3101 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3102 self._svd2pac_as_ptr().add(0x168usize),
3103 )
3104 }
3105 }
3106 #[inline(always)]
3107 pub const fn p511pfs_by(
3108 &self,
3109 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3110 unsafe {
3111 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3112 self._svd2pac_as_ptr().add(0x16cusize),
3113 )
3114 }
3115 }
3116 #[inline(always)]
3117 pub const fn p512pfs_by(
3118 &self,
3119 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3120 unsafe {
3121 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3122 self._svd2pac_as_ptr().add(0x170usize),
3123 )
3124 }
3125 }
3126 #[inline(always)]
3127 pub const fn p513pfs_by(
3128 &self,
3129 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3130 unsafe {
3131 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3132 self._svd2pac_as_ptr().add(0x174usize),
3133 )
3134 }
3135 }
3136 #[inline(always)]
3137 pub const fn p514pfs_by(
3138 &self,
3139 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3140 unsafe {
3141 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3142 self._svd2pac_as_ptr().add(0x178usize),
3143 )
3144 }
3145 }
3146 #[inline(always)]
3147 pub const fn p515pfs_by(
3148 &self,
3149 ) -> &'static crate::common::Reg<self::P5PfsBy_SPEC, crate::common::RW> {
3150 unsafe {
3151 crate::common::Reg::<self::P5PfsBy_SPEC, crate::common::RW>::from_ptr(
3152 self._svd2pac_as_ptr().add(0x17cusize),
3153 )
3154 }
3155 }
3156
3157 #[doc = "Port 60%s Pin Function Select Register"]
3158 #[inline(always)]
3159 pub const fn p60pfs(
3160 &self,
3161 ) -> &'static crate::common::ClusterRegisterArray<
3162 crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW>,
3163 10,
3164 0x4,
3165 > {
3166 unsafe {
3167 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x180usize))
3168 }
3169 }
3170 #[inline(always)]
3171 pub const fn p600pfs(
3172 &self,
3173 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3174 unsafe {
3175 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3176 self._svd2pac_as_ptr().add(0x180usize),
3177 )
3178 }
3179 }
3180 #[inline(always)]
3181 pub const fn p601pfs(
3182 &self,
3183 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3184 unsafe {
3185 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3186 self._svd2pac_as_ptr().add(0x184usize),
3187 )
3188 }
3189 }
3190 #[inline(always)]
3191 pub const fn p602pfs(
3192 &self,
3193 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3194 unsafe {
3195 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3196 self._svd2pac_as_ptr().add(0x188usize),
3197 )
3198 }
3199 }
3200 #[inline(always)]
3201 pub const fn p603pfs(
3202 &self,
3203 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3204 unsafe {
3205 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3206 self._svd2pac_as_ptr().add(0x18cusize),
3207 )
3208 }
3209 }
3210 #[inline(always)]
3211 pub const fn p604pfs(
3212 &self,
3213 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3214 unsafe {
3215 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3216 self._svd2pac_as_ptr().add(0x190usize),
3217 )
3218 }
3219 }
3220 #[inline(always)]
3221 pub const fn p605pfs(
3222 &self,
3223 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3224 unsafe {
3225 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3226 self._svd2pac_as_ptr().add(0x194usize),
3227 )
3228 }
3229 }
3230 #[inline(always)]
3231 pub const fn p606pfs(
3232 &self,
3233 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3234 unsafe {
3235 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3236 self._svd2pac_as_ptr().add(0x198usize),
3237 )
3238 }
3239 }
3240 #[inline(always)]
3241 pub const fn p607pfs(
3242 &self,
3243 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3244 unsafe {
3245 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3246 self._svd2pac_as_ptr().add(0x19cusize),
3247 )
3248 }
3249 }
3250 #[inline(always)]
3251 pub const fn p608pfs(
3252 &self,
3253 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3254 unsafe {
3255 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3256 self._svd2pac_as_ptr().add(0x1a0usize),
3257 )
3258 }
3259 }
3260 #[inline(always)]
3261 pub const fn p609pfs(
3262 &self,
3263 ) -> &'static crate::common::Reg<self::P60Pfs_SPEC, crate::common::RW> {
3264 unsafe {
3265 crate::common::Reg::<self::P60Pfs_SPEC, crate::common::RW>::from_ptr(
3266 self._svd2pac_as_ptr().add(0x1a4usize),
3267 )
3268 }
3269 }
3270
3271 #[doc = "Port 60%s Pin Function Select Register"]
3272 #[inline(always)]
3273 pub const fn p60pfs_ha(
3274 &self,
3275 ) -> &'static crate::common::ClusterRegisterArray<
3276 crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW>,
3277 10,
3278 0x4,
3279 > {
3280 unsafe {
3281 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x180usize))
3282 }
3283 }
3284 #[inline(always)]
3285 pub const fn p600pfs_ha(
3286 &self,
3287 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3288 unsafe {
3289 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3290 self._svd2pac_as_ptr().add(0x180usize),
3291 )
3292 }
3293 }
3294 #[inline(always)]
3295 pub const fn p601pfs_ha(
3296 &self,
3297 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3298 unsafe {
3299 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3300 self._svd2pac_as_ptr().add(0x184usize),
3301 )
3302 }
3303 }
3304 #[inline(always)]
3305 pub const fn p602pfs_ha(
3306 &self,
3307 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3308 unsafe {
3309 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3310 self._svd2pac_as_ptr().add(0x188usize),
3311 )
3312 }
3313 }
3314 #[inline(always)]
3315 pub const fn p603pfs_ha(
3316 &self,
3317 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3318 unsafe {
3319 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3320 self._svd2pac_as_ptr().add(0x18cusize),
3321 )
3322 }
3323 }
3324 #[inline(always)]
3325 pub const fn p604pfs_ha(
3326 &self,
3327 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3328 unsafe {
3329 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3330 self._svd2pac_as_ptr().add(0x190usize),
3331 )
3332 }
3333 }
3334 #[inline(always)]
3335 pub const fn p605pfs_ha(
3336 &self,
3337 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3338 unsafe {
3339 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3340 self._svd2pac_as_ptr().add(0x194usize),
3341 )
3342 }
3343 }
3344 #[inline(always)]
3345 pub const fn p606pfs_ha(
3346 &self,
3347 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3348 unsafe {
3349 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3350 self._svd2pac_as_ptr().add(0x198usize),
3351 )
3352 }
3353 }
3354 #[inline(always)]
3355 pub const fn p607pfs_ha(
3356 &self,
3357 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3358 unsafe {
3359 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3360 self._svd2pac_as_ptr().add(0x19cusize),
3361 )
3362 }
3363 }
3364 #[inline(always)]
3365 pub const fn p608pfs_ha(
3366 &self,
3367 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3368 unsafe {
3369 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3370 self._svd2pac_as_ptr().add(0x1a0usize),
3371 )
3372 }
3373 }
3374 #[inline(always)]
3375 pub const fn p609pfs_ha(
3376 &self,
3377 ) -> &'static crate::common::Reg<self::P60PfsHa_SPEC, crate::common::RW> {
3378 unsafe {
3379 crate::common::Reg::<self::P60PfsHa_SPEC, crate::common::RW>::from_ptr(
3380 self._svd2pac_as_ptr().add(0x1a4usize),
3381 )
3382 }
3383 }
3384
3385 #[doc = "Port 60%s Pin Function Select Register"]
3386 #[inline(always)]
3387 pub const fn p60pfs_by(
3388 &self,
3389 ) -> &'static crate::common::ClusterRegisterArray<
3390 crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW>,
3391 10,
3392 0x4,
3393 > {
3394 unsafe {
3395 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x180usize))
3396 }
3397 }
3398 #[inline(always)]
3399 pub const fn p600pfs_by(
3400 &self,
3401 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3402 unsafe {
3403 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3404 self._svd2pac_as_ptr().add(0x180usize),
3405 )
3406 }
3407 }
3408 #[inline(always)]
3409 pub const fn p601pfs_by(
3410 &self,
3411 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3412 unsafe {
3413 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3414 self._svd2pac_as_ptr().add(0x184usize),
3415 )
3416 }
3417 }
3418 #[inline(always)]
3419 pub const fn p602pfs_by(
3420 &self,
3421 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3422 unsafe {
3423 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3424 self._svd2pac_as_ptr().add(0x188usize),
3425 )
3426 }
3427 }
3428 #[inline(always)]
3429 pub const fn p603pfs_by(
3430 &self,
3431 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3432 unsafe {
3433 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3434 self._svd2pac_as_ptr().add(0x18cusize),
3435 )
3436 }
3437 }
3438 #[inline(always)]
3439 pub const fn p604pfs_by(
3440 &self,
3441 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3442 unsafe {
3443 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3444 self._svd2pac_as_ptr().add(0x190usize),
3445 )
3446 }
3447 }
3448 #[inline(always)]
3449 pub const fn p605pfs_by(
3450 &self,
3451 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3452 unsafe {
3453 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3454 self._svd2pac_as_ptr().add(0x194usize),
3455 )
3456 }
3457 }
3458 #[inline(always)]
3459 pub const fn p606pfs_by(
3460 &self,
3461 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3462 unsafe {
3463 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3464 self._svd2pac_as_ptr().add(0x198usize),
3465 )
3466 }
3467 }
3468 #[inline(always)]
3469 pub const fn p607pfs_by(
3470 &self,
3471 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3472 unsafe {
3473 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3474 self._svd2pac_as_ptr().add(0x19cusize),
3475 )
3476 }
3477 }
3478 #[inline(always)]
3479 pub const fn p608pfs_by(
3480 &self,
3481 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3482 unsafe {
3483 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3484 self._svd2pac_as_ptr().add(0x1a0usize),
3485 )
3486 }
3487 }
3488 #[inline(always)]
3489 pub const fn p609pfs_by(
3490 &self,
3491 ) -> &'static crate::common::Reg<self::P60PfsBy_SPEC, crate::common::RW> {
3492 unsafe {
3493 crate::common::Reg::<self::P60PfsBy_SPEC, crate::common::RW>::from_ptr(
3494 self._svd2pac_as_ptr().add(0x1a4usize),
3495 )
3496 }
3497 }
3498
3499 #[doc = "Port 6%s Pin Function Select Register"]
3500 #[inline(always)]
3501 pub const fn p6pfs(
3502 &self,
3503 ) -> &'static crate::common::ClusterRegisterArray<
3504 crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW>,
3505 6,
3506 0x4,
3507 > {
3508 unsafe {
3509 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1a8usize))
3510 }
3511 }
3512 #[inline(always)]
3513 pub const fn p610pfs(
3514 &self,
3515 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3516 unsafe {
3517 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3518 self._svd2pac_as_ptr().add(0x1a8usize),
3519 )
3520 }
3521 }
3522 #[inline(always)]
3523 pub const fn p611pfs(
3524 &self,
3525 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3526 unsafe {
3527 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3528 self._svd2pac_as_ptr().add(0x1acusize),
3529 )
3530 }
3531 }
3532 #[inline(always)]
3533 pub const fn p612pfs(
3534 &self,
3535 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3536 unsafe {
3537 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3538 self._svd2pac_as_ptr().add(0x1b0usize),
3539 )
3540 }
3541 }
3542 #[inline(always)]
3543 pub const fn p613pfs(
3544 &self,
3545 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3546 unsafe {
3547 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3548 self._svd2pac_as_ptr().add(0x1b4usize),
3549 )
3550 }
3551 }
3552 #[inline(always)]
3553 pub const fn p614pfs(
3554 &self,
3555 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3556 unsafe {
3557 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3558 self._svd2pac_as_ptr().add(0x1b8usize),
3559 )
3560 }
3561 }
3562 #[inline(always)]
3563 pub const fn p615pfs(
3564 &self,
3565 ) -> &'static crate::common::Reg<self::P6Pfs_SPEC, crate::common::RW> {
3566 unsafe {
3567 crate::common::Reg::<self::P6Pfs_SPEC, crate::common::RW>::from_ptr(
3568 self._svd2pac_as_ptr().add(0x1bcusize),
3569 )
3570 }
3571 }
3572
3573 #[doc = "Port 6%s Pin Function Select Register"]
3574 #[inline(always)]
3575 pub const fn p6pfs_ha(
3576 &self,
3577 ) -> &'static crate::common::ClusterRegisterArray<
3578 crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW>,
3579 6,
3580 0x4,
3581 > {
3582 unsafe {
3583 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1a8usize))
3584 }
3585 }
3586 #[inline(always)]
3587 pub const fn p610pfs_ha(
3588 &self,
3589 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3590 unsafe {
3591 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3592 self._svd2pac_as_ptr().add(0x1a8usize),
3593 )
3594 }
3595 }
3596 #[inline(always)]
3597 pub const fn p611pfs_ha(
3598 &self,
3599 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3600 unsafe {
3601 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3602 self._svd2pac_as_ptr().add(0x1acusize),
3603 )
3604 }
3605 }
3606 #[inline(always)]
3607 pub const fn p612pfs_ha(
3608 &self,
3609 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3610 unsafe {
3611 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3612 self._svd2pac_as_ptr().add(0x1b0usize),
3613 )
3614 }
3615 }
3616 #[inline(always)]
3617 pub const fn p613pfs_ha(
3618 &self,
3619 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3620 unsafe {
3621 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3622 self._svd2pac_as_ptr().add(0x1b4usize),
3623 )
3624 }
3625 }
3626 #[inline(always)]
3627 pub const fn p614pfs_ha(
3628 &self,
3629 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3630 unsafe {
3631 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3632 self._svd2pac_as_ptr().add(0x1b8usize),
3633 )
3634 }
3635 }
3636 #[inline(always)]
3637 pub const fn p615pfs_ha(
3638 &self,
3639 ) -> &'static crate::common::Reg<self::P6PfsHa_SPEC, crate::common::RW> {
3640 unsafe {
3641 crate::common::Reg::<self::P6PfsHa_SPEC, crate::common::RW>::from_ptr(
3642 self._svd2pac_as_ptr().add(0x1bcusize),
3643 )
3644 }
3645 }
3646
3647 #[doc = "Port 6%s Pin Function Select Register"]
3648 #[inline(always)]
3649 pub const fn p6pfs_by(
3650 &self,
3651 ) -> &'static crate::common::ClusterRegisterArray<
3652 crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW>,
3653 6,
3654 0x4,
3655 > {
3656 unsafe {
3657 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1a8usize))
3658 }
3659 }
3660 #[inline(always)]
3661 pub const fn p610pfs_by(
3662 &self,
3663 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3664 unsafe {
3665 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3666 self._svd2pac_as_ptr().add(0x1a8usize),
3667 )
3668 }
3669 }
3670 #[inline(always)]
3671 pub const fn p611pfs_by(
3672 &self,
3673 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3674 unsafe {
3675 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3676 self._svd2pac_as_ptr().add(0x1acusize),
3677 )
3678 }
3679 }
3680 #[inline(always)]
3681 pub const fn p612pfs_by(
3682 &self,
3683 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3684 unsafe {
3685 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3686 self._svd2pac_as_ptr().add(0x1b0usize),
3687 )
3688 }
3689 }
3690 #[inline(always)]
3691 pub const fn p613pfs_by(
3692 &self,
3693 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3694 unsafe {
3695 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3696 self._svd2pac_as_ptr().add(0x1b4usize),
3697 )
3698 }
3699 }
3700 #[inline(always)]
3701 pub const fn p614pfs_by(
3702 &self,
3703 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3704 unsafe {
3705 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3706 self._svd2pac_as_ptr().add(0x1b8usize),
3707 )
3708 }
3709 }
3710 #[inline(always)]
3711 pub const fn p615pfs_by(
3712 &self,
3713 ) -> &'static crate::common::Reg<self::P6PfsBy_SPEC, crate::common::RW> {
3714 unsafe {
3715 crate::common::Reg::<self::P6PfsBy_SPEC, crate::common::RW>::from_ptr(
3716 self._svd2pac_as_ptr().add(0x1bcusize),
3717 )
3718 }
3719 }
3720
3721 #[doc = "Port 70%s Pin Function Select Register"]
3722 #[inline(always)]
3723 pub const fn p70pfs(
3724 &self,
3725 ) -> &'static crate::common::ClusterRegisterArray<
3726 crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW>,
3727 10,
3728 0x4,
3729 > {
3730 unsafe {
3731 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1c0usize))
3732 }
3733 }
3734 #[inline(always)]
3735 pub const fn p700pfs(
3736 &self,
3737 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3738 unsafe {
3739 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3740 self._svd2pac_as_ptr().add(0x1c0usize),
3741 )
3742 }
3743 }
3744 #[inline(always)]
3745 pub const fn p701pfs(
3746 &self,
3747 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3748 unsafe {
3749 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3750 self._svd2pac_as_ptr().add(0x1c4usize),
3751 )
3752 }
3753 }
3754 #[inline(always)]
3755 pub const fn p702pfs(
3756 &self,
3757 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3758 unsafe {
3759 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3760 self._svd2pac_as_ptr().add(0x1c8usize),
3761 )
3762 }
3763 }
3764 #[inline(always)]
3765 pub const fn p703pfs(
3766 &self,
3767 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3768 unsafe {
3769 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3770 self._svd2pac_as_ptr().add(0x1ccusize),
3771 )
3772 }
3773 }
3774 #[inline(always)]
3775 pub const fn p704pfs(
3776 &self,
3777 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3778 unsafe {
3779 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3780 self._svd2pac_as_ptr().add(0x1d0usize),
3781 )
3782 }
3783 }
3784 #[inline(always)]
3785 pub const fn p705pfs(
3786 &self,
3787 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3788 unsafe {
3789 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3790 self._svd2pac_as_ptr().add(0x1d4usize),
3791 )
3792 }
3793 }
3794 #[inline(always)]
3795 pub const fn p706pfs(
3796 &self,
3797 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3798 unsafe {
3799 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3800 self._svd2pac_as_ptr().add(0x1d8usize),
3801 )
3802 }
3803 }
3804 #[inline(always)]
3805 pub const fn p707pfs(
3806 &self,
3807 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3808 unsafe {
3809 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3810 self._svd2pac_as_ptr().add(0x1dcusize),
3811 )
3812 }
3813 }
3814 #[inline(always)]
3815 pub const fn p708pfs(
3816 &self,
3817 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3818 unsafe {
3819 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3820 self._svd2pac_as_ptr().add(0x1e0usize),
3821 )
3822 }
3823 }
3824 #[inline(always)]
3825 pub const fn p709pfs(
3826 &self,
3827 ) -> &'static crate::common::Reg<self::P70Pfs_SPEC, crate::common::RW> {
3828 unsafe {
3829 crate::common::Reg::<self::P70Pfs_SPEC, crate::common::RW>::from_ptr(
3830 self._svd2pac_as_ptr().add(0x1e4usize),
3831 )
3832 }
3833 }
3834
3835 #[doc = "Port 70%s Pin Function Select Register"]
3836 #[inline(always)]
3837 pub const fn p70pfs_ha(
3838 &self,
3839 ) -> &'static crate::common::ClusterRegisterArray<
3840 crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW>,
3841 10,
3842 0x4,
3843 > {
3844 unsafe {
3845 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1c0usize))
3846 }
3847 }
3848 #[inline(always)]
3849 pub const fn p700pfs_ha(
3850 &self,
3851 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3852 unsafe {
3853 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3854 self._svd2pac_as_ptr().add(0x1c0usize),
3855 )
3856 }
3857 }
3858 #[inline(always)]
3859 pub const fn p701pfs_ha(
3860 &self,
3861 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3862 unsafe {
3863 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3864 self._svd2pac_as_ptr().add(0x1c4usize),
3865 )
3866 }
3867 }
3868 #[inline(always)]
3869 pub const fn p702pfs_ha(
3870 &self,
3871 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3872 unsafe {
3873 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3874 self._svd2pac_as_ptr().add(0x1c8usize),
3875 )
3876 }
3877 }
3878 #[inline(always)]
3879 pub const fn p703pfs_ha(
3880 &self,
3881 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3882 unsafe {
3883 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3884 self._svd2pac_as_ptr().add(0x1ccusize),
3885 )
3886 }
3887 }
3888 #[inline(always)]
3889 pub const fn p704pfs_ha(
3890 &self,
3891 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3892 unsafe {
3893 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3894 self._svd2pac_as_ptr().add(0x1d0usize),
3895 )
3896 }
3897 }
3898 #[inline(always)]
3899 pub const fn p705pfs_ha(
3900 &self,
3901 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3902 unsafe {
3903 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3904 self._svd2pac_as_ptr().add(0x1d4usize),
3905 )
3906 }
3907 }
3908 #[inline(always)]
3909 pub const fn p706pfs_ha(
3910 &self,
3911 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3912 unsafe {
3913 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3914 self._svd2pac_as_ptr().add(0x1d8usize),
3915 )
3916 }
3917 }
3918 #[inline(always)]
3919 pub const fn p707pfs_ha(
3920 &self,
3921 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3922 unsafe {
3923 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3924 self._svd2pac_as_ptr().add(0x1dcusize),
3925 )
3926 }
3927 }
3928 #[inline(always)]
3929 pub const fn p708pfs_ha(
3930 &self,
3931 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3932 unsafe {
3933 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3934 self._svd2pac_as_ptr().add(0x1e0usize),
3935 )
3936 }
3937 }
3938 #[inline(always)]
3939 pub const fn p709pfs_ha(
3940 &self,
3941 ) -> &'static crate::common::Reg<self::P70PfsHa_SPEC, crate::common::RW> {
3942 unsafe {
3943 crate::common::Reg::<self::P70PfsHa_SPEC, crate::common::RW>::from_ptr(
3944 self._svd2pac_as_ptr().add(0x1e4usize),
3945 )
3946 }
3947 }
3948
3949 #[doc = "Port 70%s Pin Function Select Register"]
3950 #[inline(always)]
3951 pub const fn p70pfs_by(
3952 &self,
3953 ) -> &'static crate::common::ClusterRegisterArray<
3954 crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW>,
3955 10,
3956 0x4,
3957 > {
3958 unsafe {
3959 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1c0usize))
3960 }
3961 }
3962 #[inline(always)]
3963 pub const fn p700pfs_by(
3964 &self,
3965 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
3966 unsafe {
3967 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
3968 self._svd2pac_as_ptr().add(0x1c0usize),
3969 )
3970 }
3971 }
3972 #[inline(always)]
3973 pub const fn p701pfs_by(
3974 &self,
3975 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
3976 unsafe {
3977 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
3978 self._svd2pac_as_ptr().add(0x1c4usize),
3979 )
3980 }
3981 }
3982 #[inline(always)]
3983 pub const fn p702pfs_by(
3984 &self,
3985 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
3986 unsafe {
3987 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
3988 self._svd2pac_as_ptr().add(0x1c8usize),
3989 )
3990 }
3991 }
3992 #[inline(always)]
3993 pub const fn p703pfs_by(
3994 &self,
3995 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
3996 unsafe {
3997 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
3998 self._svd2pac_as_ptr().add(0x1ccusize),
3999 )
4000 }
4001 }
4002 #[inline(always)]
4003 pub const fn p704pfs_by(
4004 &self,
4005 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4006 unsafe {
4007 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4008 self._svd2pac_as_ptr().add(0x1d0usize),
4009 )
4010 }
4011 }
4012 #[inline(always)]
4013 pub const fn p705pfs_by(
4014 &self,
4015 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4016 unsafe {
4017 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4018 self._svd2pac_as_ptr().add(0x1d4usize),
4019 )
4020 }
4021 }
4022 #[inline(always)]
4023 pub const fn p706pfs_by(
4024 &self,
4025 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4026 unsafe {
4027 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4028 self._svd2pac_as_ptr().add(0x1d8usize),
4029 )
4030 }
4031 }
4032 #[inline(always)]
4033 pub const fn p707pfs_by(
4034 &self,
4035 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4036 unsafe {
4037 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4038 self._svd2pac_as_ptr().add(0x1dcusize),
4039 )
4040 }
4041 }
4042 #[inline(always)]
4043 pub const fn p708pfs_by(
4044 &self,
4045 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4046 unsafe {
4047 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4048 self._svd2pac_as_ptr().add(0x1e0usize),
4049 )
4050 }
4051 }
4052 #[inline(always)]
4053 pub const fn p709pfs_by(
4054 &self,
4055 ) -> &'static crate::common::Reg<self::P70PfsBy_SPEC, crate::common::RW> {
4056 unsafe {
4057 crate::common::Reg::<self::P70PfsBy_SPEC, crate::common::RW>::from_ptr(
4058 self._svd2pac_as_ptr().add(0x1e4usize),
4059 )
4060 }
4061 }
4062
4063 #[doc = "Port 7%s Pin Function Select Register"]
4064 #[inline(always)]
4065 pub const fn p7pfs(
4066 &self,
4067 ) -> &'static crate::common::ClusterRegisterArray<
4068 crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW>,
4069 6,
4070 0x4,
4071 > {
4072 unsafe {
4073 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1e8usize))
4074 }
4075 }
4076 #[inline(always)]
4077 pub const fn p710pfs(
4078 &self,
4079 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4080 unsafe {
4081 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4082 self._svd2pac_as_ptr().add(0x1e8usize),
4083 )
4084 }
4085 }
4086 #[inline(always)]
4087 pub const fn p711pfs(
4088 &self,
4089 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4090 unsafe {
4091 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4092 self._svd2pac_as_ptr().add(0x1ecusize),
4093 )
4094 }
4095 }
4096 #[inline(always)]
4097 pub const fn p712pfs(
4098 &self,
4099 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4100 unsafe {
4101 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4102 self._svd2pac_as_ptr().add(0x1f0usize),
4103 )
4104 }
4105 }
4106 #[inline(always)]
4107 pub const fn p713pfs(
4108 &self,
4109 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4110 unsafe {
4111 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4112 self._svd2pac_as_ptr().add(0x1f4usize),
4113 )
4114 }
4115 }
4116 #[inline(always)]
4117 pub const fn p714pfs(
4118 &self,
4119 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4120 unsafe {
4121 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4122 self._svd2pac_as_ptr().add(0x1f8usize),
4123 )
4124 }
4125 }
4126 #[inline(always)]
4127 pub const fn p715pfs(
4128 &self,
4129 ) -> &'static crate::common::Reg<self::P7Pfs_SPEC, crate::common::RW> {
4130 unsafe {
4131 crate::common::Reg::<self::P7Pfs_SPEC, crate::common::RW>::from_ptr(
4132 self._svd2pac_as_ptr().add(0x1fcusize),
4133 )
4134 }
4135 }
4136
4137 #[doc = "Port 7%s Pin Function Select Register"]
4138 #[inline(always)]
4139 pub const fn p7pfs_ha(
4140 &self,
4141 ) -> &'static crate::common::ClusterRegisterArray<
4142 crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW>,
4143 6,
4144 0x4,
4145 > {
4146 unsafe {
4147 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1e8usize))
4148 }
4149 }
4150 #[inline(always)]
4151 pub const fn p710pfs_ha(
4152 &self,
4153 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4154 unsafe {
4155 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4156 self._svd2pac_as_ptr().add(0x1e8usize),
4157 )
4158 }
4159 }
4160 #[inline(always)]
4161 pub const fn p711pfs_ha(
4162 &self,
4163 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4164 unsafe {
4165 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4166 self._svd2pac_as_ptr().add(0x1ecusize),
4167 )
4168 }
4169 }
4170 #[inline(always)]
4171 pub const fn p712pfs_ha(
4172 &self,
4173 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4174 unsafe {
4175 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4176 self._svd2pac_as_ptr().add(0x1f0usize),
4177 )
4178 }
4179 }
4180 #[inline(always)]
4181 pub const fn p713pfs_ha(
4182 &self,
4183 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4184 unsafe {
4185 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4186 self._svd2pac_as_ptr().add(0x1f4usize),
4187 )
4188 }
4189 }
4190 #[inline(always)]
4191 pub const fn p714pfs_ha(
4192 &self,
4193 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4194 unsafe {
4195 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4196 self._svd2pac_as_ptr().add(0x1f8usize),
4197 )
4198 }
4199 }
4200 #[inline(always)]
4201 pub const fn p715pfs_ha(
4202 &self,
4203 ) -> &'static crate::common::Reg<self::P7PfsHa_SPEC, crate::common::RW> {
4204 unsafe {
4205 crate::common::Reg::<self::P7PfsHa_SPEC, crate::common::RW>::from_ptr(
4206 self._svd2pac_as_ptr().add(0x1fcusize),
4207 )
4208 }
4209 }
4210
4211 #[doc = "Port 7%s Pin Function Select Register"]
4212 #[inline(always)]
4213 pub const fn p7pfs_by(
4214 &self,
4215 ) -> &'static crate::common::ClusterRegisterArray<
4216 crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW>,
4217 6,
4218 0x4,
4219 > {
4220 unsafe {
4221 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1e8usize))
4222 }
4223 }
4224 #[inline(always)]
4225 pub const fn p710pfs_by(
4226 &self,
4227 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4228 unsafe {
4229 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4230 self._svd2pac_as_ptr().add(0x1e8usize),
4231 )
4232 }
4233 }
4234 #[inline(always)]
4235 pub const fn p711pfs_by(
4236 &self,
4237 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4238 unsafe {
4239 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4240 self._svd2pac_as_ptr().add(0x1ecusize),
4241 )
4242 }
4243 }
4244 #[inline(always)]
4245 pub const fn p712pfs_by(
4246 &self,
4247 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4248 unsafe {
4249 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4250 self._svd2pac_as_ptr().add(0x1f0usize),
4251 )
4252 }
4253 }
4254 #[inline(always)]
4255 pub const fn p713pfs_by(
4256 &self,
4257 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4258 unsafe {
4259 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4260 self._svd2pac_as_ptr().add(0x1f4usize),
4261 )
4262 }
4263 }
4264 #[inline(always)]
4265 pub const fn p714pfs_by(
4266 &self,
4267 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4268 unsafe {
4269 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4270 self._svd2pac_as_ptr().add(0x1f8usize),
4271 )
4272 }
4273 }
4274 #[inline(always)]
4275 pub const fn p715pfs_by(
4276 &self,
4277 ) -> &'static crate::common::Reg<self::P7PfsBy_SPEC, crate::common::RW> {
4278 unsafe {
4279 crate::common::Reg::<self::P7PfsBy_SPEC, crate::common::RW>::from_ptr(
4280 self._svd2pac_as_ptr().add(0x1fcusize),
4281 )
4282 }
4283 }
4284
4285 #[doc = "Port 80%s Pin Function Select Register"]
4286 #[inline(always)]
4287 pub const fn p80pfs(
4288 &self,
4289 ) -> &'static crate::common::ClusterRegisterArray<
4290 crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW>,
4291 10,
4292 0x4,
4293 > {
4294 unsafe {
4295 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x200usize))
4296 }
4297 }
4298 #[inline(always)]
4299 pub const fn p800pfs(
4300 &self,
4301 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4302 unsafe {
4303 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4304 self._svd2pac_as_ptr().add(0x200usize),
4305 )
4306 }
4307 }
4308 #[inline(always)]
4309 pub const fn p801pfs(
4310 &self,
4311 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4312 unsafe {
4313 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4314 self._svd2pac_as_ptr().add(0x204usize),
4315 )
4316 }
4317 }
4318 #[inline(always)]
4319 pub const fn p802pfs(
4320 &self,
4321 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4322 unsafe {
4323 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4324 self._svd2pac_as_ptr().add(0x208usize),
4325 )
4326 }
4327 }
4328 #[inline(always)]
4329 pub const fn p803pfs(
4330 &self,
4331 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4332 unsafe {
4333 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4334 self._svd2pac_as_ptr().add(0x20cusize),
4335 )
4336 }
4337 }
4338 #[inline(always)]
4339 pub const fn p804pfs(
4340 &self,
4341 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4342 unsafe {
4343 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4344 self._svd2pac_as_ptr().add(0x210usize),
4345 )
4346 }
4347 }
4348 #[inline(always)]
4349 pub const fn p805pfs(
4350 &self,
4351 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4352 unsafe {
4353 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4354 self._svd2pac_as_ptr().add(0x214usize),
4355 )
4356 }
4357 }
4358 #[inline(always)]
4359 pub const fn p806pfs(
4360 &self,
4361 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4362 unsafe {
4363 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4364 self._svd2pac_as_ptr().add(0x218usize),
4365 )
4366 }
4367 }
4368 #[inline(always)]
4369 pub const fn p807pfs(
4370 &self,
4371 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4372 unsafe {
4373 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4374 self._svd2pac_as_ptr().add(0x21cusize),
4375 )
4376 }
4377 }
4378 #[inline(always)]
4379 pub const fn p808pfs(
4380 &self,
4381 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4382 unsafe {
4383 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4384 self._svd2pac_as_ptr().add(0x220usize),
4385 )
4386 }
4387 }
4388 #[inline(always)]
4389 pub const fn p809pfs(
4390 &self,
4391 ) -> &'static crate::common::Reg<self::P80Pfs_SPEC, crate::common::RW> {
4392 unsafe {
4393 crate::common::Reg::<self::P80Pfs_SPEC, crate::common::RW>::from_ptr(
4394 self._svd2pac_as_ptr().add(0x224usize),
4395 )
4396 }
4397 }
4398
4399 #[doc = "Port 80%s Pin Function Select Register"]
4400 #[inline(always)]
4401 pub const fn p80pfs_ha(
4402 &self,
4403 ) -> &'static crate::common::ClusterRegisterArray<
4404 crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW>,
4405 10,
4406 0x4,
4407 > {
4408 unsafe {
4409 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x200usize))
4410 }
4411 }
4412 #[inline(always)]
4413 pub const fn p800pfs_ha(
4414 &self,
4415 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4416 unsafe {
4417 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4418 self._svd2pac_as_ptr().add(0x200usize),
4419 )
4420 }
4421 }
4422 #[inline(always)]
4423 pub const fn p801pfs_ha(
4424 &self,
4425 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4426 unsafe {
4427 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4428 self._svd2pac_as_ptr().add(0x204usize),
4429 )
4430 }
4431 }
4432 #[inline(always)]
4433 pub const fn p802pfs_ha(
4434 &self,
4435 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4436 unsafe {
4437 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4438 self._svd2pac_as_ptr().add(0x208usize),
4439 )
4440 }
4441 }
4442 #[inline(always)]
4443 pub const fn p803pfs_ha(
4444 &self,
4445 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4446 unsafe {
4447 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4448 self._svd2pac_as_ptr().add(0x20cusize),
4449 )
4450 }
4451 }
4452 #[inline(always)]
4453 pub const fn p804pfs_ha(
4454 &self,
4455 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4456 unsafe {
4457 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4458 self._svd2pac_as_ptr().add(0x210usize),
4459 )
4460 }
4461 }
4462 #[inline(always)]
4463 pub const fn p805pfs_ha(
4464 &self,
4465 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4466 unsafe {
4467 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4468 self._svd2pac_as_ptr().add(0x214usize),
4469 )
4470 }
4471 }
4472 #[inline(always)]
4473 pub const fn p806pfs_ha(
4474 &self,
4475 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4476 unsafe {
4477 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4478 self._svd2pac_as_ptr().add(0x218usize),
4479 )
4480 }
4481 }
4482 #[inline(always)]
4483 pub const fn p807pfs_ha(
4484 &self,
4485 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4486 unsafe {
4487 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4488 self._svd2pac_as_ptr().add(0x21cusize),
4489 )
4490 }
4491 }
4492 #[inline(always)]
4493 pub const fn p808pfs_ha(
4494 &self,
4495 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4496 unsafe {
4497 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4498 self._svd2pac_as_ptr().add(0x220usize),
4499 )
4500 }
4501 }
4502 #[inline(always)]
4503 pub const fn p809pfs_ha(
4504 &self,
4505 ) -> &'static crate::common::Reg<self::P80PfsHa_SPEC, crate::common::RW> {
4506 unsafe {
4507 crate::common::Reg::<self::P80PfsHa_SPEC, crate::common::RW>::from_ptr(
4508 self._svd2pac_as_ptr().add(0x224usize),
4509 )
4510 }
4511 }
4512
4513 #[doc = "Port 80%s Pin Function Select Register"]
4514 #[inline(always)]
4515 pub const fn p80pfs_by(
4516 &self,
4517 ) -> &'static crate::common::ClusterRegisterArray<
4518 crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW>,
4519 10,
4520 0x4,
4521 > {
4522 unsafe {
4523 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x200usize))
4524 }
4525 }
4526 #[inline(always)]
4527 pub const fn p800pfs_by(
4528 &self,
4529 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4530 unsafe {
4531 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4532 self._svd2pac_as_ptr().add(0x200usize),
4533 )
4534 }
4535 }
4536 #[inline(always)]
4537 pub const fn p801pfs_by(
4538 &self,
4539 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4540 unsafe {
4541 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4542 self._svd2pac_as_ptr().add(0x204usize),
4543 )
4544 }
4545 }
4546 #[inline(always)]
4547 pub const fn p802pfs_by(
4548 &self,
4549 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4550 unsafe {
4551 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4552 self._svd2pac_as_ptr().add(0x208usize),
4553 )
4554 }
4555 }
4556 #[inline(always)]
4557 pub const fn p803pfs_by(
4558 &self,
4559 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4560 unsafe {
4561 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4562 self._svd2pac_as_ptr().add(0x20cusize),
4563 )
4564 }
4565 }
4566 #[inline(always)]
4567 pub const fn p804pfs_by(
4568 &self,
4569 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4570 unsafe {
4571 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4572 self._svd2pac_as_ptr().add(0x210usize),
4573 )
4574 }
4575 }
4576 #[inline(always)]
4577 pub const fn p805pfs_by(
4578 &self,
4579 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4580 unsafe {
4581 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4582 self._svd2pac_as_ptr().add(0x214usize),
4583 )
4584 }
4585 }
4586 #[inline(always)]
4587 pub const fn p806pfs_by(
4588 &self,
4589 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4590 unsafe {
4591 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4592 self._svd2pac_as_ptr().add(0x218usize),
4593 )
4594 }
4595 }
4596 #[inline(always)]
4597 pub const fn p807pfs_by(
4598 &self,
4599 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4600 unsafe {
4601 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4602 self._svd2pac_as_ptr().add(0x21cusize),
4603 )
4604 }
4605 }
4606 #[inline(always)]
4607 pub const fn p808pfs_by(
4608 &self,
4609 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4610 unsafe {
4611 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4612 self._svd2pac_as_ptr().add(0x220usize),
4613 )
4614 }
4615 }
4616 #[inline(always)]
4617 pub const fn p809pfs_by(
4618 &self,
4619 ) -> &'static crate::common::Reg<self::P80PfsBy_SPEC, crate::common::RW> {
4620 unsafe {
4621 crate::common::Reg::<self::P80PfsBy_SPEC, crate::common::RW>::from_ptr(
4622 self._svd2pac_as_ptr().add(0x224usize),
4623 )
4624 }
4625 }
4626
4627 #[doc = "Port 8%s Pin Function Select Register"]
4628 #[inline(always)]
4629 pub const fn p8pfs(
4630 &self,
4631 ) -> &'static crate::common::ClusterRegisterArray<
4632 crate::common::Reg<self::P8Pfs_SPEC, crate::common::RW>,
4633 2,
4634 0x4,
4635 > {
4636 unsafe {
4637 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x238usize))
4638 }
4639 }
4640 #[inline(always)]
4641 pub const fn p814pfs(
4642 &self,
4643 ) -> &'static crate::common::Reg<self::P8Pfs_SPEC, crate::common::RW> {
4644 unsafe {
4645 crate::common::Reg::<self::P8Pfs_SPEC, crate::common::RW>::from_ptr(
4646 self._svd2pac_as_ptr().add(0x238usize),
4647 )
4648 }
4649 }
4650 #[inline(always)]
4651 pub const fn p815pfs(
4652 &self,
4653 ) -> &'static crate::common::Reg<self::P8Pfs_SPEC, crate::common::RW> {
4654 unsafe {
4655 crate::common::Reg::<self::P8Pfs_SPEC, crate::common::RW>::from_ptr(
4656 self._svd2pac_as_ptr().add(0x23cusize),
4657 )
4658 }
4659 }
4660
4661 #[doc = "Port 8%s Pin Function Select Register"]
4662 #[inline(always)]
4663 pub const fn p8pfs_ha(
4664 &self,
4665 ) -> &'static crate::common::ClusterRegisterArray<
4666 crate::common::Reg<self::P8PfsHa_SPEC, crate::common::RW>,
4667 2,
4668 0x4,
4669 > {
4670 unsafe {
4671 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x238usize))
4672 }
4673 }
4674 #[inline(always)]
4675 pub const fn p814pfs_ha(
4676 &self,
4677 ) -> &'static crate::common::Reg<self::P8PfsHa_SPEC, crate::common::RW> {
4678 unsafe {
4679 crate::common::Reg::<self::P8PfsHa_SPEC, crate::common::RW>::from_ptr(
4680 self._svd2pac_as_ptr().add(0x238usize),
4681 )
4682 }
4683 }
4684 #[inline(always)]
4685 pub const fn p815pfs_ha(
4686 &self,
4687 ) -> &'static crate::common::Reg<self::P8PfsHa_SPEC, crate::common::RW> {
4688 unsafe {
4689 crate::common::Reg::<self::P8PfsHa_SPEC, crate::common::RW>::from_ptr(
4690 self._svd2pac_as_ptr().add(0x23cusize),
4691 )
4692 }
4693 }
4694
4695 #[doc = "Port 8%s Pin Function Select Register"]
4696 #[inline(always)]
4697 pub const fn p8pfs_by(
4698 &self,
4699 ) -> &'static crate::common::ClusterRegisterArray<
4700 crate::common::Reg<self::P8PfsBy_SPEC, crate::common::RW>,
4701 2,
4702 0x4,
4703 > {
4704 unsafe {
4705 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x238usize))
4706 }
4707 }
4708 #[inline(always)]
4709 pub const fn p814pfs_by(
4710 &self,
4711 ) -> &'static crate::common::Reg<self::P8PfsBy_SPEC, crate::common::RW> {
4712 unsafe {
4713 crate::common::Reg::<self::P8PfsBy_SPEC, crate::common::RW>::from_ptr(
4714 self._svd2pac_as_ptr().add(0x238usize),
4715 )
4716 }
4717 }
4718 #[inline(always)]
4719 pub const fn p815pfs_by(
4720 &self,
4721 ) -> &'static crate::common::Reg<self::P8PfsBy_SPEC, crate::common::RW> {
4722 unsafe {
4723 crate::common::Reg::<self::P8PfsBy_SPEC, crate::common::RW>::from_ptr(
4724 self._svd2pac_as_ptr().add(0x23cusize),
4725 )
4726 }
4727 }
4728
4729 #[doc = "Port 90%s Pin Function Select Register"]
4730 #[inline(always)]
4731 pub const fn p90pfs(
4732 &self,
4733 ) -> &'static crate::common::ClusterRegisterArray<
4734 crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW>,
4735 10,
4736 0x4,
4737 > {
4738 unsafe {
4739 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x240usize))
4740 }
4741 }
4742 #[inline(always)]
4743 pub const fn p900pfs(
4744 &self,
4745 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4746 unsafe {
4747 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4748 self._svd2pac_as_ptr().add(0x240usize),
4749 )
4750 }
4751 }
4752 #[inline(always)]
4753 pub const fn p901pfs(
4754 &self,
4755 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4756 unsafe {
4757 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4758 self._svd2pac_as_ptr().add(0x244usize),
4759 )
4760 }
4761 }
4762 #[inline(always)]
4763 pub const fn p902pfs(
4764 &self,
4765 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4766 unsafe {
4767 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4768 self._svd2pac_as_ptr().add(0x248usize),
4769 )
4770 }
4771 }
4772 #[inline(always)]
4773 pub const fn p903pfs(
4774 &self,
4775 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4776 unsafe {
4777 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4778 self._svd2pac_as_ptr().add(0x24cusize),
4779 )
4780 }
4781 }
4782 #[inline(always)]
4783 pub const fn p904pfs(
4784 &self,
4785 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4786 unsafe {
4787 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4788 self._svd2pac_as_ptr().add(0x250usize),
4789 )
4790 }
4791 }
4792 #[inline(always)]
4793 pub const fn p905pfs(
4794 &self,
4795 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4796 unsafe {
4797 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4798 self._svd2pac_as_ptr().add(0x254usize),
4799 )
4800 }
4801 }
4802 #[inline(always)]
4803 pub const fn p906pfs(
4804 &self,
4805 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4806 unsafe {
4807 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4808 self._svd2pac_as_ptr().add(0x258usize),
4809 )
4810 }
4811 }
4812 #[inline(always)]
4813 pub const fn p907pfs(
4814 &self,
4815 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4816 unsafe {
4817 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4818 self._svd2pac_as_ptr().add(0x25cusize),
4819 )
4820 }
4821 }
4822 #[inline(always)]
4823 pub const fn p908pfs(
4824 &self,
4825 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4826 unsafe {
4827 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4828 self._svd2pac_as_ptr().add(0x260usize),
4829 )
4830 }
4831 }
4832 #[inline(always)]
4833 pub const fn p909pfs(
4834 &self,
4835 ) -> &'static crate::common::Reg<self::P90Pfs_SPEC, crate::common::RW> {
4836 unsafe {
4837 crate::common::Reg::<self::P90Pfs_SPEC, crate::common::RW>::from_ptr(
4838 self._svd2pac_as_ptr().add(0x264usize),
4839 )
4840 }
4841 }
4842
4843 #[doc = "Port 90%s Pin Function Select Register"]
4844 #[inline(always)]
4845 pub const fn p90pfs_ha(
4846 &self,
4847 ) -> &'static crate::common::ClusterRegisterArray<
4848 crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW>,
4849 10,
4850 0x4,
4851 > {
4852 unsafe {
4853 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x240usize))
4854 }
4855 }
4856 #[inline(always)]
4857 pub const fn p900pfs_ha(
4858 &self,
4859 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4860 unsafe {
4861 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4862 self._svd2pac_as_ptr().add(0x240usize),
4863 )
4864 }
4865 }
4866 #[inline(always)]
4867 pub const fn p901pfs_ha(
4868 &self,
4869 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4870 unsafe {
4871 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4872 self._svd2pac_as_ptr().add(0x244usize),
4873 )
4874 }
4875 }
4876 #[inline(always)]
4877 pub const fn p902pfs_ha(
4878 &self,
4879 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4880 unsafe {
4881 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4882 self._svd2pac_as_ptr().add(0x248usize),
4883 )
4884 }
4885 }
4886 #[inline(always)]
4887 pub const fn p903pfs_ha(
4888 &self,
4889 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4890 unsafe {
4891 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4892 self._svd2pac_as_ptr().add(0x24cusize),
4893 )
4894 }
4895 }
4896 #[inline(always)]
4897 pub const fn p904pfs_ha(
4898 &self,
4899 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4900 unsafe {
4901 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4902 self._svd2pac_as_ptr().add(0x250usize),
4903 )
4904 }
4905 }
4906 #[inline(always)]
4907 pub const fn p905pfs_ha(
4908 &self,
4909 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4910 unsafe {
4911 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4912 self._svd2pac_as_ptr().add(0x254usize),
4913 )
4914 }
4915 }
4916 #[inline(always)]
4917 pub const fn p906pfs_ha(
4918 &self,
4919 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4920 unsafe {
4921 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4922 self._svd2pac_as_ptr().add(0x258usize),
4923 )
4924 }
4925 }
4926 #[inline(always)]
4927 pub const fn p907pfs_ha(
4928 &self,
4929 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4930 unsafe {
4931 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4932 self._svd2pac_as_ptr().add(0x25cusize),
4933 )
4934 }
4935 }
4936 #[inline(always)]
4937 pub const fn p908pfs_ha(
4938 &self,
4939 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4940 unsafe {
4941 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4942 self._svd2pac_as_ptr().add(0x260usize),
4943 )
4944 }
4945 }
4946 #[inline(always)]
4947 pub const fn p909pfs_ha(
4948 &self,
4949 ) -> &'static crate::common::Reg<self::P90PfsHa_SPEC, crate::common::RW> {
4950 unsafe {
4951 crate::common::Reg::<self::P90PfsHa_SPEC, crate::common::RW>::from_ptr(
4952 self._svd2pac_as_ptr().add(0x264usize),
4953 )
4954 }
4955 }
4956
4957 #[doc = "Port 90%s Pin Function Select Register"]
4958 #[inline(always)]
4959 pub const fn p90pfs_by(
4960 &self,
4961 ) -> &'static crate::common::ClusterRegisterArray<
4962 crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW>,
4963 10,
4964 0x4,
4965 > {
4966 unsafe {
4967 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x240usize))
4968 }
4969 }
4970 #[inline(always)]
4971 pub const fn p900pfs_by(
4972 &self,
4973 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
4974 unsafe {
4975 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
4976 self._svd2pac_as_ptr().add(0x240usize),
4977 )
4978 }
4979 }
4980 #[inline(always)]
4981 pub const fn p901pfs_by(
4982 &self,
4983 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
4984 unsafe {
4985 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
4986 self._svd2pac_as_ptr().add(0x244usize),
4987 )
4988 }
4989 }
4990 #[inline(always)]
4991 pub const fn p902pfs_by(
4992 &self,
4993 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
4994 unsafe {
4995 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
4996 self._svd2pac_as_ptr().add(0x248usize),
4997 )
4998 }
4999 }
5000 #[inline(always)]
5001 pub const fn p903pfs_by(
5002 &self,
5003 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5004 unsafe {
5005 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5006 self._svd2pac_as_ptr().add(0x24cusize),
5007 )
5008 }
5009 }
5010 #[inline(always)]
5011 pub const fn p904pfs_by(
5012 &self,
5013 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5014 unsafe {
5015 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5016 self._svd2pac_as_ptr().add(0x250usize),
5017 )
5018 }
5019 }
5020 #[inline(always)]
5021 pub const fn p905pfs_by(
5022 &self,
5023 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5024 unsafe {
5025 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5026 self._svd2pac_as_ptr().add(0x254usize),
5027 )
5028 }
5029 }
5030 #[inline(always)]
5031 pub const fn p906pfs_by(
5032 &self,
5033 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5034 unsafe {
5035 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5036 self._svd2pac_as_ptr().add(0x258usize),
5037 )
5038 }
5039 }
5040 #[inline(always)]
5041 pub const fn p907pfs_by(
5042 &self,
5043 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5044 unsafe {
5045 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5046 self._svd2pac_as_ptr().add(0x25cusize),
5047 )
5048 }
5049 }
5050 #[inline(always)]
5051 pub const fn p908pfs_by(
5052 &self,
5053 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5054 unsafe {
5055 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5056 self._svd2pac_as_ptr().add(0x260usize),
5057 )
5058 }
5059 }
5060 #[inline(always)]
5061 pub const fn p909pfs_by(
5062 &self,
5063 ) -> &'static crate::common::Reg<self::P90PfsBy_SPEC, crate::common::RW> {
5064 unsafe {
5065 crate::common::Reg::<self::P90PfsBy_SPEC, crate::common::RW>::from_ptr(
5066 self._svd2pac_as_ptr().add(0x264usize),
5067 )
5068 }
5069 }
5070
5071 #[doc = "Port 9%s Pin Function Select Register"]
5072 #[inline(always)]
5073 pub const fn p9pfs(
5074 &self,
5075 ) -> &'static crate::common::ClusterRegisterArray<
5076 crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW>,
5077 6,
5078 0x4,
5079 > {
5080 unsafe {
5081 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x268usize))
5082 }
5083 }
5084 #[inline(always)]
5085 pub const fn p910pfs(
5086 &self,
5087 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5088 unsafe {
5089 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5090 self._svd2pac_as_ptr().add(0x268usize),
5091 )
5092 }
5093 }
5094 #[inline(always)]
5095 pub const fn p911pfs(
5096 &self,
5097 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5098 unsafe {
5099 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5100 self._svd2pac_as_ptr().add(0x26cusize),
5101 )
5102 }
5103 }
5104 #[inline(always)]
5105 pub const fn p912pfs(
5106 &self,
5107 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5108 unsafe {
5109 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5110 self._svd2pac_as_ptr().add(0x270usize),
5111 )
5112 }
5113 }
5114 #[inline(always)]
5115 pub const fn p913pfs(
5116 &self,
5117 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5118 unsafe {
5119 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5120 self._svd2pac_as_ptr().add(0x274usize),
5121 )
5122 }
5123 }
5124 #[inline(always)]
5125 pub const fn p914pfs(
5126 &self,
5127 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5128 unsafe {
5129 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5130 self._svd2pac_as_ptr().add(0x278usize),
5131 )
5132 }
5133 }
5134 #[inline(always)]
5135 pub const fn p915pfs(
5136 &self,
5137 ) -> &'static crate::common::Reg<self::P9Pfs_SPEC, crate::common::RW> {
5138 unsafe {
5139 crate::common::Reg::<self::P9Pfs_SPEC, crate::common::RW>::from_ptr(
5140 self._svd2pac_as_ptr().add(0x27cusize),
5141 )
5142 }
5143 }
5144
5145 #[doc = "Port 9%s Pin Function Select Register"]
5146 #[inline(always)]
5147 pub const fn p9pfs_ha(
5148 &self,
5149 ) -> &'static crate::common::ClusterRegisterArray<
5150 crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW>,
5151 6,
5152 0x4,
5153 > {
5154 unsafe {
5155 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x268usize))
5156 }
5157 }
5158 #[inline(always)]
5159 pub const fn p910pfs_ha(
5160 &self,
5161 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5162 unsafe {
5163 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5164 self._svd2pac_as_ptr().add(0x268usize),
5165 )
5166 }
5167 }
5168 #[inline(always)]
5169 pub const fn p911pfs_ha(
5170 &self,
5171 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5172 unsafe {
5173 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5174 self._svd2pac_as_ptr().add(0x26cusize),
5175 )
5176 }
5177 }
5178 #[inline(always)]
5179 pub const fn p912pfs_ha(
5180 &self,
5181 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5182 unsafe {
5183 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5184 self._svd2pac_as_ptr().add(0x270usize),
5185 )
5186 }
5187 }
5188 #[inline(always)]
5189 pub const fn p913pfs_ha(
5190 &self,
5191 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5192 unsafe {
5193 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5194 self._svd2pac_as_ptr().add(0x274usize),
5195 )
5196 }
5197 }
5198 #[inline(always)]
5199 pub const fn p914pfs_ha(
5200 &self,
5201 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5202 unsafe {
5203 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5204 self._svd2pac_as_ptr().add(0x278usize),
5205 )
5206 }
5207 }
5208 #[inline(always)]
5209 pub const fn p915pfs_ha(
5210 &self,
5211 ) -> &'static crate::common::Reg<self::P9PfsHa_SPEC, crate::common::RW> {
5212 unsafe {
5213 crate::common::Reg::<self::P9PfsHa_SPEC, crate::common::RW>::from_ptr(
5214 self._svd2pac_as_ptr().add(0x27cusize),
5215 )
5216 }
5217 }
5218
5219 #[doc = "Port 9%s Pin Function Select Register"]
5220 #[inline(always)]
5221 pub const fn p9pfs_by(
5222 &self,
5223 ) -> &'static crate::common::ClusterRegisterArray<
5224 crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW>,
5225 6,
5226 0x4,
5227 > {
5228 unsafe {
5229 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x268usize))
5230 }
5231 }
5232 #[inline(always)]
5233 pub const fn p910pfs_by(
5234 &self,
5235 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5236 unsafe {
5237 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5238 self._svd2pac_as_ptr().add(0x268usize),
5239 )
5240 }
5241 }
5242 #[inline(always)]
5243 pub const fn p911pfs_by(
5244 &self,
5245 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5246 unsafe {
5247 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5248 self._svd2pac_as_ptr().add(0x26cusize),
5249 )
5250 }
5251 }
5252 #[inline(always)]
5253 pub const fn p912pfs_by(
5254 &self,
5255 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5256 unsafe {
5257 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5258 self._svd2pac_as_ptr().add(0x270usize),
5259 )
5260 }
5261 }
5262 #[inline(always)]
5263 pub const fn p913pfs_by(
5264 &self,
5265 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5266 unsafe {
5267 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5268 self._svd2pac_as_ptr().add(0x274usize),
5269 )
5270 }
5271 }
5272 #[inline(always)]
5273 pub const fn p914pfs_by(
5274 &self,
5275 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5276 unsafe {
5277 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5278 self._svd2pac_as_ptr().add(0x278usize),
5279 )
5280 }
5281 }
5282 #[inline(always)]
5283 pub const fn p915pfs_by(
5284 &self,
5285 ) -> &'static crate::common::Reg<self::P9PfsBy_SPEC, crate::common::RW> {
5286 unsafe {
5287 crate::common::Reg::<self::P9PfsBy_SPEC, crate::common::RW>::from_ptr(
5288 self._svd2pac_as_ptr().add(0x27cusize),
5289 )
5290 }
5291 }
5292
5293 #[doc = "Port A0%s Pin Function Select Register"]
5294 #[inline(always)]
5295 pub const fn pa0pfs(
5296 &self,
5297 ) -> &'static crate::common::ClusterRegisterArray<
5298 crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW>,
5299 10,
5300 0x4,
5301 > {
5302 unsafe {
5303 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x280usize))
5304 }
5305 }
5306 #[inline(always)]
5307 pub const fn pa00pfs(
5308 &self,
5309 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5310 unsafe {
5311 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5312 self._svd2pac_as_ptr().add(0x280usize),
5313 )
5314 }
5315 }
5316 #[inline(always)]
5317 pub const fn pa01pfs(
5318 &self,
5319 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5320 unsafe {
5321 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5322 self._svd2pac_as_ptr().add(0x284usize),
5323 )
5324 }
5325 }
5326 #[inline(always)]
5327 pub const fn pa02pfs(
5328 &self,
5329 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5330 unsafe {
5331 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5332 self._svd2pac_as_ptr().add(0x288usize),
5333 )
5334 }
5335 }
5336 #[inline(always)]
5337 pub const fn pa03pfs(
5338 &self,
5339 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5340 unsafe {
5341 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5342 self._svd2pac_as_ptr().add(0x28cusize),
5343 )
5344 }
5345 }
5346 #[inline(always)]
5347 pub const fn pa04pfs(
5348 &self,
5349 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5350 unsafe {
5351 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5352 self._svd2pac_as_ptr().add(0x290usize),
5353 )
5354 }
5355 }
5356 #[inline(always)]
5357 pub const fn pa05pfs(
5358 &self,
5359 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5360 unsafe {
5361 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5362 self._svd2pac_as_ptr().add(0x294usize),
5363 )
5364 }
5365 }
5366 #[inline(always)]
5367 pub const fn pa06pfs(
5368 &self,
5369 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5370 unsafe {
5371 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5372 self._svd2pac_as_ptr().add(0x298usize),
5373 )
5374 }
5375 }
5376 #[inline(always)]
5377 pub const fn pa07pfs(
5378 &self,
5379 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5380 unsafe {
5381 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5382 self._svd2pac_as_ptr().add(0x29cusize),
5383 )
5384 }
5385 }
5386 #[inline(always)]
5387 pub const fn pa08pfs(
5388 &self,
5389 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5390 unsafe {
5391 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5392 self._svd2pac_as_ptr().add(0x2a0usize),
5393 )
5394 }
5395 }
5396 #[inline(always)]
5397 pub const fn pa09pfs(
5398 &self,
5399 ) -> &'static crate::common::Reg<self::Pa0Pfs_SPEC, crate::common::RW> {
5400 unsafe {
5401 crate::common::Reg::<self::Pa0Pfs_SPEC, crate::common::RW>::from_ptr(
5402 self._svd2pac_as_ptr().add(0x2a4usize),
5403 )
5404 }
5405 }
5406
5407 #[doc = "Port A0%s Pin Function Select Register"]
5408 #[inline(always)]
5409 pub const fn pa0pfs_ha(
5410 &self,
5411 ) -> &'static crate::common::ClusterRegisterArray<
5412 crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW>,
5413 10,
5414 0x4,
5415 > {
5416 unsafe {
5417 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x280usize))
5418 }
5419 }
5420 #[inline(always)]
5421 pub const fn pa00pfs_ha(
5422 &self,
5423 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5424 unsafe {
5425 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5426 self._svd2pac_as_ptr().add(0x280usize),
5427 )
5428 }
5429 }
5430 #[inline(always)]
5431 pub const fn pa01pfs_ha(
5432 &self,
5433 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5434 unsafe {
5435 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5436 self._svd2pac_as_ptr().add(0x284usize),
5437 )
5438 }
5439 }
5440 #[inline(always)]
5441 pub const fn pa02pfs_ha(
5442 &self,
5443 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5444 unsafe {
5445 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5446 self._svd2pac_as_ptr().add(0x288usize),
5447 )
5448 }
5449 }
5450 #[inline(always)]
5451 pub const fn pa03pfs_ha(
5452 &self,
5453 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5454 unsafe {
5455 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5456 self._svd2pac_as_ptr().add(0x28cusize),
5457 )
5458 }
5459 }
5460 #[inline(always)]
5461 pub const fn pa04pfs_ha(
5462 &self,
5463 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5464 unsafe {
5465 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5466 self._svd2pac_as_ptr().add(0x290usize),
5467 )
5468 }
5469 }
5470 #[inline(always)]
5471 pub const fn pa05pfs_ha(
5472 &self,
5473 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5474 unsafe {
5475 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5476 self._svd2pac_as_ptr().add(0x294usize),
5477 )
5478 }
5479 }
5480 #[inline(always)]
5481 pub const fn pa06pfs_ha(
5482 &self,
5483 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5484 unsafe {
5485 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5486 self._svd2pac_as_ptr().add(0x298usize),
5487 )
5488 }
5489 }
5490 #[inline(always)]
5491 pub const fn pa07pfs_ha(
5492 &self,
5493 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5494 unsafe {
5495 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5496 self._svd2pac_as_ptr().add(0x29cusize),
5497 )
5498 }
5499 }
5500 #[inline(always)]
5501 pub const fn pa08pfs_ha(
5502 &self,
5503 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5504 unsafe {
5505 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5506 self._svd2pac_as_ptr().add(0x2a0usize),
5507 )
5508 }
5509 }
5510 #[inline(always)]
5511 pub const fn pa09pfs_ha(
5512 &self,
5513 ) -> &'static crate::common::Reg<self::Pa0PfsHa_SPEC, crate::common::RW> {
5514 unsafe {
5515 crate::common::Reg::<self::Pa0PfsHa_SPEC, crate::common::RW>::from_ptr(
5516 self._svd2pac_as_ptr().add(0x2a4usize),
5517 )
5518 }
5519 }
5520
5521 #[doc = "Port A0%s Pin Function Select Register"]
5522 #[inline(always)]
5523 pub const fn pa0pfs_by(
5524 &self,
5525 ) -> &'static crate::common::ClusterRegisterArray<
5526 crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW>,
5527 10,
5528 0x4,
5529 > {
5530 unsafe {
5531 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x280usize))
5532 }
5533 }
5534 #[inline(always)]
5535 pub const fn pa00pfs_by(
5536 &self,
5537 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5538 unsafe {
5539 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5540 self._svd2pac_as_ptr().add(0x280usize),
5541 )
5542 }
5543 }
5544 #[inline(always)]
5545 pub const fn pa01pfs_by(
5546 &self,
5547 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5548 unsafe {
5549 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5550 self._svd2pac_as_ptr().add(0x284usize),
5551 )
5552 }
5553 }
5554 #[inline(always)]
5555 pub const fn pa02pfs_by(
5556 &self,
5557 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5558 unsafe {
5559 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5560 self._svd2pac_as_ptr().add(0x288usize),
5561 )
5562 }
5563 }
5564 #[inline(always)]
5565 pub const fn pa03pfs_by(
5566 &self,
5567 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5568 unsafe {
5569 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5570 self._svd2pac_as_ptr().add(0x28cusize),
5571 )
5572 }
5573 }
5574 #[inline(always)]
5575 pub const fn pa04pfs_by(
5576 &self,
5577 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5578 unsafe {
5579 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5580 self._svd2pac_as_ptr().add(0x290usize),
5581 )
5582 }
5583 }
5584 #[inline(always)]
5585 pub const fn pa05pfs_by(
5586 &self,
5587 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5588 unsafe {
5589 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5590 self._svd2pac_as_ptr().add(0x294usize),
5591 )
5592 }
5593 }
5594 #[inline(always)]
5595 pub const fn pa06pfs_by(
5596 &self,
5597 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5598 unsafe {
5599 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5600 self._svd2pac_as_ptr().add(0x298usize),
5601 )
5602 }
5603 }
5604 #[inline(always)]
5605 pub const fn pa07pfs_by(
5606 &self,
5607 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5608 unsafe {
5609 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5610 self._svd2pac_as_ptr().add(0x29cusize),
5611 )
5612 }
5613 }
5614 #[inline(always)]
5615 pub const fn pa08pfs_by(
5616 &self,
5617 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5618 unsafe {
5619 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5620 self._svd2pac_as_ptr().add(0x2a0usize),
5621 )
5622 }
5623 }
5624 #[inline(always)]
5625 pub const fn pa09pfs_by(
5626 &self,
5627 ) -> &'static crate::common::Reg<self::Pa0PfsBy_SPEC, crate::common::RW> {
5628 unsafe {
5629 crate::common::Reg::<self::Pa0PfsBy_SPEC, crate::common::RW>::from_ptr(
5630 self._svd2pac_as_ptr().add(0x2a4usize),
5631 )
5632 }
5633 }
5634
5635 #[doc = "Port An Pin Function Select Register"]
5636 #[inline(always)]
5637 pub const fn papfs(
5638 &self,
5639 ) -> &'static crate::common::ClusterRegisterArray<
5640 crate::common::Reg<self::Papfs_SPEC, crate::common::RW>,
5641 6,
5642 0x4,
5643 > {
5644 unsafe {
5645 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2a8usize))
5646 }
5647 }
5648 #[inline(always)]
5649 pub const fn pa10pfs(
5650 &self,
5651 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5652 unsafe {
5653 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5654 self._svd2pac_as_ptr().add(0x2a8usize),
5655 )
5656 }
5657 }
5658 #[inline(always)]
5659 pub const fn pa11pfs(
5660 &self,
5661 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5662 unsafe {
5663 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5664 self._svd2pac_as_ptr().add(0x2acusize),
5665 )
5666 }
5667 }
5668 #[inline(always)]
5669 pub const fn pa12pfs(
5670 &self,
5671 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5672 unsafe {
5673 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5674 self._svd2pac_as_ptr().add(0x2b0usize),
5675 )
5676 }
5677 }
5678 #[inline(always)]
5679 pub const fn pa13pfs(
5680 &self,
5681 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5682 unsafe {
5683 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5684 self._svd2pac_as_ptr().add(0x2b4usize),
5685 )
5686 }
5687 }
5688 #[inline(always)]
5689 pub const fn pa14pfs(
5690 &self,
5691 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5692 unsafe {
5693 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5694 self._svd2pac_as_ptr().add(0x2b8usize),
5695 )
5696 }
5697 }
5698 #[inline(always)]
5699 pub const fn pa15pfs(
5700 &self,
5701 ) -> &'static crate::common::Reg<self::Papfs_SPEC, crate::common::RW> {
5702 unsafe {
5703 crate::common::Reg::<self::Papfs_SPEC, crate::common::RW>::from_ptr(
5704 self._svd2pac_as_ptr().add(0x2bcusize),
5705 )
5706 }
5707 }
5708
5709 #[doc = "Port An Pin Function Select Register"]
5710 #[inline(always)]
5711 pub const fn papfs_ha(
5712 &self,
5713 ) -> &'static crate::common::ClusterRegisterArray<
5714 crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW>,
5715 6,
5716 0x4,
5717 > {
5718 unsafe {
5719 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2a8usize))
5720 }
5721 }
5722 #[inline(always)]
5723 pub const fn pa10pfs_ha(
5724 &self,
5725 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5726 unsafe {
5727 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5728 self._svd2pac_as_ptr().add(0x2a8usize),
5729 )
5730 }
5731 }
5732 #[inline(always)]
5733 pub const fn pa11pfs_ha(
5734 &self,
5735 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5736 unsafe {
5737 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5738 self._svd2pac_as_ptr().add(0x2acusize),
5739 )
5740 }
5741 }
5742 #[inline(always)]
5743 pub const fn pa12pfs_ha(
5744 &self,
5745 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5746 unsafe {
5747 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5748 self._svd2pac_as_ptr().add(0x2b0usize),
5749 )
5750 }
5751 }
5752 #[inline(always)]
5753 pub const fn pa13pfs_ha(
5754 &self,
5755 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5756 unsafe {
5757 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5758 self._svd2pac_as_ptr().add(0x2b4usize),
5759 )
5760 }
5761 }
5762 #[inline(always)]
5763 pub const fn pa14pfs_ha(
5764 &self,
5765 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5766 unsafe {
5767 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5768 self._svd2pac_as_ptr().add(0x2b8usize),
5769 )
5770 }
5771 }
5772 #[inline(always)]
5773 pub const fn pa15pfs_ha(
5774 &self,
5775 ) -> &'static crate::common::Reg<self::PapfsHa_SPEC, crate::common::RW> {
5776 unsafe {
5777 crate::common::Reg::<self::PapfsHa_SPEC, crate::common::RW>::from_ptr(
5778 self._svd2pac_as_ptr().add(0x2bcusize),
5779 )
5780 }
5781 }
5782
5783 #[doc = "Port An Pin Function Select Register"]
5784 #[inline(always)]
5785 pub const fn papfs_by(
5786 &self,
5787 ) -> &'static crate::common::ClusterRegisterArray<
5788 crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW>,
5789 6,
5790 0x4,
5791 > {
5792 unsafe {
5793 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2a8usize))
5794 }
5795 }
5796 #[inline(always)]
5797 pub const fn pa10pfs_by(
5798 &self,
5799 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5800 unsafe {
5801 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5802 self._svd2pac_as_ptr().add(0x2a8usize),
5803 )
5804 }
5805 }
5806 #[inline(always)]
5807 pub const fn pa11pfs_by(
5808 &self,
5809 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5810 unsafe {
5811 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5812 self._svd2pac_as_ptr().add(0x2acusize),
5813 )
5814 }
5815 }
5816 #[inline(always)]
5817 pub const fn pa12pfs_by(
5818 &self,
5819 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5820 unsafe {
5821 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5822 self._svd2pac_as_ptr().add(0x2b0usize),
5823 )
5824 }
5825 }
5826 #[inline(always)]
5827 pub const fn pa13pfs_by(
5828 &self,
5829 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5830 unsafe {
5831 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5832 self._svd2pac_as_ptr().add(0x2b4usize),
5833 )
5834 }
5835 }
5836 #[inline(always)]
5837 pub const fn pa14pfs_by(
5838 &self,
5839 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5840 unsafe {
5841 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5842 self._svd2pac_as_ptr().add(0x2b8usize),
5843 )
5844 }
5845 }
5846 #[inline(always)]
5847 pub const fn pa15pfs_by(
5848 &self,
5849 ) -> &'static crate::common::Reg<self::PapfsBy_SPEC, crate::common::RW> {
5850 unsafe {
5851 crate::common::Reg::<self::PapfsBy_SPEC, crate::common::RW>::from_ptr(
5852 self._svd2pac_as_ptr().add(0x2bcusize),
5853 )
5854 }
5855 }
5856
5857 #[doc = "Port B0%s Pin Function Select Register"]
5858 #[inline(always)]
5859 pub const fn pb0pfs(
5860 &self,
5861 ) -> &'static crate::common::ClusterRegisterArray<
5862 crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW>,
5863 8,
5864 0x4,
5865 > {
5866 unsafe {
5867 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2c0usize))
5868 }
5869 }
5870 #[inline(always)]
5871 pub const fn pb00pfs(
5872 &self,
5873 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5874 unsafe {
5875 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5876 self._svd2pac_as_ptr().add(0x2c0usize),
5877 )
5878 }
5879 }
5880 #[inline(always)]
5881 pub const fn pb01pfs(
5882 &self,
5883 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5884 unsafe {
5885 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5886 self._svd2pac_as_ptr().add(0x2c4usize),
5887 )
5888 }
5889 }
5890 #[inline(always)]
5891 pub const fn pb02pfs(
5892 &self,
5893 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5894 unsafe {
5895 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5896 self._svd2pac_as_ptr().add(0x2c8usize),
5897 )
5898 }
5899 }
5900 #[inline(always)]
5901 pub const fn pb03pfs(
5902 &self,
5903 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5904 unsafe {
5905 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5906 self._svd2pac_as_ptr().add(0x2ccusize),
5907 )
5908 }
5909 }
5910 #[inline(always)]
5911 pub const fn pb04pfs(
5912 &self,
5913 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5914 unsafe {
5915 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5916 self._svd2pac_as_ptr().add(0x2d0usize),
5917 )
5918 }
5919 }
5920 #[inline(always)]
5921 pub const fn pb05pfs(
5922 &self,
5923 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5924 unsafe {
5925 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5926 self._svd2pac_as_ptr().add(0x2d4usize),
5927 )
5928 }
5929 }
5930 #[inline(always)]
5931 pub const fn pb06pfs(
5932 &self,
5933 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5934 unsafe {
5935 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5936 self._svd2pac_as_ptr().add(0x2d8usize),
5937 )
5938 }
5939 }
5940 #[inline(always)]
5941 pub const fn pb07pfs(
5942 &self,
5943 ) -> &'static crate::common::Reg<self::Pb0Pfs_SPEC, crate::common::RW> {
5944 unsafe {
5945 crate::common::Reg::<self::Pb0Pfs_SPEC, crate::common::RW>::from_ptr(
5946 self._svd2pac_as_ptr().add(0x2dcusize),
5947 )
5948 }
5949 }
5950
5951 #[doc = "Port B0%s Pin Function Select Register"]
5952 #[inline(always)]
5953 pub const fn pb0pfs_ha(
5954 &self,
5955 ) -> &'static crate::common::ClusterRegisterArray<
5956 crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW>,
5957 8,
5958 0x4,
5959 > {
5960 unsafe {
5961 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2c0usize))
5962 }
5963 }
5964 #[inline(always)]
5965 pub const fn pb00pfs_ha(
5966 &self,
5967 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
5968 unsafe {
5969 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
5970 self._svd2pac_as_ptr().add(0x2c0usize),
5971 )
5972 }
5973 }
5974 #[inline(always)]
5975 pub const fn pb01pfs_ha(
5976 &self,
5977 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
5978 unsafe {
5979 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
5980 self._svd2pac_as_ptr().add(0x2c4usize),
5981 )
5982 }
5983 }
5984 #[inline(always)]
5985 pub const fn pb02pfs_ha(
5986 &self,
5987 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
5988 unsafe {
5989 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
5990 self._svd2pac_as_ptr().add(0x2c8usize),
5991 )
5992 }
5993 }
5994 #[inline(always)]
5995 pub const fn pb03pfs_ha(
5996 &self,
5997 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
5998 unsafe {
5999 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
6000 self._svd2pac_as_ptr().add(0x2ccusize),
6001 )
6002 }
6003 }
6004 #[inline(always)]
6005 pub const fn pb04pfs_ha(
6006 &self,
6007 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
6008 unsafe {
6009 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
6010 self._svd2pac_as_ptr().add(0x2d0usize),
6011 )
6012 }
6013 }
6014 #[inline(always)]
6015 pub const fn pb05pfs_ha(
6016 &self,
6017 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
6018 unsafe {
6019 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
6020 self._svd2pac_as_ptr().add(0x2d4usize),
6021 )
6022 }
6023 }
6024 #[inline(always)]
6025 pub const fn pb06pfs_ha(
6026 &self,
6027 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
6028 unsafe {
6029 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
6030 self._svd2pac_as_ptr().add(0x2d8usize),
6031 )
6032 }
6033 }
6034 #[inline(always)]
6035 pub const fn pb07pfs_ha(
6036 &self,
6037 ) -> &'static crate::common::Reg<self::Pb0PfsHa_SPEC, crate::common::RW> {
6038 unsafe {
6039 crate::common::Reg::<self::Pb0PfsHa_SPEC, crate::common::RW>::from_ptr(
6040 self._svd2pac_as_ptr().add(0x2dcusize),
6041 )
6042 }
6043 }
6044
6045 #[doc = "Port B0%s Pin Function Select Register"]
6046 #[inline(always)]
6047 pub const fn pb0pfs_by(
6048 &self,
6049 ) -> &'static crate::common::ClusterRegisterArray<
6050 crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW>,
6051 8,
6052 0x4,
6053 > {
6054 unsafe {
6055 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2c0usize))
6056 }
6057 }
6058 #[inline(always)]
6059 pub const fn pb00pfs_by(
6060 &self,
6061 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6062 unsafe {
6063 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6064 self._svd2pac_as_ptr().add(0x2c0usize),
6065 )
6066 }
6067 }
6068 #[inline(always)]
6069 pub const fn pb01pfs_by(
6070 &self,
6071 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6072 unsafe {
6073 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6074 self._svd2pac_as_ptr().add(0x2c4usize),
6075 )
6076 }
6077 }
6078 #[inline(always)]
6079 pub const fn pb02pfs_by(
6080 &self,
6081 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6082 unsafe {
6083 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6084 self._svd2pac_as_ptr().add(0x2c8usize),
6085 )
6086 }
6087 }
6088 #[inline(always)]
6089 pub const fn pb03pfs_by(
6090 &self,
6091 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6092 unsafe {
6093 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6094 self._svd2pac_as_ptr().add(0x2ccusize),
6095 )
6096 }
6097 }
6098 #[inline(always)]
6099 pub const fn pb04pfs_by(
6100 &self,
6101 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6102 unsafe {
6103 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6104 self._svd2pac_as_ptr().add(0x2d0usize),
6105 )
6106 }
6107 }
6108 #[inline(always)]
6109 pub const fn pb05pfs_by(
6110 &self,
6111 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6112 unsafe {
6113 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6114 self._svd2pac_as_ptr().add(0x2d4usize),
6115 )
6116 }
6117 }
6118 #[inline(always)]
6119 pub const fn pb06pfs_by(
6120 &self,
6121 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6122 unsafe {
6123 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6124 self._svd2pac_as_ptr().add(0x2d8usize),
6125 )
6126 }
6127 }
6128 #[inline(always)]
6129 pub const fn pb07pfs_by(
6130 &self,
6131 ) -> &'static crate::common::Reg<self::Pb0PfsBy_SPEC, crate::common::RW> {
6132 unsafe {
6133 crate::common::Reg::<self::Pb0PfsBy_SPEC, crate::common::RW>::from_ptr(
6134 self._svd2pac_as_ptr().add(0x2dcusize),
6135 )
6136 }
6137 }
6138
6139 #[doc = "Write-Protect Register for Secure"]
6140 #[inline(always)]
6141 pub const fn pwpr_s(&self) -> &'static crate::common::Reg<self::PwprS_SPEC, crate::common::RW> {
6142 unsafe {
6143 crate::common::Reg::<self::PwprS_SPEC, crate::common::RW>::from_ptr(
6144 self._svd2pac_as_ptr().add(1300usize),
6145 )
6146 }
6147 }
6148
6149 #[doc = "Port Security Attribution register"]
6150 #[inline(always)]
6151 pub const fn psar(
6152 &self,
6153 ) -> &'static crate::common::ClusterRegisterArray<
6154 crate::common::Reg<self::Psar_SPEC, crate::common::RW>,
6155 2,
6156 0x4,
6157 > {
6158 unsafe {
6159 crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x558usize))
6160 }
6161 }
6162 #[inline(always)]
6163 pub const fn pasar(&self) -> &'static crate::common::Reg<self::Psar_SPEC, crate::common::RW> {
6164 unsafe {
6165 crate::common::Reg::<self::Psar_SPEC, crate::common::RW>::from_ptr(
6166 self._svd2pac_as_ptr().add(0x558usize),
6167 )
6168 }
6169 }
6170 #[inline(always)]
6171 pub const fn pbsar(&self) -> &'static crate::common::Reg<self::Psar_SPEC, crate::common::RW> {
6172 unsafe {
6173 crate::common::Reg::<self::Psar_SPEC, crate::common::RW>::from_ptr(
6174 self._svd2pac_as_ptr().add(0x55cusize),
6175 )
6176 }
6177 }
6178}
6179#[doc(hidden)]
6180#[derive(Copy, Clone, Eq, PartialEq)]
6181pub struct P00Pfs_SPEC;
6182impl crate::sealed::RegSpec for P00Pfs_SPEC {
6183 type DataType = u32;
6184}
6185
6186#[doc = "Port 00%s Pin Function Select Register"]
6187pub type P00Pfs = crate::RegValueT<P00Pfs_SPEC>;
6188
6189impl P00Pfs {
6190 #[doc = "Port Output Data"]
6191 #[inline(always)]
6192 pub fn podr(
6193 self,
6194 ) -> crate::common::RegisterField<
6195 0,
6196 0x1,
6197 1,
6198 0,
6199 p00pfs::Podr,
6200 p00pfs::Podr,
6201 P00Pfs_SPEC,
6202 crate::common::RW,
6203 > {
6204 crate::common::RegisterField::<
6205 0,
6206 0x1,
6207 1,
6208 0,
6209 p00pfs::Podr,
6210 p00pfs::Podr,
6211 P00Pfs_SPEC,
6212 crate::common::RW,
6213 >::from_register(self, 0)
6214 }
6215
6216 #[doc = "Pmn State"]
6217 #[inline(always)]
6218 pub fn pidr(
6219 self,
6220 ) -> crate::common::RegisterField<
6221 1,
6222 0x1,
6223 1,
6224 0,
6225 p00pfs::Pidr,
6226 p00pfs::Pidr,
6227 P00Pfs_SPEC,
6228 crate::common::R,
6229 > {
6230 crate::common::RegisterField::<
6231 1,
6232 0x1,
6233 1,
6234 0,
6235 p00pfs::Pidr,
6236 p00pfs::Pidr,
6237 P00Pfs_SPEC,
6238 crate::common::R,
6239 >::from_register(self, 0)
6240 }
6241
6242 #[doc = "Port Direction"]
6243 #[inline(always)]
6244 pub fn pdr(
6245 self,
6246 ) -> crate::common::RegisterField<
6247 2,
6248 0x1,
6249 1,
6250 0,
6251 p00pfs::Pdr,
6252 p00pfs::Pdr,
6253 P00Pfs_SPEC,
6254 crate::common::RW,
6255 > {
6256 crate::common::RegisterField::<
6257 2,
6258 0x1,
6259 1,
6260 0,
6261 p00pfs::Pdr,
6262 p00pfs::Pdr,
6263 P00Pfs_SPEC,
6264 crate::common::RW,
6265 >::from_register(self, 0)
6266 }
6267
6268 #[doc = "Pull-up Control"]
6269 #[inline(always)]
6270 pub fn pcr(
6271 self,
6272 ) -> crate::common::RegisterField<
6273 4,
6274 0x1,
6275 1,
6276 0,
6277 p00pfs::Pcr,
6278 p00pfs::Pcr,
6279 P00Pfs_SPEC,
6280 crate::common::RW,
6281 > {
6282 crate::common::RegisterField::<
6283 4,
6284 0x1,
6285 1,
6286 0,
6287 p00pfs::Pcr,
6288 p00pfs::Pcr,
6289 P00Pfs_SPEC,
6290 crate::common::RW,
6291 >::from_register(self, 0)
6292 }
6293
6294 #[doc = "N-Channel Open-Drain Control"]
6295 #[inline(always)]
6296 pub fn ncodr(
6297 self,
6298 ) -> crate::common::RegisterField<
6299 6,
6300 0x1,
6301 1,
6302 0,
6303 p00pfs::Ncodr,
6304 p00pfs::Ncodr,
6305 P00Pfs_SPEC,
6306 crate::common::RW,
6307 > {
6308 crate::common::RegisterField::<
6309 6,
6310 0x1,
6311 1,
6312 0,
6313 p00pfs::Ncodr,
6314 p00pfs::Ncodr,
6315 P00Pfs_SPEC,
6316 crate::common::RW,
6317 >::from_register(self, 0)
6318 }
6319
6320 #[doc = "Port Drive Capability"]
6321 #[inline(always)]
6322 pub fn dscr(
6323 self,
6324 ) -> crate::common::RegisterField<
6325 10,
6326 0x3,
6327 1,
6328 0,
6329 p00pfs::Dscr,
6330 p00pfs::Dscr,
6331 P00Pfs_SPEC,
6332 crate::common::RW,
6333 > {
6334 crate::common::RegisterField::<
6335 10,
6336 0x3,
6337 1,
6338 0,
6339 p00pfs::Dscr,
6340 p00pfs::Dscr,
6341 P00Pfs_SPEC,
6342 crate::common::RW,
6343 >::from_register(self, 0)
6344 }
6345
6346 #[doc = "Event on Falling/Event on Rising"]
6347 #[inline(always)]
6348 pub fn eofr(
6349 self,
6350 ) -> crate::common::RegisterField<
6351 12,
6352 0x3,
6353 1,
6354 0,
6355 p00pfs::Eofr,
6356 p00pfs::Eofr,
6357 P00Pfs_SPEC,
6358 crate::common::RW,
6359 > {
6360 crate::common::RegisterField::<
6361 12,
6362 0x3,
6363 1,
6364 0,
6365 p00pfs::Eofr,
6366 p00pfs::Eofr,
6367 P00Pfs_SPEC,
6368 crate::common::RW,
6369 >::from_register(self, 0)
6370 }
6371
6372 #[doc = "IRQ Input Enable"]
6373 #[inline(always)]
6374 pub fn isel(
6375 self,
6376 ) -> crate::common::RegisterField<
6377 14,
6378 0x1,
6379 1,
6380 0,
6381 p00pfs::Isel,
6382 p00pfs::Isel,
6383 P00Pfs_SPEC,
6384 crate::common::RW,
6385 > {
6386 crate::common::RegisterField::<
6387 14,
6388 0x1,
6389 1,
6390 0,
6391 p00pfs::Isel,
6392 p00pfs::Isel,
6393 P00Pfs_SPEC,
6394 crate::common::RW,
6395 >::from_register(self, 0)
6396 }
6397
6398 #[doc = "Analog Input Enable"]
6399 #[inline(always)]
6400 pub fn asel(
6401 self,
6402 ) -> crate::common::RegisterField<
6403 15,
6404 0x1,
6405 1,
6406 0,
6407 p00pfs::Asel,
6408 p00pfs::Asel,
6409 P00Pfs_SPEC,
6410 crate::common::RW,
6411 > {
6412 crate::common::RegisterField::<
6413 15,
6414 0x1,
6415 1,
6416 0,
6417 p00pfs::Asel,
6418 p00pfs::Asel,
6419 P00Pfs_SPEC,
6420 crate::common::RW,
6421 >::from_register(self, 0)
6422 }
6423
6424 #[doc = "Port Mode Control"]
6425 #[inline(always)]
6426 pub fn pmr(
6427 self,
6428 ) -> crate::common::RegisterField<
6429 16,
6430 0x1,
6431 1,
6432 0,
6433 p00pfs::Pmr,
6434 p00pfs::Pmr,
6435 P00Pfs_SPEC,
6436 crate::common::RW,
6437 > {
6438 crate::common::RegisterField::<
6439 16,
6440 0x1,
6441 1,
6442 0,
6443 p00pfs::Pmr,
6444 p00pfs::Pmr,
6445 P00Pfs_SPEC,
6446 crate::common::RW,
6447 >::from_register(self, 0)
6448 }
6449
6450 #[doc = "Peripheral Select"]
6451 #[inline(always)]
6452 pub fn psel(
6453 self,
6454 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P00Pfs_SPEC, crate::common::RW> {
6455 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P00Pfs_SPEC,crate::common::RW>::from_register(self,0)
6456 }
6457}
6458impl ::core::default::Default for P00Pfs {
6459 #[inline(always)]
6460 fn default() -> P00Pfs {
6461 <crate::RegValueT<P00Pfs_SPEC> as RegisterValue<_>>::new(0)
6462 }
6463}
6464pub mod p00pfs {
6465
6466 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6467 pub struct Podr_SPEC;
6468 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
6469 impl Podr {
6470 #[doc = "Low output"]
6471 pub const _0: Self = Self::new(0);
6472
6473 #[doc = "High output"]
6474 pub const _1: Self = Self::new(1);
6475 }
6476 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6477 pub struct Pidr_SPEC;
6478 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
6479 impl Pidr {
6480 #[doc = "Low level"]
6481 pub const _0: Self = Self::new(0);
6482
6483 #[doc = "High level"]
6484 pub const _1: Self = Self::new(1);
6485 }
6486 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6487 pub struct Pdr_SPEC;
6488 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
6489 impl Pdr {
6490 #[doc = "Input (functions as an input pin)"]
6491 pub const _0: Self = Self::new(0);
6492
6493 #[doc = "Output (functions as an output pin)"]
6494 pub const _1: Self = Self::new(1);
6495 }
6496 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6497 pub struct Pcr_SPEC;
6498 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
6499 impl Pcr {
6500 #[doc = "Disable input pull-up"]
6501 pub const _0: Self = Self::new(0);
6502
6503 #[doc = "Enable input pull-up"]
6504 pub const _1: Self = Self::new(1);
6505 }
6506 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6507 pub struct Ncodr_SPEC;
6508 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
6509 impl Ncodr {
6510 #[doc = "CMOS output"]
6511 pub const _0: Self = Self::new(0);
6512
6513 #[doc = "NMOS open-drain output"]
6514 pub const _1: Self = Self::new(1);
6515 }
6516 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6517 pub struct Dscr_SPEC;
6518 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
6519 impl Dscr {
6520 #[doc = "Low drive"]
6521 pub const _00: Self = Self::new(0);
6522
6523 #[doc = "Middle drive"]
6524 pub const _01: Self = Self::new(1);
6525
6526 #[doc = "High-speed high-drive"]
6527 pub const _10: Self = Self::new(2);
6528
6529 #[doc = "High drive"]
6530 pub const _11: Self = Self::new(3);
6531 }
6532 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6533 pub struct Eofr_SPEC;
6534 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
6535 impl Eofr {
6536 #[doc = "Don\'t care"]
6537 pub const _00: Self = Self::new(0);
6538
6539 #[doc = "Detect rising edge"]
6540 pub const _01: Self = Self::new(1);
6541
6542 #[doc = "Detect falling edge"]
6543 pub const _10: Self = Self::new(2);
6544
6545 #[doc = "Detect both edges"]
6546 pub const _11: Self = Self::new(3);
6547 }
6548 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6549 pub struct Isel_SPEC;
6550 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
6551 impl Isel {
6552 #[doc = "Not used as an IRQn input pin"]
6553 pub const _0: Self = Self::new(0);
6554
6555 #[doc = "Used as an IRQn input pin"]
6556 pub const _1: Self = Self::new(1);
6557 }
6558 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6559 pub struct Asel_SPEC;
6560 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
6561 impl Asel {
6562 #[doc = "Not used as an analog pin"]
6563 pub const _0: Self = Self::new(0);
6564
6565 #[doc = "Used as an analog pin"]
6566 pub const _1: Self = Self::new(1);
6567 }
6568 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6569 pub struct Pmr_SPEC;
6570 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
6571 impl Pmr {
6572 #[doc = "Used as a general I/O pin"]
6573 pub const _0: Self = Self::new(0);
6574
6575 #[doc = "Used as an I/O port for peripheral functions"]
6576 pub const _1: Self = Self::new(1);
6577 }
6578}
6579#[doc(hidden)]
6580#[derive(Copy, Clone, Eq, PartialEq)]
6581pub struct P00PfsHa_SPEC;
6582impl crate::sealed::RegSpec for P00PfsHa_SPEC {
6583 type DataType = u16;
6584}
6585
6586#[doc = "Port 00%s Pin Function Select Register"]
6587pub type P00PfsHa = crate::RegValueT<P00PfsHa_SPEC>;
6588
6589impl P00PfsHa {
6590 #[doc = "Port Mode Control"]
6591 #[inline(always)]
6592 pub fn pmr(
6593 self,
6594 ) -> crate::common::RegisterField<
6595 0,
6596 0x1,
6597 1,
6598 0,
6599 p00pfs_ha::Pmr,
6600 p00pfs_ha::Pmr,
6601 P00PfsHa_SPEC,
6602 crate::common::RW,
6603 > {
6604 crate::common::RegisterField::<
6605 0,
6606 0x1,
6607 1,
6608 0,
6609 p00pfs_ha::Pmr,
6610 p00pfs_ha::Pmr,
6611 P00PfsHa_SPEC,
6612 crate::common::RW,
6613 >::from_register(self, 0)
6614 }
6615
6616 #[doc = "Peripheral Select"]
6617 #[inline(always)]
6618 pub fn psel(
6619 self,
6620 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P00PfsHa_SPEC, crate::common::RW> {
6621 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P00PfsHa_SPEC,crate::common::RW>::from_register(self,0)
6622 }
6623}
6624impl ::core::default::Default for P00PfsHa {
6625 #[inline(always)]
6626 fn default() -> P00PfsHa {
6627 <crate::RegValueT<P00PfsHa_SPEC> as RegisterValue<_>>::new(0)
6628 }
6629}
6630pub mod p00pfs_ha {
6631
6632 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6633 pub struct Pmr_SPEC;
6634 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
6635 impl Pmr {
6636 #[doc = "Used as a general I/O pin"]
6637 pub const _0: Self = Self::new(0);
6638
6639 #[doc = "Used as an I/O port for peripheral functions"]
6640 pub const _1: Self = Self::new(1);
6641 }
6642}
6643#[doc(hidden)]
6644#[derive(Copy, Clone, Eq, PartialEq)]
6645pub struct P00PfsBy_SPEC;
6646impl crate::sealed::RegSpec for P00PfsBy_SPEC {
6647 type DataType = u8;
6648}
6649
6650#[doc = "Port 00%s Pin Function Select Register"]
6651pub type P00PfsBy = crate::RegValueT<P00PfsBy_SPEC>;
6652
6653impl P00PfsBy {
6654 #[doc = "Peripheral Select"]
6655 #[inline(always)]
6656 pub fn psel(
6657 self,
6658 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P00PfsBy_SPEC, crate::common::RW> {
6659 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P00PfsBy_SPEC,crate::common::RW>::from_register(self,0)
6660 }
6661}
6662impl ::core::default::Default for P00PfsBy {
6663 #[inline(always)]
6664 fn default() -> P00PfsBy {
6665 <crate::RegValueT<P00PfsBy_SPEC> as RegisterValue<_>>::new(0)
6666 }
6667}
6668
6669#[doc(hidden)]
6670#[derive(Copy, Clone, Eq, PartialEq)]
6671pub struct P0Pfs_SPEC;
6672impl crate::sealed::RegSpec for P0Pfs_SPEC {
6673 type DataType = u32;
6674}
6675
6676#[doc = "Port 0%s Pin Function Select Register"]
6677pub type P0Pfs = crate::RegValueT<P0Pfs_SPEC>;
6678
6679impl P0Pfs {
6680 #[doc = "Port Output Data"]
6681 #[inline(always)]
6682 pub fn podr(
6683 self,
6684 ) -> crate::common::RegisterField<
6685 0,
6686 0x1,
6687 1,
6688 0,
6689 p0pfs::Podr,
6690 p0pfs::Podr,
6691 P0Pfs_SPEC,
6692 crate::common::RW,
6693 > {
6694 crate::common::RegisterField::<
6695 0,
6696 0x1,
6697 1,
6698 0,
6699 p0pfs::Podr,
6700 p0pfs::Podr,
6701 P0Pfs_SPEC,
6702 crate::common::RW,
6703 >::from_register(self, 0)
6704 }
6705
6706 #[doc = "Pmn State"]
6707 #[inline(always)]
6708 pub fn pidr(
6709 self,
6710 ) -> crate::common::RegisterField<
6711 1,
6712 0x1,
6713 1,
6714 0,
6715 p0pfs::Pidr,
6716 p0pfs::Pidr,
6717 P0Pfs_SPEC,
6718 crate::common::R,
6719 > {
6720 crate::common::RegisterField::<
6721 1,
6722 0x1,
6723 1,
6724 0,
6725 p0pfs::Pidr,
6726 p0pfs::Pidr,
6727 P0Pfs_SPEC,
6728 crate::common::R,
6729 >::from_register(self, 0)
6730 }
6731
6732 #[doc = "Port Direction"]
6733 #[inline(always)]
6734 pub fn pdr(
6735 self,
6736 ) -> crate::common::RegisterField<
6737 2,
6738 0x1,
6739 1,
6740 0,
6741 p0pfs::Pdr,
6742 p0pfs::Pdr,
6743 P0Pfs_SPEC,
6744 crate::common::RW,
6745 > {
6746 crate::common::RegisterField::<
6747 2,
6748 0x1,
6749 1,
6750 0,
6751 p0pfs::Pdr,
6752 p0pfs::Pdr,
6753 P0Pfs_SPEC,
6754 crate::common::RW,
6755 >::from_register(self, 0)
6756 }
6757
6758 #[doc = "Pull-up Control"]
6759 #[inline(always)]
6760 pub fn pcr(
6761 self,
6762 ) -> crate::common::RegisterField<
6763 4,
6764 0x1,
6765 1,
6766 0,
6767 p0pfs::Pcr,
6768 p0pfs::Pcr,
6769 P0Pfs_SPEC,
6770 crate::common::RW,
6771 > {
6772 crate::common::RegisterField::<
6773 4,
6774 0x1,
6775 1,
6776 0,
6777 p0pfs::Pcr,
6778 p0pfs::Pcr,
6779 P0Pfs_SPEC,
6780 crate::common::RW,
6781 >::from_register(self, 0)
6782 }
6783
6784 #[doc = "N-Channel Open-Drain Control"]
6785 #[inline(always)]
6786 pub fn ncodr(
6787 self,
6788 ) -> crate::common::RegisterField<
6789 6,
6790 0x1,
6791 1,
6792 0,
6793 p0pfs::Ncodr,
6794 p0pfs::Ncodr,
6795 P0Pfs_SPEC,
6796 crate::common::RW,
6797 > {
6798 crate::common::RegisterField::<
6799 6,
6800 0x1,
6801 1,
6802 0,
6803 p0pfs::Ncodr,
6804 p0pfs::Ncodr,
6805 P0Pfs_SPEC,
6806 crate::common::RW,
6807 >::from_register(self, 0)
6808 }
6809
6810 #[doc = "Port Drive Capability"]
6811 #[inline(always)]
6812 pub fn dscr(
6813 self,
6814 ) -> crate::common::RegisterField<
6815 10,
6816 0x3,
6817 1,
6818 0,
6819 p0pfs::Dscr,
6820 p0pfs::Dscr,
6821 P0Pfs_SPEC,
6822 crate::common::RW,
6823 > {
6824 crate::common::RegisterField::<
6825 10,
6826 0x3,
6827 1,
6828 0,
6829 p0pfs::Dscr,
6830 p0pfs::Dscr,
6831 P0Pfs_SPEC,
6832 crate::common::RW,
6833 >::from_register(self, 0)
6834 }
6835
6836 #[doc = "Event on Falling/Event on Rising"]
6837 #[inline(always)]
6838 pub fn eofr(
6839 self,
6840 ) -> crate::common::RegisterField<
6841 12,
6842 0x3,
6843 1,
6844 0,
6845 p0pfs::Eofr,
6846 p0pfs::Eofr,
6847 P0Pfs_SPEC,
6848 crate::common::RW,
6849 > {
6850 crate::common::RegisterField::<
6851 12,
6852 0x3,
6853 1,
6854 0,
6855 p0pfs::Eofr,
6856 p0pfs::Eofr,
6857 P0Pfs_SPEC,
6858 crate::common::RW,
6859 >::from_register(self, 0)
6860 }
6861
6862 #[doc = "IRQ Input Enable"]
6863 #[inline(always)]
6864 pub fn isel(
6865 self,
6866 ) -> crate::common::RegisterField<
6867 14,
6868 0x1,
6869 1,
6870 0,
6871 p0pfs::Isel,
6872 p0pfs::Isel,
6873 P0Pfs_SPEC,
6874 crate::common::RW,
6875 > {
6876 crate::common::RegisterField::<
6877 14,
6878 0x1,
6879 1,
6880 0,
6881 p0pfs::Isel,
6882 p0pfs::Isel,
6883 P0Pfs_SPEC,
6884 crate::common::RW,
6885 >::from_register(self, 0)
6886 }
6887
6888 #[doc = "Analog Input Enable"]
6889 #[inline(always)]
6890 pub fn asel(
6891 self,
6892 ) -> crate::common::RegisterField<
6893 15,
6894 0x1,
6895 1,
6896 0,
6897 p0pfs::Asel,
6898 p0pfs::Asel,
6899 P0Pfs_SPEC,
6900 crate::common::RW,
6901 > {
6902 crate::common::RegisterField::<
6903 15,
6904 0x1,
6905 1,
6906 0,
6907 p0pfs::Asel,
6908 p0pfs::Asel,
6909 P0Pfs_SPEC,
6910 crate::common::RW,
6911 >::from_register(self, 0)
6912 }
6913
6914 #[doc = "Port Mode Control"]
6915 #[inline(always)]
6916 pub fn pmr(
6917 self,
6918 ) -> crate::common::RegisterField<
6919 16,
6920 0x1,
6921 1,
6922 0,
6923 p0pfs::Pmr,
6924 p0pfs::Pmr,
6925 P0Pfs_SPEC,
6926 crate::common::RW,
6927 > {
6928 crate::common::RegisterField::<
6929 16,
6930 0x1,
6931 1,
6932 0,
6933 p0pfs::Pmr,
6934 p0pfs::Pmr,
6935 P0Pfs_SPEC,
6936 crate::common::RW,
6937 >::from_register(self, 0)
6938 }
6939
6940 #[doc = "Peripheral Select"]
6941 #[inline(always)]
6942 pub fn psel(
6943 self,
6944 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P0Pfs_SPEC, crate::common::RW> {
6945 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P0Pfs_SPEC,crate::common::RW>::from_register(self,0)
6946 }
6947}
6948impl ::core::default::Default for P0Pfs {
6949 #[inline(always)]
6950 fn default() -> P0Pfs {
6951 <crate::RegValueT<P0Pfs_SPEC> as RegisterValue<_>>::new(0)
6952 }
6953}
6954pub mod p0pfs {
6955
6956 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6957 pub struct Podr_SPEC;
6958 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
6959 impl Podr {
6960 #[doc = "Low output"]
6961 pub const _0: Self = Self::new(0);
6962
6963 #[doc = "High output"]
6964 pub const _1: Self = Self::new(1);
6965 }
6966 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6967 pub struct Pidr_SPEC;
6968 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
6969 impl Pidr {
6970 #[doc = "Low level"]
6971 pub const _0: Self = Self::new(0);
6972
6973 #[doc = "High level"]
6974 pub const _1: Self = Self::new(1);
6975 }
6976 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6977 pub struct Pdr_SPEC;
6978 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
6979 impl Pdr {
6980 #[doc = "Input (functions as an input pin)"]
6981 pub const _0: Self = Self::new(0);
6982
6983 #[doc = "Output (functions as an output pin)"]
6984 pub const _1: Self = Self::new(1);
6985 }
6986 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6987 pub struct Pcr_SPEC;
6988 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
6989 impl Pcr {
6990 #[doc = "Disable input pull-up"]
6991 pub const _0: Self = Self::new(0);
6992
6993 #[doc = "Enable input pull-up"]
6994 pub const _1: Self = Self::new(1);
6995 }
6996 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6997 pub struct Ncodr_SPEC;
6998 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
6999 impl Ncodr {
7000 #[doc = "CMOS output"]
7001 pub const _0: Self = Self::new(0);
7002
7003 #[doc = "NMOS open-drain output"]
7004 pub const _1: Self = Self::new(1);
7005 }
7006 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7007 pub struct Dscr_SPEC;
7008 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
7009 impl Dscr {
7010 #[doc = "Low drive"]
7011 pub const _00: Self = Self::new(0);
7012
7013 #[doc = "Middle drive"]
7014 pub const _01: Self = Self::new(1);
7015
7016 #[doc = "High-speed high-drive"]
7017 pub const _10: Self = Self::new(2);
7018
7019 #[doc = "High drive"]
7020 pub const _11: Self = Self::new(3);
7021 }
7022 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7023 pub struct Eofr_SPEC;
7024 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
7025 impl Eofr {
7026 #[doc = "Don\'t care"]
7027 pub const _00: Self = Self::new(0);
7028
7029 #[doc = "Detect rising edge"]
7030 pub const _01: Self = Self::new(1);
7031
7032 #[doc = "Detect falling edge"]
7033 pub const _10: Self = Self::new(2);
7034
7035 #[doc = "Detect both edges"]
7036 pub const _11: Self = Self::new(3);
7037 }
7038 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7039 pub struct Isel_SPEC;
7040 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
7041 impl Isel {
7042 #[doc = "Not used as an IRQn input pin"]
7043 pub const _0: Self = Self::new(0);
7044
7045 #[doc = "Used as an IRQn input pin"]
7046 pub const _1: Self = Self::new(1);
7047 }
7048 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7049 pub struct Asel_SPEC;
7050 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
7051 impl Asel {
7052 #[doc = "Not used as an analog pin"]
7053 pub const _0: Self = Self::new(0);
7054
7055 #[doc = "Used as an analog pin"]
7056 pub const _1: Self = Self::new(1);
7057 }
7058 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7059 pub struct Pmr_SPEC;
7060 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
7061 impl Pmr {
7062 #[doc = "Used as a general I/O pin"]
7063 pub const _0: Self = Self::new(0);
7064
7065 #[doc = "Used as an I/O port for peripheral functions"]
7066 pub const _1: Self = Self::new(1);
7067 }
7068}
7069#[doc(hidden)]
7070#[derive(Copy, Clone, Eq, PartialEq)]
7071pub struct P0PfsHa_SPEC;
7072impl crate::sealed::RegSpec for P0PfsHa_SPEC {
7073 type DataType = u16;
7074}
7075
7076#[doc = "Port 0%s Pin Function Select Register"]
7077pub type P0PfsHa = crate::RegValueT<P0PfsHa_SPEC>;
7078
7079impl P0PfsHa {
7080 #[doc = "Port Mode Control"]
7081 #[inline(always)]
7082 pub fn pmr(
7083 self,
7084 ) -> crate::common::RegisterField<
7085 0,
7086 0x1,
7087 1,
7088 0,
7089 p0pfs_ha::Pmr,
7090 p0pfs_ha::Pmr,
7091 P0PfsHa_SPEC,
7092 crate::common::RW,
7093 > {
7094 crate::common::RegisterField::<
7095 0,
7096 0x1,
7097 1,
7098 0,
7099 p0pfs_ha::Pmr,
7100 p0pfs_ha::Pmr,
7101 P0PfsHa_SPEC,
7102 crate::common::RW,
7103 >::from_register(self, 0)
7104 }
7105
7106 #[doc = "Peripheral Select"]
7107 #[inline(always)]
7108 pub fn psel(
7109 self,
7110 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P0PfsHa_SPEC, crate::common::RW> {
7111 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P0PfsHa_SPEC,crate::common::RW>::from_register(self,0)
7112 }
7113}
7114impl ::core::default::Default for P0PfsHa {
7115 #[inline(always)]
7116 fn default() -> P0PfsHa {
7117 <crate::RegValueT<P0PfsHa_SPEC> as RegisterValue<_>>::new(0)
7118 }
7119}
7120pub mod p0pfs_ha {
7121
7122 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7123 pub struct Pmr_SPEC;
7124 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
7125 impl Pmr {
7126 #[doc = "Used as a general I/O pin"]
7127 pub const _0: Self = Self::new(0);
7128
7129 #[doc = "Used as an I/O port for peripheral functions"]
7130 pub const _1: Self = Self::new(1);
7131 }
7132}
7133#[doc(hidden)]
7134#[derive(Copy, Clone, Eq, PartialEq)]
7135pub struct P0PfsBy_SPEC;
7136impl crate::sealed::RegSpec for P0PfsBy_SPEC {
7137 type DataType = u8;
7138}
7139
7140#[doc = "Port 0%s Pin Function Select Register"]
7141pub type P0PfsBy = crate::RegValueT<P0PfsBy_SPEC>;
7142
7143impl P0PfsBy {
7144 #[doc = "Peripheral Select"]
7145 #[inline(always)]
7146 pub fn psel(
7147 self,
7148 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P0PfsBy_SPEC, crate::common::RW> {
7149 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P0PfsBy_SPEC,crate::common::RW>::from_register(self,0)
7150 }
7151}
7152impl ::core::default::Default for P0PfsBy {
7153 #[inline(always)]
7154 fn default() -> P0PfsBy {
7155 <crate::RegValueT<P0PfsBy_SPEC> as RegisterValue<_>>::new(0)
7156 }
7157}
7158
7159#[doc(hidden)]
7160#[derive(Copy, Clone, Eq, PartialEq)]
7161pub struct P10Pfs_SPEC;
7162impl crate::sealed::RegSpec for P10Pfs_SPEC {
7163 type DataType = u32;
7164}
7165
7166#[doc = "Port 10%s Pin Function Select Register"]
7167pub type P10Pfs = crate::RegValueT<P10Pfs_SPEC>;
7168
7169impl P10Pfs {
7170 #[doc = "Port Output Data"]
7171 #[inline(always)]
7172 pub fn podr(
7173 self,
7174 ) -> crate::common::RegisterField<
7175 0,
7176 0x1,
7177 1,
7178 0,
7179 p10pfs::Podr,
7180 p10pfs::Podr,
7181 P10Pfs_SPEC,
7182 crate::common::RW,
7183 > {
7184 crate::common::RegisterField::<
7185 0,
7186 0x1,
7187 1,
7188 0,
7189 p10pfs::Podr,
7190 p10pfs::Podr,
7191 P10Pfs_SPEC,
7192 crate::common::RW,
7193 >::from_register(self, 0)
7194 }
7195
7196 #[doc = "Pmn State"]
7197 #[inline(always)]
7198 pub fn pidr(
7199 self,
7200 ) -> crate::common::RegisterField<
7201 1,
7202 0x1,
7203 1,
7204 0,
7205 p10pfs::Pidr,
7206 p10pfs::Pidr,
7207 P10Pfs_SPEC,
7208 crate::common::R,
7209 > {
7210 crate::common::RegisterField::<
7211 1,
7212 0x1,
7213 1,
7214 0,
7215 p10pfs::Pidr,
7216 p10pfs::Pidr,
7217 P10Pfs_SPEC,
7218 crate::common::R,
7219 >::from_register(self, 0)
7220 }
7221
7222 #[doc = "Port Direction"]
7223 #[inline(always)]
7224 pub fn pdr(
7225 self,
7226 ) -> crate::common::RegisterField<
7227 2,
7228 0x1,
7229 1,
7230 0,
7231 p10pfs::Pdr,
7232 p10pfs::Pdr,
7233 P10Pfs_SPEC,
7234 crate::common::RW,
7235 > {
7236 crate::common::RegisterField::<
7237 2,
7238 0x1,
7239 1,
7240 0,
7241 p10pfs::Pdr,
7242 p10pfs::Pdr,
7243 P10Pfs_SPEC,
7244 crate::common::RW,
7245 >::from_register(self, 0)
7246 }
7247
7248 #[doc = "Pull-up Control"]
7249 #[inline(always)]
7250 pub fn pcr(
7251 self,
7252 ) -> crate::common::RegisterField<
7253 4,
7254 0x1,
7255 1,
7256 0,
7257 p10pfs::Pcr,
7258 p10pfs::Pcr,
7259 P10Pfs_SPEC,
7260 crate::common::RW,
7261 > {
7262 crate::common::RegisterField::<
7263 4,
7264 0x1,
7265 1,
7266 0,
7267 p10pfs::Pcr,
7268 p10pfs::Pcr,
7269 P10Pfs_SPEC,
7270 crate::common::RW,
7271 >::from_register(self, 0)
7272 }
7273
7274 #[doc = "N-Channel Open-Drain Control"]
7275 #[inline(always)]
7276 pub fn ncodr(
7277 self,
7278 ) -> crate::common::RegisterField<
7279 6,
7280 0x1,
7281 1,
7282 0,
7283 p10pfs::Ncodr,
7284 p10pfs::Ncodr,
7285 P10Pfs_SPEC,
7286 crate::common::RW,
7287 > {
7288 crate::common::RegisterField::<
7289 6,
7290 0x1,
7291 1,
7292 0,
7293 p10pfs::Ncodr,
7294 p10pfs::Ncodr,
7295 P10Pfs_SPEC,
7296 crate::common::RW,
7297 >::from_register(self, 0)
7298 }
7299
7300 #[doc = "Port Drive Capability"]
7301 #[inline(always)]
7302 pub fn dscr(
7303 self,
7304 ) -> crate::common::RegisterField<
7305 10,
7306 0x3,
7307 1,
7308 0,
7309 p10pfs::Dscr,
7310 p10pfs::Dscr,
7311 P10Pfs_SPEC,
7312 crate::common::RW,
7313 > {
7314 crate::common::RegisterField::<
7315 10,
7316 0x3,
7317 1,
7318 0,
7319 p10pfs::Dscr,
7320 p10pfs::Dscr,
7321 P10Pfs_SPEC,
7322 crate::common::RW,
7323 >::from_register(self, 0)
7324 }
7325
7326 #[doc = "Event on Falling/Event on Rising"]
7327 #[inline(always)]
7328 pub fn eofr(
7329 self,
7330 ) -> crate::common::RegisterField<
7331 12,
7332 0x3,
7333 1,
7334 0,
7335 p10pfs::Eofr,
7336 p10pfs::Eofr,
7337 P10Pfs_SPEC,
7338 crate::common::RW,
7339 > {
7340 crate::common::RegisterField::<
7341 12,
7342 0x3,
7343 1,
7344 0,
7345 p10pfs::Eofr,
7346 p10pfs::Eofr,
7347 P10Pfs_SPEC,
7348 crate::common::RW,
7349 >::from_register(self, 0)
7350 }
7351
7352 #[doc = "IRQ Input Enable"]
7353 #[inline(always)]
7354 pub fn isel(
7355 self,
7356 ) -> crate::common::RegisterField<
7357 14,
7358 0x1,
7359 1,
7360 0,
7361 p10pfs::Isel,
7362 p10pfs::Isel,
7363 P10Pfs_SPEC,
7364 crate::common::RW,
7365 > {
7366 crate::common::RegisterField::<
7367 14,
7368 0x1,
7369 1,
7370 0,
7371 p10pfs::Isel,
7372 p10pfs::Isel,
7373 P10Pfs_SPEC,
7374 crate::common::RW,
7375 >::from_register(self, 0)
7376 }
7377
7378 #[doc = "Analog Input Enable"]
7379 #[inline(always)]
7380 pub fn asel(
7381 self,
7382 ) -> crate::common::RegisterField<
7383 15,
7384 0x1,
7385 1,
7386 0,
7387 p10pfs::Asel,
7388 p10pfs::Asel,
7389 P10Pfs_SPEC,
7390 crate::common::RW,
7391 > {
7392 crate::common::RegisterField::<
7393 15,
7394 0x1,
7395 1,
7396 0,
7397 p10pfs::Asel,
7398 p10pfs::Asel,
7399 P10Pfs_SPEC,
7400 crate::common::RW,
7401 >::from_register(self, 0)
7402 }
7403
7404 #[doc = "Port Mode Control"]
7405 #[inline(always)]
7406 pub fn pmr(
7407 self,
7408 ) -> crate::common::RegisterField<
7409 16,
7410 0x1,
7411 1,
7412 0,
7413 p10pfs::Pmr,
7414 p10pfs::Pmr,
7415 P10Pfs_SPEC,
7416 crate::common::RW,
7417 > {
7418 crate::common::RegisterField::<
7419 16,
7420 0x1,
7421 1,
7422 0,
7423 p10pfs::Pmr,
7424 p10pfs::Pmr,
7425 P10Pfs_SPEC,
7426 crate::common::RW,
7427 >::from_register(self, 0)
7428 }
7429
7430 #[doc = "Peripheral Select"]
7431 #[inline(always)]
7432 pub fn psel(
7433 self,
7434 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P10Pfs_SPEC, crate::common::RW> {
7435 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P10Pfs_SPEC,crate::common::RW>::from_register(self,0)
7436 }
7437}
7438impl ::core::default::Default for P10Pfs {
7439 #[inline(always)]
7440 fn default() -> P10Pfs {
7441 <crate::RegValueT<P10Pfs_SPEC> as RegisterValue<_>>::new(0)
7442 }
7443}
7444pub mod p10pfs {
7445
7446 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7447 pub struct Podr_SPEC;
7448 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
7449 impl Podr {
7450 #[doc = "Low output"]
7451 pub const _0: Self = Self::new(0);
7452
7453 #[doc = "High output"]
7454 pub const _1: Self = Self::new(1);
7455 }
7456 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7457 pub struct Pidr_SPEC;
7458 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
7459 impl Pidr {
7460 #[doc = "Low level"]
7461 pub const _0: Self = Self::new(0);
7462
7463 #[doc = "High level"]
7464 pub const _1: Self = Self::new(1);
7465 }
7466 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7467 pub struct Pdr_SPEC;
7468 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
7469 impl Pdr {
7470 #[doc = "Input (functions as an input pin)"]
7471 pub const _0: Self = Self::new(0);
7472
7473 #[doc = "Output (functions as an output pin)"]
7474 pub const _1: Self = Self::new(1);
7475 }
7476 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7477 pub struct Pcr_SPEC;
7478 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
7479 impl Pcr {
7480 #[doc = "Disable input pull-up"]
7481 pub const _0: Self = Self::new(0);
7482
7483 #[doc = "Enable input pull-up"]
7484 pub const _1: Self = Self::new(1);
7485 }
7486 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7487 pub struct Ncodr_SPEC;
7488 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
7489 impl Ncodr {
7490 #[doc = "CMOS output"]
7491 pub const _0: Self = Self::new(0);
7492
7493 #[doc = "NMOS open-drain output"]
7494 pub const _1: Self = Self::new(1);
7495 }
7496 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7497 pub struct Dscr_SPEC;
7498 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
7499 impl Dscr {
7500 #[doc = "Low drive"]
7501 pub const _00: Self = Self::new(0);
7502
7503 #[doc = "Middle drive"]
7504 pub const _01: Self = Self::new(1);
7505
7506 #[doc = "High-speed high-drive"]
7507 pub const _10: Self = Self::new(2);
7508
7509 #[doc = "High drive"]
7510 pub const _11: Self = Self::new(3);
7511 }
7512 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7513 pub struct Eofr_SPEC;
7514 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
7515 impl Eofr {
7516 #[doc = "Don\'t care"]
7517 pub const _00: Self = Self::new(0);
7518
7519 #[doc = "Detect rising edge"]
7520 pub const _01: Self = Self::new(1);
7521
7522 #[doc = "Detect falling edge"]
7523 pub const _10: Self = Self::new(2);
7524
7525 #[doc = "Detect both edges"]
7526 pub const _11: Self = Self::new(3);
7527 }
7528 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7529 pub struct Isel_SPEC;
7530 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
7531 impl Isel {
7532 #[doc = "Not used as an IRQn input pin"]
7533 pub const _0: Self = Self::new(0);
7534
7535 #[doc = "Used as an IRQn input pin"]
7536 pub const _1: Self = Self::new(1);
7537 }
7538 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7539 pub struct Asel_SPEC;
7540 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
7541 impl Asel {
7542 #[doc = "Not used as an analog pin"]
7543 pub const _0: Self = Self::new(0);
7544
7545 #[doc = "Used as an analog pin"]
7546 pub const _1: Self = Self::new(1);
7547 }
7548 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7549 pub struct Pmr_SPEC;
7550 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
7551 impl Pmr {
7552 #[doc = "Used as a general I/O pin"]
7553 pub const _0: Self = Self::new(0);
7554
7555 #[doc = "Used as an I/O port for peripheral functions"]
7556 pub const _1: Self = Self::new(1);
7557 }
7558}
7559#[doc(hidden)]
7560#[derive(Copy, Clone, Eq, PartialEq)]
7561pub struct P10PfsHa_SPEC;
7562impl crate::sealed::RegSpec for P10PfsHa_SPEC {
7563 type DataType = u16;
7564}
7565
7566#[doc = "Port 10%s Pin Function Select Register"]
7567pub type P10PfsHa = crate::RegValueT<P10PfsHa_SPEC>;
7568
7569impl P10PfsHa {
7570 #[doc = "Port Mode Control"]
7571 #[inline(always)]
7572 pub fn pmr(
7573 self,
7574 ) -> crate::common::RegisterField<
7575 0,
7576 0x1,
7577 1,
7578 0,
7579 p10pfs_ha::Pmr,
7580 p10pfs_ha::Pmr,
7581 P10PfsHa_SPEC,
7582 crate::common::RW,
7583 > {
7584 crate::common::RegisterField::<
7585 0,
7586 0x1,
7587 1,
7588 0,
7589 p10pfs_ha::Pmr,
7590 p10pfs_ha::Pmr,
7591 P10PfsHa_SPEC,
7592 crate::common::RW,
7593 >::from_register(self, 0)
7594 }
7595
7596 #[doc = "Peripheral Select"]
7597 #[inline(always)]
7598 pub fn psel(
7599 self,
7600 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P10PfsHa_SPEC, crate::common::RW> {
7601 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P10PfsHa_SPEC,crate::common::RW>::from_register(self,0)
7602 }
7603}
7604impl ::core::default::Default for P10PfsHa {
7605 #[inline(always)]
7606 fn default() -> P10PfsHa {
7607 <crate::RegValueT<P10PfsHa_SPEC> as RegisterValue<_>>::new(0)
7608 }
7609}
7610pub mod p10pfs_ha {
7611
7612 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7613 pub struct Pmr_SPEC;
7614 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
7615 impl Pmr {
7616 #[doc = "Used as a general I/O pin"]
7617 pub const _0: Self = Self::new(0);
7618
7619 #[doc = "Used as an I/O port for peripheral functions"]
7620 pub const _1: Self = Self::new(1);
7621 }
7622}
7623#[doc(hidden)]
7624#[derive(Copy, Clone, Eq, PartialEq)]
7625pub struct P10PfsBy_SPEC;
7626impl crate::sealed::RegSpec for P10PfsBy_SPEC {
7627 type DataType = u8;
7628}
7629
7630#[doc = "Port 10%s Pin Function Select Register"]
7631pub type P10PfsBy = crate::RegValueT<P10PfsBy_SPEC>;
7632
7633impl P10PfsBy {
7634 #[doc = "Peripheral Select"]
7635 #[inline(always)]
7636 pub fn psel(
7637 self,
7638 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P10PfsBy_SPEC, crate::common::RW> {
7639 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P10PfsBy_SPEC,crate::common::RW>::from_register(self,0)
7640 }
7641}
7642impl ::core::default::Default for P10PfsBy {
7643 #[inline(always)]
7644 fn default() -> P10PfsBy {
7645 <crate::RegValueT<P10PfsBy_SPEC> as RegisterValue<_>>::new(0)
7646 }
7647}
7648
7649#[doc(hidden)]
7650#[derive(Copy, Clone, Eq, PartialEq)]
7651pub struct P1Pfs_SPEC;
7652impl crate::sealed::RegSpec for P1Pfs_SPEC {
7653 type DataType = u32;
7654}
7655
7656#[doc = "Port 1%s Pin Function Select Register"]
7657pub type P1Pfs = crate::RegValueT<P1Pfs_SPEC>;
7658
7659impl P1Pfs {
7660 #[doc = "Port Output Data"]
7661 #[inline(always)]
7662 pub fn podr(
7663 self,
7664 ) -> crate::common::RegisterField<
7665 0,
7666 0x1,
7667 1,
7668 0,
7669 p1pfs::Podr,
7670 p1pfs::Podr,
7671 P1Pfs_SPEC,
7672 crate::common::RW,
7673 > {
7674 crate::common::RegisterField::<
7675 0,
7676 0x1,
7677 1,
7678 0,
7679 p1pfs::Podr,
7680 p1pfs::Podr,
7681 P1Pfs_SPEC,
7682 crate::common::RW,
7683 >::from_register(self, 0)
7684 }
7685
7686 #[doc = "Pmn State"]
7687 #[inline(always)]
7688 pub fn pidr(
7689 self,
7690 ) -> crate::common::RegisterField<
7691 1,
7692 0x1,
7693 1,
7694 0,
7695 p1pfs::Pidr,
7696 p1pfs::Pidr,
7697 P1Pfs_SPEC,
7698 crate::common::R,
7699 > {
7700 crate::common::RegisterField::<
7701 1,
7702 0x1,
7703 1,
7704 0,
7705 p1pfs::Pidr,
7706 p1pfs::Pidr,
7707 P1Pfs_SPEC,
7708 crate::common::R,
7709 >::from_register(self, 0)
7710 }
7711
7712 #[doc = "Port Direction"]
7713 #[inline(always)]
7714 pub fn pdr(
7715 self,
7716 ) -> crate::common::RegisterField<
7717 2,
7718 0x1,
7719 1,
7720 0,
7721 p1pfs::Pdr,
7722 p1pfs::Pdr,
7723 P1Pfs_SPEC,
7724 crate::common::RW,
7725 > {
7726 crate::common::RegisterField::<
7727 2,
7728 0x1,
7729 1,
7730 0,
7731 p1pfs::Pdr,
7732 p1pfs::Pdr,
7733 P1Pfs_SPEC,
7734 crate::common::RW,
7735 >::from_register(self, 0)
7736 }
7737
7738 #[doc = "Pull-up Control"]
7739 #[inline(always)]
7740 pub fn pcr(
7741 self,
7742 ) -> crate::common::RegisterField<
7743 4,
7744 0x1,
7745 1,
7746 0,
7747 p1pfs::Pcr,
7748 p1pfs::Pcr,
7749 P1Pfs_SPEC,
7750 crate::common::RW,
7751 > {
7752 crate::common::RegisterField::<
7753 4,
7754 0x1,
7755 1,
7756 0,
7757 p1pfs::Pcr,
7758 p1pfs::Pcr,
7759 P1Pfs_SPEC,
7760 crate::common::RW,
7761 >::from_register(self, 0)
7762 }
7763
7764 #[doc = "N-Channel Open-Drain Control"]
7765 #[inline(always)]
7766 pub fn ncodr(
7767 self,
7768 ) -> crate::common::RegisterField<
7769 6,
7770 0x1,
7771 1,
7772 0,
7773 p1pfs::Ncodr,
7774 p1pfs::Ncodr,
7775 P1Pfs_SPEC,
7776 crate::common::RW,
7777 > {
7778 crate::common::RegisterField::<
7779 6,
7780 0x1,
7781 1,
7782 0,
7783 p1pfs::Ncodr,
7784 p1pfs::Ncodr,
7785 P1Pfs_SPEC,
7786 crate::common::RW,
7787 >::from_register(self, 0)
7788 }
7789
7790 #[doc = "Port Drive Capability"]
7791 #[inline(always)]
7792 pub fn dscr(
7793 self,
7794 ) -> crate::common::RegisterField<
7795 10,
7796 0x3,
7797 1,
7798 0,
7799 p1pfs::Dscr,
7800 p1pfs::Dscr,
7801 P1Pfs_SPEC,
7802 crate::common::RW,
7803 > {
7804 crate::common::RegisterField::<
7805 10,
7806 0x3,
7807 1,
7808 0,
7809 p1pfs::Dscr,
7810 p1pfs::Dscr,
7811 P1Pfs_SPEC,
7812 crate::common::RW,
7813 >::from_register(self, 0)
7814 }
7815
7816 #[doc = "Event on Falling/Event on Rising"]
7817 #[inline(always)]
7818 pub fn eofr(
7819 self,
7820 ) -> crate::common::RegisterField<
7821 12,
7822 0x3,
7823 1,
7824 0,
7825 p1pfs::Eofr,
7826 p1pfs::Eofr,
7827 P1Pfs_SPEC,
7828 crate::common::RW,
7829 > {
7830 crate::common::RegisterField::<
7831 12,
7832 0x3,
7833 1,
7834 0,
7835 p1pfs::Eofr,
7836 p1pfs::Eofr,
7837 P1Pfs_SPEC,
7838 crate::common::RW,
7839 >::from_register(self, 0)
7840 }
7841
7842 #[doc = "IRQ Input Enable"]
7843 #[inline(always)]
7844 pub fn isel(
7845 self,
7846 ) -> crate::common::RegisterField<
7847 14,
7848 0x1,
7849 1,
7850 0,
7851 p1pfs::Isel,
7852 p1pfs::Isel,
7853 P1Pfs_SPEC,
7854 crate::common::RW,
7855 > {
7856 crate::common::RegisterField::<
7857 14,
7858 0x1,
7859 1,
7860 0,
7861 p1pfs::Isel,
7862 p1pfs::Isel,
7863 P1Pfs_SPEC,
7864 crate::common::RW,
7865 >::from_register(self, 0)
7866 }
7867
7868 #[doc = "Analog Input Enable"]
7869 #[inline(always)]
7870 pub fn asel(
7871 self,
7872 ) -> crate::common::RegisterField<
7873 15,
7874 0x1,
7875 1,
7876 0,
7877 p1pfs::Asel,
7878 p1pfs::Asel,
7879 P1Pfs_SPEC,
7880 crate::common::RW,
7881 > {
7882 crate::common::RegisterField::<
7883 15,
7884 0x1,
7885 1,
7886 0,
7887 p1pfs::Asel,
7888 p1pfs::Asel,
7889 P1Pfs_SPEC,
7890 crate::common::RW,
7891 >::from_register(self, 0)
7892 }
7893
7894 #[doc = "Port Mode Control"]
7895 #[inline(always)]
7896 pub fn pmr(
7897 self,
7898 ) -> crate::common::RegisterField<
7899 16,
7900 0x1,
7901 1,
7902 0,
7903 p1pfs::Pmr,
7904 p1pfs::Pmr,
7905 P1Pfs_SPEC,
7906 crate::common::RW,
7907 > {
7908 crate::common::RegisterField::<
7909 16,
7910 0x1,
7911 1,
7912 0,
7913 p1pfs::Pmr,
7914 p1pfs::Pmr,
7915 P1Pfs_SPEC,
7916 crate::common::RW,
7917 >::from_register(self, 0)
7918 }
7919
7920 #[doc = "Peripheral Select"]
7921 #[inline(always)]
7922 pub fn psel(
7923 self,
7924 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P1Pfs_SPEC, crate::common::RW> {
7925 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P1Pfs_SPEC,crate::common::RW>::from_register(self,0)
7926 }
7927}
7928impl ::core::default::Default for P1Pfs {
7929 #[inline(always)]
7930 fn default() -> P1Pfs {
7931 <crate::RegValueT<P1Pfs_SPEC> as RegisterValue<_>>::new(0)
7932 }
7933}
7934pub mod p1pfs {
7935
7936 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7937 pub struct Podr_SPEC;
7938 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
7939 impl Podr {
7940 #[doc = "Low output"]
7941 pub const _0: Self = Self::new(0);
7942
7943 #[doc = "High output"]
7944 pub const _1: Self = Self::new(1);
7945 }
7946 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7947 pub struct Pidr_SPEC;
7948 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
7949 impl Pidr {
7950 #[doc = "Low level"]
7951 pub const _0: Self = Self::new(0);
7952
7953 #[doc = "High level"]
7954 pub const _1: Self = Self::new(1);
7955 }
7956 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7957 pub struct Pdr_SPEC;
7958 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
7959 impl Pdr {
7960 #[doc = "Input (functions as an input pin)"]
7961 pub const _0: Self = Self::new(0);
7962
7963 #[doc = "Output (functions as an output pin)"]
7964 pub const _1: Self = Self::new(1);
7965 }
7966 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7967 pub struct Pcr_SPEC;
7968 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
7969 impl Pcr {
7970 #[doc = "Disable input pull-up"]
7971 pub const _0: Self = Self::new(0);
7972
7973 #[doc = "Enable input pull-up"]
7974 pub const _1: Self = Self::new(1);
7975 }
7976 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7977 pub struct Ncodr_SPEC;
7978 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
7979 impl Ncodr {
7980 #[doc = "CMOS output"]
7981 pub const _0: Self = Self::new(0);
7982
7983 #[doc = "NMOS open-drain output"]
7984 pub const _1: Self = Self::new(1);
7985 }
7986 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7987 pub struct Dscr_SPEC;
7988 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
7989 impl Dscr {
7990 #[doc = "Low drive"]
7991 pub const _00: Self = Self::new(0);
7992
7993 #[doc = "Middle drive"]
7994 pub const _01: Self = Self::new(1);
7995
7996 #[doc = "High-speed high-drive"]
7997 pub const _10: Self = Self::new(2);
7998
7999 #[doc = "High drive"]
8000 pub const _11: Self = Self::new(3);
8001 }
8002 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8003 pub struct Eofr_SPEC;
8004 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
8005 impl Eofr {
8006 #[doc = "Don\'t care"]
8007 pub const _00: Self = Self::new(0);
8008
8009 #[doc = "Detect rising edge"]
8010 pub const _01: Self = Self::new(1);
8011
8012 #[doc = "Detect falling edge"]
8013 pub const _10: Self = Self::new(2);
8014
8015 #[doc = "Detect both edges"]
8016 pub const _11: Self = Self::new(3);
8017 }
8018 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8019 pub struct Isel_SPEC;
8020 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
8021 impl Isel {
8022 #[doc = "Not used as an IRQn input pin"]
8023 pub const _0: Self = Self::new(0);
8024
8025 #[doc = "Used as an IRQn input pin"]
8026 pub const _1: Self = Self::new(1);
8027 }
8028 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8029 pub struct Asel_SPEC;
8030 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
8031 impl Asel {
8032 #[doc = "Not used as an analog pin"]
8033 pub const _0: Self = Self::new(0);
8034
8035 #[doc = "Used as an analog pin"]
8036 pub const _1: Self = Self::new(1);
8037 }
8038 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8039 pub struct Pmr_SPEC;
8040 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
8041 impl Pmr {
8042 #[doc = "Used as a general I/O pin"]
8043 pub const _0: Self = Self::new(0);
8044
8045 #[doc = "Used as an I/O port for peripheral functions"]
8046 pub const _1: Self = Self::new(1);
8047 }
8048}
8049#[doc(hidden)]
8050#[derive(Copy, Clone, Eq, PartialEq)]
8051pub struct P1PfsHa_SPEC;
8052impl crate::sealed::RegSpec for P1PfsHa_SPEC {
8053 type DataType = u16;
8054}
8055
8056#[doc = "Port 1%s Pin Function Select Register"]
8057pub type P1PfsHa = crate::RegValueT<P1PfsHa_SPEC>;
8058
8059impl P1PfsHa {
8060 #[doc = "Port Mode Control"]
8061 #[inline(always)]
8062 pub fn pmr(
8063 self,
8064 ) -> crate::common::RegisterField<
8065 0,
8066 0x1,
8067 1,
8068 0,
8069 p1pfs_ha::Pmr,
8070 p1pfs_ha::Pmr,
8071 P1PfsHa_SPEC,
8072 crate::common::RW,
8073 > {
8074 crate::common::RegisterField::<
8075 0,
8076 0x1,
8077 1,
8078 0,
8079 p1pfs_ha::Pmr,
8080 p1pfs_ha::Pmr,
8081 P1PfsHa_SPEC,
8082 crate::common::RW,
8083 >::from_register(self, 0)
8084 }
8085
8086 #[doc = "Peripheral Select"]
8087 #[inline(always)]
8088 pub fn psel(
8089 self,
8090 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P1PfsHa_SPEC, crate::common::RW> {
8091 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P1PfsHa_SPEC,crate::common::RW>::from_register(self,0)
8092 }
8093}
8094impl ::core::default::Default for P1PfsHa {
8095 #[inline(always)]
8096 fn default() -> P1PfsHa {
8097 <crate::RegValueT<P1PfsHa_SPEC> as RegisterValue<_>>::new(0)
8098 }
8099}
8100pub mod p1pfs_ha {
8101
8102 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8103 pub struct Pmr_SPEC;
8104 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
8105 impl Pmr {
8106 #[doc = "Used as a general I/O pin"]
8107 pub const _0: Self = Self::new(0);
8108
8109 #[doc = "Used as an I/O port for peripheral functions"]
8110 pub const _1: Self = Self::new(1);
8111 }
8112}
8113#[doc(hidden)]
8114#[derive(Copy, Clone, Eq, PartialEq)]
8115pub struct P1PfsBy_SPEC;
8116impl crate::sealed::RegSpec for P1PfsBy_SPEC {
8117 type DataType = u8;
8118}
8119
8120#[doc = "Port 1%s Pin Function Select Register"]
8121pub type P1PfsBy = crate::RegValueT<P1PfsBy_SPEC>;
8122
8123impl P1PfsBy {
8124 #[doc = "Peripheral Select"]
8125 #[inline(always)]
8126 pub fn psel(
8127 self,
8128 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P1PfsBy_SPEC, crate::common::RW> {
8129 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P1PfsBy_SPEC,crate::common::RW>::from_register(self,0)
8130 }
8131}
8132impl ::core::default::Default for P1PfsBy {
8133 #[inline(always)]
8134 fn default() -> P1PfsBy {
8135 <crate::RegValueT<P1PfsBy_SPEC> as RegisterValue<_>>::new(0)
8136 }
8137}
8138
8139#[doc(hidden)]
8140#[derive(Copy, Clone, Eq, PartialEq)]
8141pub struct P200Pfs_SPEC;
8142impl crate::sealed::RegSpec for P200Pfs_SPEC {
8143 type DataType = u32;
8144}
8145
8146#[doc = "Port 200 Pin Function Select Register"]
8147pub type P200Pfs = crate::RegValueT<P200Pfs_SPEC>;
8148
8149impl P200Pfs {
8150 #[doc = "Port Output Data"]
8151 #[inline(always)]
8152 pub fn podr(
8153 self,
8154 ) -> crate::common::RegisterField<
8155 0,
8156 0x1,
8157 1,
8158 0,
8159 p200pfs::Podr,
8160 p200pfs::Podr,
8161 P200Pfs_SPEC,
8162 crate::common::RW,
8163 > {
8164 crate::common::RegisterField::<
8165 0,
8166 0x1,
8167 1,
8168 0,
8169 p200pfs::Podr,
8170 p200pfs::Podr,
8171 P200Pfs_SPEC,
8172 crate::common::RW,
8173 >::from_register(self, 0)
8174 }
8175
8176 #[doc = "Pmn State"]
8177 #[inline(always)]
8178 pub fn pidr(
8179 self,
8180 ) -> crate::common::RegisterField<
8181 1,
8182 0x1,
8183 1,
8184 0,
8185 p200pfs::Pidr,
8186 p200pfs::Pidr,
8187 P200Pfs_SPEC,
8188 crate::common::R,
8189 > {
8190 crate::common::RegisterField::<
8191 1,
8192 0x1,
8193 1,
8194 0,
8195 p200pfs::Pidr,
8196 p200pfs::Pidr,
8197 P200Pfs_SPEC,
8198 crate::common::R,
8199 >::from_register(self, 0)
8200 }
8201
8202 #[doc = "Port Direction"]
8203 #[inline(always)]
8204 pub fn pdr(
8205 self,
8206 ) -> crate::common::RegisterField<
8207 2,
8208 0x1,
8209 1,
8210 0,
8211 p200pfs::Pdr,
8212 p200pfs::Pdr,
8213 P200Pfs_SPEC,
8214 crate::common::RW,
8215 > {
8216 crate::common::RegisterField::<
8217 2,
8218 0x1,
8219 1,
8220 0,
8221 p200pfs::Pdr,
8222 p200pfs::Pdr,
8223 P200Pfs_SPEC,
8224 crate::common::RW,
8225 >::from_register(self, 0)
8226 }
8227
8228 #[doc = "Pull-up Control"]
8229 #[inline(always)]
8230 pub fn pcr(
8231 self,
8232 ) -> crate::common::RegisterField<
8233 4,
8234 0x1,
8235 1,
8236 0,
8237 p200pfs::Pcr,
8238 p200pfs::Pcr,
8239 P200Pfs_SPEC,
8240 crate::common::RW,
8241 > {
8242 crate::common::RegisterField::<
8243 4,
8244 0x1,
8245 1,
8246 0,
8247 p200pfs::Pcr,
8248 p200pfs::Pcr,
8249 P200Pfs_SPEC,
8250 crate::common::RW,
8251 >::from_register(self, 0)
8252 }
8253
8254 #[doc = "N-Channel Open-Drain Control"]
8255 #[inline(always)]
8256 pub fn ncodr(
8257 self,
8258 ) -> crate::common::RegisterField<
8259 6,
8260 0x1,
8261 1,
8262 0,
8263 p200pfs::Ncodr,
8264 p200pfs::Ncodr,
8265 P200Pfs_SPEC,
8266 crate::common::RW,
8267 > {
8268 crate::common::RegisterField::<
8269 6,
8270 0x1,
8271 1,
8272 0,
8273 p200pfs::Ncodr,
8274 p200pfs::Ncodr,
8275 P200Pfs_SPEC,
8276 crate::common::RW,
8277 >::from_register(self, 0)
8278 }
8279
8280 #[doc = "Port Drive Capability"]
8281 #[inline(always)]
8282 pub fn dscr(
8283 self,
8284 ) -> crate::common::RegisterField<
8285 10,
8286 0x3,
8287 1,
8288 0,
8289 p200pfs::Dscr,
8290 p200pfs::Dscr,
8291 P200Pfs_SPEC,
8292 crate::common::RW,
8293 > {
8294 crate::common::RegisterField::<
8295 10,
8296 0x3,
8297 1,
8298 0,
8299 p200pfs::Dscr,
8300 p200pfs::Dscr,
8301 P200Pfs_SPEC,
8302 crate::common::RW,
8303 >::from_register(self, 0)
8304 }
8305
8306 #[doc = "Event on Falling/Event on Rising"]
8307 #[inline(always)]
8308 pub fn eofr(
8309 self,
8310 ) -> crate::common::RegisterField<
8311 12,
8312 0x3,
8313 1,
8314 0,
8315 p200pfs::Eofr,
8316 p200pfs::Eofr,
8317 P200Pfs_SPEC,
8318 crate::common::RW,
8319 > {
8320 crate::common::RegisterField::<
8321 12,
8322 0x3,
8323 1,
8324 0,
8325 p200pfs::Eofr,
8326 p200pfs::Eofr,
8327 P200Pfs_SPEC,
8328 crate::common::RW,
8329 >::from_register(self, 0)
8330 }
8331
8332 #[doc = "IRQ Input Enable"]
8333 #[inline(always)]
8334 pub fn isel(
8335 self,
8336 ) -> crate::common::RegisterField<
8337 14,
8338 0x1,
8339 1,
8340 0,
8341 p200pfs::Isel,
8342 p200pfs::Isel,
8343 P200Pfs_SPEC,
8344 crate::common::RW,
8345 > {
8346 crate::common::RegisterField::<
8347 14,
8348 0x1,
8349 1,
8350 0,
8351 p200pfs::Isel,
8352 p200pfs::Isel,
8353 P200Pfs_SPEC,
8354 crate::common::RW,
8355 >::from_register(self, 0)
8356 }
8357
8358 #[doc = "Analog Input Enable"]
8359 #[inline(always)]
8360 pub fn asel(
8361 self,
8362 ) -> crate::common::RegisterField<
8363 15,
8364 0x1,
8365 1,
8366 0,
8367 p200pfs::Asel,
8368 p200pfs::Asel,
8369 P200Pfs_SPEC,
8370 crate::common::RW,
8371 > {
8372 crate::common::RegisterField::<
8373 15,
8374 0x1,
8375 1,
8376 0,
8377 p200pfs::Asel,
8378 p200pfs::Asel,
8379 P200Pfs_SPEC,
8380 crate::common::RW,
8381 >::from_register(self, 0)
8382 }
8383
8384 #[doc = "Port Mode Control"]
8385 #[inline(always)]
8386 pub fn pmr(
8387 self,
8388 ) -> crate::common::RegisterField<
8389 16,
8390 0x1,
8391 1,
8392 0,
8393 p200pfs::Pmr,
8394 p200pfs::Pmr,
8395 P200Pfs_SPEC,
8396 crate::common::RW,
8397 > {
8398 crate::common::RegisterField::<
8399 16,
8400 0x1,
8401 1,
8402 0,
8403 p200pfs::Pmr,
8404 p200pfs::Pmr,
8405 P200Pfs_SPEC,
8406 crate::common::RW,
8407 >::from_register(self, 0)
8408 }
8409
8410 #[doc = "Peripheral Select"]
8411 #[inline(always)]
8412 pub fn psel(
8413 self,
8414 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P200Pfs_SPEC, crate::common::RW> {
8415 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P200Pfs_SPEC,crate::common::RW>::from_register(self,0)
8416 }
8417}
8418impl ::core::default::Default for P200Pfs {
8419 #[inline(always)]
8420 fn default() -> P200Pfs {
8421 <crate::RegValueT<P200Pfs_SPEC> as RegisterValue<_>>::new(0)
8422 }
8423}
8424pub mod p200pfs {
8425
8426 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8427 pub struct Podr_SPEC;
8428 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
8429 impl Podr {
8430 #[doc = "Low output"]
8431 pub const _0: Self = Self::new(0);
8432
8433 #[doc = "High output"]
8434 pub const _1: Self = Self::new(1);
8435 }
8436 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8437 pub struct Pidr_SPEC;
8438 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
8439 impl Pidr {
8440 #[doc = "Low level"]
8441 pub const _0: Self = Self::new(0);
8442
8443 #[doc = "High level"]
8444 pub const _1: Self = Self::new(1);
8445 }
8446 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8447 pub struct Pdr_SPEC;
8448 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
8449 impl Pdr {
8450 #[doc = "Input (functions as an input pin)"]
8451 pub const _0: Self = Self::new(0);
8452
8453 #[doc = "Output (functions as an output pin)"]
8454 pub const _1: Self = Self::new(1);
8455 }
8456 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8457 pub struct Pcr_SPEC;
8458 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
8459 impl Pcr {
8460 #[doc = "Disable input pull-up"]
8461 pub const _0: Self = Self::new(0);
8462
8463 #[doc = "Enable input pull-up"]
8464 pub const _1: Self = Self::new(1);
8465 }
8466 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8467 pub struct Ncodr_SPEC;
8468 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
8469 impl Ncodr {
8470 #[doc = "CMOS output"]
8471 pub const _0: Self = Self::new(0);
8472
8473 #[doc = "NMOS open-drain output"]
8474 pub const _1: Self = Self::new(1);
8475 }
8476 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8477 pub struct Dscr_SPEC;
8478 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
8479 impl Dscr {
8480 #[doc = "Low drive"]
8481 pub const _00: Self = Self::new(0);
8482
8483 #[doc = "Middle drive"]
8484 pub const _01: Self = Self::new(1);
8485
8486 #[doc = "High-speed high-drive"]
8487 pub const _10: Self = Self::new(2);
8488
8489 #[doc = "High drive"]
8490 pub const _11: Self = Self::new(3);
8491 }
8492 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8493 pub struct Eofr_SPEC;
8494 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
8495 impl Eofr {
8496 #[doc = "Don\'t care"]
8497 pub const _00: Self = Self::new(0);
8498
8499 #[doc = "Detect rising edge"]
8500 pub const _01: Self = Self::new(1);
8501
8502 #[doc = "Detect falling edge"]
8503 pub const _10: Self = Self::new(2);
8504
8505 #[doc = "Detect both edges"]
8506 pub const _11: Self = Self::new(3);
8507 }
8508 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8509 pub struct Isel_SPEC;
8510 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
8511 impl Isel {
8512 #[doc = "Not used as an IRQn input pin"]
8513 pub const _0: Self = Self::new(0);
8514
8515 #[doc = "Used as an IRQn input pin"]
8516 pub const _1: Self = Self::new(1);
8517 }
8518 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8519 pub struct Asel_SPEC;
8520 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
8521 impl Asel {
8522 #[doc = "Not used as an analog pin"]
8523 pub const _0: Self = Self::new(0);
8524
8525 #[doc = "Used as an analog pin"]
8526 pub const _1: Self = Self::new(1);
8527 }
8528 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8529 pub struct Pmr_SPEC;
8530 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
8531 impl Pmr {
8532 #[doc = "Used as a general I/O pin"]
8533 pub const _0: Self = Self::new(0);
8534
8535 #[doc = "Used as an I/O port for peripheral functions"]
8536 pub const _1: Self = Self::new(1);
8537 }
8538}
8539#[doc(hidden)]
8540#[derive(Copy, Clone, Eq, PartialEq)]
8541pub struct P200PfsHa_SPEC;
8542impl crate::sealed::RegSpec for P200PfsHa_SPEC {
8543 type DataType = u16;
8544}
8545
8546#[doc = "Port 200 Pin Function Select Register"]
8547pub type P200PfsHa = crate::RegValueT<P200PfsHa_SPEC>;
8548
8549impl P200PfsHa {
8550 #[doc = "Port Mode Control"]
8551 #[inline(always)]
8552 pub fn pmr(
8553 self,
8554 ) -> crate::common::RegisterField<
8555 0,
8556 0x1,
8557 1,
8558 0,
8559 p200pfs_ha::Pmr,
8560 p200pfs_ha::Pmr,
8561 P200PfsHa_SPEC,
8562 crate::common::RW,
8563 > {
8564 crate::common::RegisterField::<
8565 0,
8566 0x1,
8567 1,
8568 0,
8569 p200pfs_ha::Pmr,
8570 p200pfs_ha::Pmr,
8571 P200PfsHa_SPEC,
8572 crate::common::RW,
8573 >::from_register(self, 0)
8574 }
8575
8576 #[doc = "Peripheral Select"]
8577 #[inline(always)]
8578 pub fn psel(
8579 self,
8580 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P200PfsHa_SPEC, crate::common::RW>
8581 {
8582 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P200PfsHa_SPEC,crate::common::RW>::from_register(self,0)
8583 }
8584}
8585impl ::core::default::Default for P200PfsHa {
8586 #[inline(always)]
8587 fn default() -> P200PfsHa {
8588 <crate::RegValueT<P200PfsHa_SPEC> as RegisterValue<_>>::new(0)
8589 }
8590}
8591pub mod p200pfs_ha {
8592
8593 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8594 pub struct Pmr_SPEC;
8595 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
8596 impl Pmr {
8597 #[doc = "Used as a general I/O pin"]
8598 pub const _0: Self = Self::new(0);
8599
8600 #[doc = "Used as an I/O port for peripheral functions"]
8601 pub const _1: Self = Self::new(1);
8602 }
8603}
8604#[doc(hidden)]
8605#[derive(Copy, Clone, Eq, PartialEq)]
8606pub struct P200PfsBy_SPEC;
8607impl crate::sealed::RegSpec for P200PfsBy_SPEC {
8608 type DataType = u8;
8609}
8610
8611#[doc = "Port 200 Pin Function Select Register"]
8612pub type P200PfsBy = crate::RegValueT<P200PfsBy_SPEC>;
8613
8614impl P200PfsBy {
8615 #[doc = "Peripheral Select"]
8616 #[inline(always)]
8617 pub fn psel(
8618 self,
8619 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P200PfsBy_SPEC, crate::common::RW>
8620 {
8621 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P200PfsBy_SPEC,crate::common::RW>::from_register(self,0)
8622 }
8623}
8624impl ::core::default::Default for P200PfsBy {
8625 #[inline(always)]
8626 fn default() -> P200PfsBy {
8627 <crate::RegValueT<P200PfsBy_SPEC> as RegisterValue<_>>::new(0)
8628 }
8629}
8630
8631#[doc(hidden)]
8632#[derive(Copy, Clone, Eq, PartialEq)]
8633pub struct P201Pfs_SPEC;
8634impl crate::sealed::RegSpec for P201Pfs_SPEC {
8635 type DataType = u32;
8636}
8637
8638#[doc = "Port 201 Pin Function Select Register"]
8639pub type P201Pfs = crate::RegValueT<P201Pfs_SPEC>;
8640
8641impl P201Pfs {
8642 #[doc = "Port Output Data"]
8643 #[inline(always)]
8644 pub fn podr(
8645 self,
8646 ) -> crate::common::RegisterField<
8647 0,
8648 0x1,
8649 1,
8650 0,
8651 p201pfs::Podr,
8652 p201pfs::Podr,
8653 P201Pfs_SPEC,
8654 crate::common::RW,
8655 > {
8656 crate::common::RegisterField::<
8657 0,
8658 0x1,
8659 1,
8660 0,
8661 p201pfs::Podr,
8662 p201pfs::Podr,
8663 P201Pfs_SPEC,
8664 crate::common::RW,
8665 >::from_register(self, 0)
8666 }
8667
8668 #[doc = "Pmn State"]
8669 #[inline(always)]
8670 pub fn pidr(
8671 self,
8672 ) -> crate::common::RegisterField<
8673 1,
8674 0x1,
8675 1,
8676 0,
8677 p201pfs::Pidr,
8678 p201pfs::Pidr,
8679 P201Pfs_SPEC,
8680 crate::common::R,
8681 > {
8682 crate::common::RegisterField::<
8683 1,
8684 0x1,
8685 1,
8686 0,
8687 p201pfs::Pidr,
8688 p201pfs::Pidr,
8689 P201Pfs_SPEC,
8690 crate::common::R,
8691 >::from_register(self, 0)
8692 }
8693
8694 #[doc = "Port Direction"]
8695 #[inline(always)]
8696 pub fn pdr(
8697 self,
8698 ) -> crate::common::RegisterField<
8699 2,
8700 0x1,
8701 1,
8702 0,
8703 p201pfs::Pdr,
8704 p201pfs::Pdr,
8705 P201Pfs_SPEC,
8706 crate::common::RW,
8707 > {
8708 crate::common::RegisterField::<
8709 2,
8710 0x1,
8711 1,
8712 0,
8713 p201pfs::Pdr,
8714 p201pfs::Pdr,
8715 P201Pfs_SPEC,
8716 crate::common::RW,
8717 >::from_register(self, 0)
8718 }
8719
8720 #[doc = "Pull-up Control"]
8721 #[inline(always)]
8722 pub fn pcr(
8723 self,
8724 ) -> crate::common::RegisterField<
8725 4,
8726 0x1,
8727 1,
8728 0,
8729 p201pfs::Pcr,
8730 p201pfs::Pcr,
8731 P201Pfs_SPEC,
8732 crate::common::RW,
8733 > {
8734 crate::common::RegisterField::<
8735 4,
8736 0x1,
8737 1,
8738 0,
8739 p201pfs::Pcr,
8740 p201pfs::Pcr,
8741 P201Pfs_SPEC,
8742 crate::common::RW,
8743 >::from_register(self, 0)
8744 }
8745
8746 #[doc = "N-Channel Open-Drain Control"]
8747 #[inline(always)]
8748 pub fn ncodr(
8749 self,
8750 ) -> crate::common::RegisterField<
8751 6,
8752 0x1,
8753 1,
8754 0,
8755 p201pfs::Ncodr,
8756 p201pfs::Ncodr,
8757 P201Pfs_SPEC,
8758 crate::common::RW,
8759 > {
8760 crate::common::RegisterField::<
8761 6,
8762 0x1,
8763 1,
8764 0,
8765 p201pfs::Ncodr,
8766 p201pfs::Ncodr,
8767 P201Pfs_SPEC,
8768 crate::common::RW,
8769 >::from_register(self, 0)
8770 }
8771
8772 #[doc = "Port Drive Capability"]
8773 #[inline(always)]
8774 pub fn dscr(
8775 self,
8776 ) -> crate::common::RegisterField<
8777 10,
8778 0x3,
8779 1,
8780 0,
8781 p201pfs::Dscr,
8782 p201pfs::Dscr,
8783 P201Pfs_SPEC,
8784 crate::common::RW,
8785 > {
8786 crate::common::RegisterField::<
8787 10,
8788 0x3,
8789 1,
8790 0,
8791 p201pfs::Dscr,
8792 p201pfs::Dscr,
8793 P201Pfs_SPEC,
8794 crate::common::RW,
8795 >::from_register(self, 0)
8796 }
8797
8798 #[doc = "Event on Falling/Event on Rising"]
8799 #[inline(always)]
8800 pub fn eofr(
8801 self,
8802 ) -> crate::common::RegisterField<
8803 12,
8804 0x3,
8805 1,
8806 0,
8807 p201pfs::Eofr,
8808 p201pfs::Eofr,
8809 P201Pfs_SPEC,
8810 crate::common::RW,
8811 > {
8812 crate::common::RegisterField::<
8813 12,
8814 0x3,
8815 1,
8816 0,
8817 p201pfs::Eofr,
8818 p201pfs::Eofr,
8819 P201Pfs_SPEC,
8820 crate::common::RW,
8821 >::from_register(self, 0)
8822 }
8823
8824 #[doc = "IRQ Input Enable"]
8825 #[inline(always)]
8826 pub fn isel(
8827 self,
8828 ) -> crate::common::RegisterField<
8829 14,
8830 0x1,
8831 1,
8832 0,
8833 p201pfs::Isel,
8834 p201pfs::Isel,
8835 P201Pfs_SPEC,
8836 crate::common::RW,
8837 > {
8838 crate::common::RegisterField::<
8839 14,
8840 0x1,
8841 1,
8842 0,
8843 p201pfs::Isel,
8844 p201pfs::Isel,
8845 P201Pfs_SPEC,
8846 crate::common::RW,
8847 >::from_register(self, 0)
8848 }
8849
8850 #[doc = "Analog Input Enable"]
8851 #[inline(always)]
8852 pub fn asel(
8853 self,
8854 ) -> crate::common::RegisterField<
8855 15,
8856 0x1,
8857 1,
8858 0,
8859 p201pfs::Asel,
8860 p201pfs::Asel,
8861 P201Pfs_SPEC,
8862 crate::common::RW,
8863 > {
8864 crate::common::RegisterField::<
8865 15,
8866 0x1,
8867 1,
8868 0,
8869 p201pfs::Asel,
8870 p201pfs::Asel,
8871 P201Pfs_SPEC,
8872 crate::common::RW,
8873 >::from_register(self, 0)
8874 }
8875
8876 #[doc = "Port Mode Control"]
8877 #[inline(always)]
8878 pub fn pmr(
8879 self,
8880 ) -> crate::common::RegisterField<
8881 16,
8882 0x1,
8883 1,
8884 0,
8885 p201pfs::Pmr,
8886 p201pfs::Pmr,
8887 P201Pfs_SPEC,
8888 crate::common::RW,
8889 > {
8890 crate::common::RegisterField::<
8891 16,
8892 0x1,
8893 1,
8894 0,
8895 p201pfs::Pmr,
8896 p201pfs::Pmr,
8897 P201Pfs_SPEC,
8898 crate::common::RW,
8899 >::from_register(self, 0)
8900 }
8901
8902 #[doc = "Peripheral Select"]
8903 #[inline(always)]
8904 pub fn psel(
8905 self,
8906 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P201Pfs_SPEC, crate::common::RW> {
8907 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P201Pfs_SPEC,crate::common::RW>::from_register(self,0)
8908 }
8909}
8910impl ::core::default::Default for P201Pfs {
8911 #[inline(always)]
8912 fn default() -> P201Pfs {
8913 <crate::RegValueT<P201Pfs_SPEC> as RegisterValue<_>>::new(16)
8914 }
8915}
8916pub mod p201pfs {
8917
8918 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8919 pub struct Podr_SPEC;
8920 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
8921 impl Podr {
8922 #[doc = "Low output"]
8923 pub const _0: Self = Self::new(0);
8924
8925 #[doc = "High output"]
8926 pub const _1: Self = Self::new(1);
8927 }
8928 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8929 pub struct Pidr_SPEC;
8930 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
8931 impl Pidr {
8932 #[doc = "Low level"]
8933 pub const _0: Self = Self::new(0);
8934
8935 #[doc = "High level"]
8936 pub const _1: Self = Self::new(1);
8937 }
8938 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8939 pub struct Pdr_SPEC;
8940 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
8941 impl Pdr {
8942 #[doc = "Input (functions as an input pin)"]
8943 pub const _0: Self = Self::new(0);
8944
8945 #[doc = "Output (functions as an output pin)"]
8946 pub const _1: Self = Self::new(1);
8947 }
8948 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8949 pub struct Pcr_SPEC;
8950 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
8951 impl Pcr {
8952 #[doc = "Disable input pull-up"]
8953 pub const _0: Self = Self::new(0);
8954
8955 #[doc = "Enable input pull-up"]
8956 pub const _1: Self = Self::new(1);
8957 }
8958 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8959 pub struct Ncodr_SPEC;
8960 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
8961 impl Ncodr {
8962 #[doc = "CMOS output"]
8963 pub const _0: Self = Self::new(0);
8964
8965 #[doc = "NMOS open-drain output"]
8966 pub const _1: Self = Self::new(1);
8967 }
8968 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8969 pub struct Dscr_SPEC;
8970 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
8971 impl Dscr {
8972 #[doc = "Low drive"]
8973 pub const _00: Self = Self::new(0);
8974
8975 #[doc = "Middle drive"]
8976 pub const _01: Self = Self::new(1);
8977
8978 #[doc = "High-speed high-drive"]
8979 pub const _10: Self = Self::new(2);
8980
8981 #[doc = "High drive"]
8982 pub const _11: Self = Self::new(3);
8983 }
8984 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8985 pub struct Eofr_SPEC;
8986 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
8987 impl Eofr {
8988 #[doc = "Don\'t care"]
8989 pub const _00: Self = Self::new(0);
8990
8991 #[doc = "Detect rising edge"]
8992 pub const _01: Self = Self::new(1);
8993
8994 #[doc = "Detect falling edge"]
8995 pub const _10: Self = Self::new(2);
8996
8997 #[doc = "Detect both edges"]
8998 pub const _11: Self = Self::new(3);
8999 }
9000 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9001 pub struct Isel_SPEC;
9002 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
9003 impl Isel {
9004 #[doc = "Not used as an IRQn input pin"]
9005 pub const _0: Self = Self::new(0);
9006
9007 #[doc = "Used as an IRQn input pin"]
9008 pub const _1: Self = Self::new(1);
9009 }
9010 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9011 pub struct Asel_SPEC;
9012 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
9013 impl Asel {
9014 #[doc = "Not used as an analog pin"]
9015 pub const _0: Self = Self::new(0);
9016
9017 #[doc = "Used as an analog pin"]
9018 pub const _1: Self = Self::new(1);
9019 }
9020 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9021 pub struct Pmr_SPEC;
9022 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
9023 impl Pmr {
9024 #[doc = "Used as a general I/O pin"]
9025 pub const _0: Self = Self::new(0);
9026
9027 #[doc = "Used as an I/O port for peripheral functions"]
9028 pub const _1: Self = Self::new(1);
9029 }
9030}
9031#[doc(hidden)]
9032#[derive(Copy, Clone, Eq, PartialEq)]
9033pub struct P201PfsHa_SPEC;
9034impl crate::sealed::RegSpec for P201PfsHa_SPEC {
9035 type DataType = u16;
9036}
9037
9038#[doc = "Port 201 Pin Function Select Register"]
9039pub type P201PfsHa = crate::RegValueT<P201PfsHa_SPEC>;
9040
9041impl P201PfsHa {
9042 #[doc = "Port Mode Control"]
9043 #[inline(always)]
9044 pub fn pmr(
9045 self,
9046 ) -> crate::common::RegisterField<
9047 0,
9048 0x1,
9049 1,
9050 0,
9051 p201pfs_ha::Pmr,
9052 p201pfs_ha::Pmr,
9053 P201PfsHa_SPEC,
9054 crate::common::RW,
9055 > {
9056 crate::common::RegisterField::<
9057 0,
9058 0x1,
9059 1,
9060 0,
9061 p201pfs_ha::Pmr,
9062 p201pfs_ha::Pmr,
9063 P201PfsHa_SPEC,
9064 crate::common::RW,
9065 >::from_register(self, 0)
9066 }
9067
9068 #[doc = "Peripheral Select"]
9069 #[inline(always)]
9070 pub fn psel(
9071 self,
9072 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P201PfsHa_SPEC, crate::common::RW>
9073 {
9074 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P201PfsHa_SPEC,crate::common::RW>::from_register(self,0)
9075 }
9076}
9077impl ::core::default::Default for P201PfsHa {
9078 #[inline(always)]
9079 fn default() -> P201PfsHa {
9080 <crate::RegValueT<P201PfsHa_SPEC> as RegisterValue<_>>::new(0)
9081 }
9082}
9083pub mod p201pfs_ha {
9084
9085 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9086 pub struct Pmr_SPEC;
9087 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
9088 impl Pmr {
9089 #[doc = "Used as a general I/O pin"]
9090 pub const _0: Self = Self::new(0);
9091
9092 #[doc = "Used as an I/O port for peripheral functions"]
9093 pub const _1: Self = Self::new(1);
9094 }
9095}
9096#[doc(hidden)]
9097#[derive(Copy, Clone, Eq, PartialEq)]
9098pub struct P201PfsBy_SPEC;
9099impl crate::sealed::RegSpec for P201PfsBy_SPEC {
9100 type DataType = u8;
9101}
9102
9103#[doc = "Port 201 Pin Function Select Register"]
9104pub type P201PfsBy = crate::RegValueT<P201PfsBy_SPEC>;
9105
9106impl P201PfsBy {
9107 #[doc = "Peripheral Select"]
9108 #[inline(always)]
9109 pub fn psel(
9110 self,
9111 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P201PfsBy_SPEC, crate::common::RW>
9112 {
9113 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P201PfsBy_SPEC,crate::common::RW>::from_register(self,0)
9114 }
9115}
9116impl ::core::default::Default for P201PfsBy {
9117 #[inline(always)]
9118 fn default() -> P201PfsBy {
9119 <crate::RegValueT<P201PfsBy_SPEC> as RegisterValue<_>>::new(0)
9120 }
9121}
9122
9123#[doc(hidden)]
9124#[derive(Copy, Clone, Eq, PartialEq)]
9125pub struct P20Pfs_SPEC;
9126impl crate::sealed::RegSpec for P20Pfs_SPEC {
9127 type DataType = u32;
9128}
9129
9130#[doc = "Port 20%s Pin Function Select Register"]
9131pub type P20Pfs = crate::RegValueT<P20Pfs_SPEC>;
9132
9133impl P20Pfs {
9134 #[doc = "Port Output Data"]
9135 #[inline(always)]
9136 pub fn podr(
9137 self,
9138 ) -> crate::common::RegisterField<
9139 0,
9140 0x1,
9141 1,
9142 0,
9143 p20pfs::Podr,
9144 p20pfs::Podr,
9145 P20Pfs_SPEC,
9146 crate::common::RW,
9147 > {
9148 crate::common::RegisterField::<
9149 0,
9150 0x1,
9151 1,
9152 0,
9153 p20pfs::Podr,
9154 p20pfs::Podr,
9155 P20Pfs_SPEC,
9156 crate::common::RW,
9157 >::from_register(self, 0)
9158 }
9159
9160 #[doc = "Pmn State"]
9161 #[inline(always)]
9162 pub fn pidr(
9163 self,
9164 ) -> crate::common::RegisterField<
9165 1,
9166 0x1,
9167 1,
9168 0,
9169 p20pfs::Pidr,
9170 p20pfs::Pidr,
9171 P20Pfs_SPEC,
9172 crate::common::R,
9173 > {
9174 crate::common::RegisterField::<
9175 1,
9176 0x1,
9177 1,
9178 0,
9179 p20pfs::Pidr,
9180 p20pfs::Pidr,
9181 P20Pfs_SPEC,
9182 crate::common::R,
9183 >::from_register(self, 0)
9184 }
9185
9186 #[doc = "Port Direction"]
9187 #[inline(always)]
9188 pub fn pdr(
9189 self,
9190 ) -> crate::common::RegisterField<
9191 2,
9192 0x1,
9193 1,
9194 0,
9195 p20pfs::Pdr,
9196 p20pfs::Pdr,
9197 P20Pfs_SPEC,
9198 crate::common::RW,
9199 > {
9200 crate::common::RegisterField::<
9201 2,
9202 0x1,
9203 1,
9204 0,
9205 p20pfs::Pdr,
9206 p20pfs::Pdr,
9207 P20Pfs_SPEC,
9208 crate::common::RW,
9209 >::from_register(self, 0)
9210 }
9211
9212 #[doc = "Pull-up Control"]
9213 #[inline(always)]
9214 pub fn pcr(
9215 self,
9216 ) -> crate::common::RegisterField<
9217 4,
9218 0x1,
9219 1,
9220 0,
9221 p20pfs::Pcr,
9222 p20pfs::Pcr,
9223 P20Pfs_SPEC,
9224 crate::common::RW,
9225 > {
9226 crate::common::RegisterField::<
9227 4,
9228 0x1,
9229 1,
9230 0,
9231 p20pfs::Pcr,
9232 p20pfs::Pcr,
9233 P20Pfs_SPEC,
9234 crate::common::RW,
9235 >::from_register(self, 0)
9236 }
9237
9238 #[doc = "N-Channel Open-Drain Control"]
9239 #[inline(always)]
9240 pub fn ncodr(
9241 self,
9242 ) -> crate::common::RegisterField<
9243 6,
9244 0x1,
9245 1,
9246 0,
9247 p20pfs::Ncodr,
9248 p20pfs::Ncodr,
9249 P20Pfs_SPEC,
9250 crate::common::RW,
9251 > {
9252 crate::common::RegisterField::<
9253 6,
9254 0x1,
9255 1,
9256 0,
9257 p20pfs::Ncodr,
9258 p20pfs::Ncodr,
9259 P20Pfs_SPEC,
9260 crate::common::RW,
9261 >::from_register(self, 0)
9262 }
9263
9264 #[doc = "Port Drive Capability"]
9265 #[inline(always)]
9266 pub fn dscr(
9267 self,
9268 ) -> crate::common::RegisterField<
9269 10,
9270 0x3,
9271 1,
9272 0,
9273 p20pfs::Dscr,
9274 p20pfs::Dscr,
9275 P20Pfs_SPEC,
9276 crate::common::RW,
9277 > {
9278 crate::common::RegisterField::<
9279 10,
9280 0x3,
9281 1,
9282 0,
9283 p20pfs::Dscr,
9284 p20pfs::Dscr,
9285 P20Pfs_SPEC,
9286 crate::common::RW,
9287 >::from_register(self, 0)
9288 }
9289
9290 #[doc = "Event on Falling/Event on Rising"]
9291 #[inline(always)]
9292 pub fn eofr(
9293 self,
9294 ) -> crate::common::RegisterField<
9295 12,
9296 0x3,
9297 1,
9298 0,
9299 p20pfs::Eofr,
9300 p20pfs::Eofr,
9301 P20Pfs_SPEC,
9302 crate::common::RW,
9303 > {
9304 crate::common::RegisterField::<
9305 12,
9306 0x3,
9307 1,
9308 0,
9309 p20pfs::Eofr,
9310 p20pfs::Eofr,
9311 P20Pfs_SPEC,
9312 crate::common::RW,
9313 >::from_register(self, 0)
9314 }
9315
9316 #[doc = "IRQ Input Enable"]
9317 #[inline(always)]
9318 pub fn isel(
9319 self,
9320 ) -> crate::common::RegisterField<
9321 14,
9322 0x1,
9323 1,
9324 0,
9325 p20pfs::Isel,
9326 p20pfs::Isel,
9327 P20Pfs_SPEC,
9328 crate::common::RW,
9329 > {
9330 crate::common::RegisterField::<
9331 14,
9332 0x1,
9333 1,
9334 0,
9335 p20pfs::Isel,
9336 p20pfs::Isel,
9337 P20Pfs_SPEC,
9338 crate::common::RW,
9339 >::from_register(self, 0)
9340 }
9341
9342 #[doc = "Analog Input Enable"]
9343 #[inline(always)]
9344 pub fn asel(
9345 self,
9346 ) -> crate::common::RegisterField<
9347 15,
9348 0x1,
9349 1,
9350 0,
9351 p20pfs::Asel,
9352 p20pfs::Asel,
9353 P20Pfs_SPEC,
9354 crate::common::RW,
9355 > {
9356 crate::common::RegisterField::<
9357 15,
9358 0x1,
9359 1,
9360 0,
9361 p20pfs::Asel,
9362 p20pfs::Asel,
9363 P20Pfs_SPEC,
9364 crate::common::RW,
9365 >::from_register(self, 0)
9366 }
9367
9368 #[doc = "Port Mode Control"]
9369 #[inline(always)]
9370 pub fn pmr(
9371 self,
9372 ) -> crate::common::RegisterField<
9373 16,
9374 0x1,
9375 1,
9376 0,
9377 p20pfs::Pmr,
9378 p20pfs::Pmr,
9379 P20Pfs_SPEC,
9380 crate::common::RW,
9381 > {
9382 crate::common::RegisterField::<
9383 16,
9384 0x1,
9385 1,
9386 0,
9387 p20pfs::Pmr,
9388 p20pfs::Pmr,
9389 P20Pfs_SPEC,
9390 crate::common::RW,
9391 >::from_register(self, 0)
9392 }
9393
9394 #[doc = "Peripheral Select"]
9395 #[inline(always)]
9396 pub fn psel(
9397 self,
9398 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P20Pfs_SPEC, crate::common::RW> {
9399 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P20Pfs_SPEC,crate::common::RW>::from_register(self,0)
9400 }
9401}
9402impl ::core::default::Default for P20Pfs {
9403 #[inline(always)]
9404 fn default() -> P20Pfs {
9405 <crate::RegValueT<P20Pfs_SPEC> as RegisterValue<_>>::new(0)
9406 }
9407}
9408pub mod p20pfs {
9409
9410 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9411 pub struct Podr_SPEC;
9412 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
9413 impl Podr {
9414 #[doc = "Low output"]
9415 pub const _0: Self = Self::new(0);
9416
9417 #[doc = "High output"]
9418 pub const _1: Self = Self::new(1);
9419 }
9420 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9421 pub struct Pidr_SPEC;
9422 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
9423 impl Pidr {
9424 #[doc = "Low level"]
9425 pub const _0: Self = Self::new(0);
9426
9427 #[doc = "High level"]
9428 pub const _1: Self = Self::new(1);
9429 }
9430 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9431 pub struct Pdr_SPEC;
9432 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
9433 impl Pdr {
9434 #[doc = "Input (functions as an input pin)"]
9435 pub const _0: Self = Self::new(0);
9436
9437 #[doc = "Output (functions as an output pin)"]
9438 pub const _1: Self = Self::new(1);
9439 }
9440 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9441 pub struct Pcr_SPEC;
9442 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
9443 impl Pcr {
9444 #[doc = "Disable input pull-up"]
9445 pub const _0: Self = Self::new(0);
9446
9447 #[doc = "Enable input pull-up"]
9448 pub const _1: Self = Self::new(1);
9449 }
9450 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9451 pub struct Ncodr_SPEC;
9452 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
9453 impl Ncodr {
9454 #[doc = "CMOS output"]
9455 pub const _0: Self = Self::new(0);
9456
9457 #[doc = "NMOS open-drain output"]
9458 pub const _1: Self = Self::new(1);
9459 }
9460 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9461 pub struct Dscr_SPEC;
9462 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
9463 impl Dscr {
9464 #[doc = "Low drive"]
9465 pub const _00: Self = Self::new(0);
9466
9467 #[doc = "Middle drive"]
9468 pub const _01: Self = Self::new(1);
9469
9470 #[doc = "High-speed high-drive"]
9471 pub const _10: Self = Self::new(2);
9472
9473 #[doc = "High drive"]
9474 pub const _11: Self = Self::new(3);
9475 }
9476 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9477 pub struct Eofr_SPEC;
9478 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
9479 impl Eofr {
9480 #[doc = "Don\'t care"]
9481 pub const _00: Self = Self::new(0);
9482
9483 #[doc = "Detect rising edge"]
9484 pub const _01: Self = Self::new(1);
9485
9486 #[doc = "Detect falling edge"]
9487 pub const _10: Self = Self::new(2);
9488
9489 #[doc = "Detect both edges"]
9490 pub const _11: Self = Self::new(3);
9491 }
9492 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9493 pub struct Isel_SPEC;
9494 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
9495 impl Isel {
9496 #[doc = "Not used as an IRQn input pin"]
9497 pub const _0: Self = Self::new(0);
9498
9499 #[doc = "Used as an IRQn input pin"]
9500 pub const _1: Self = Self::new(1);
9501 }
9502 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9503 pub struct Asel_SPEC;
9504 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
9505 impl Asel {
9506 #[doc = "Not used as an analog pin"]
9507 pub const _0: Self = Self::new(0);
9508
9509 #[doc = "Used as an analog pin"]
9510 pub const _1: Self = Self::new(1);
9511 }
9512 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9513 pub struct Pmr_SPEC;
9514 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
9515 impl Pmr {
9516 #[doc = "Used as a general I/O pin"]
9517 pub const _0: Self = Self::new(0);
9518
9519 #[doc = "Used as an I/O port for peripheral functions"]
9520 pub const _1: Self = Self::new(1);
9521 }
9522}
9523#[doc(hidden)]
9524#[derive(Copy, Clone, Eq, PartialEq)]
9525pub struct P20PfsHa_SPEC;
9526impl crate::sealed::RegSpec for P20PfsHa_SPEC {
9527 type DataType = u16;
9528}
9529
9530#[doc = "Port 20%s Pin Function Select Register"]
9531pub type P20PfsHa = crate::RegValueT<P20PfsHa_SPEC>;
9532
9533impl P20PfsHa {
9534 #[doc = "Port Mode Control"]
9535 #[inline(always)]
9536 pub fn pmr(
9537 self,
9538 ) -> crate::common::RegisterField<
9539 0,
9540 0x1,
9541 1,
9542 0,
9543 p20pfs_ha::Pmr,
9544 p20pfs_ha::Pmr,
9545 P20PfsHa_SPEC,
9546 crate::common::RW,
9547 > {
9548 crate::common::RegisterField::<
9549 0,
9550 0x1,
9551 1,
9552 0,
9553 p20pfs_ha::Pmr,
9554 p20pfs_ha::Pmr,
9555 P20PfsHa_SPEC,
9556 crate::common::RW,
9557 >::from_register(self, 0)
9558 }
9559
9560 #[doc = "Peripheral Select"]
9561 #[inline(always)]
9562 pub fn psel(
9563 self,
9564 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P20PfsHa_SPEC, crate::common::RW> {
9565 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P20PfsHa_SPEC,crate::common::RW>::from_register(self,0)
9566 }
9567}
9568impl ::core::default::Default for P20PfsHa {
9569 #[inline(always)]
9570 fn default() -> P20PfsHa {
9571 <crate::RegValueT<P20PfsHa_SPEC> as RegisterValue<_>>::new(0)
9572 }
9573}
9574pub mod p20pfs_ha {
9575
9576 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9577 pub struct Pmr_SPEC;
9578 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
9579 impl Pmr {
9580 #[doc = "Used as a general I/O pin"]
9581 pub const _0: Self = Self::new(0);
9582
9583 #[doc = "Used as an I/O port for peripheral functions"]
9584 pub const _1: Self = Self::new(1);
9585 }
9586}
9587#[doc(hidden)]
9588#[derive(Copy, Clone, Eq, PartialEq)]
9589pub struct P20PfsBy_SPEC;
9590impl crate::sealed::RegSpec for P20PfsBy_SPEC {
9591 type DataType = u8;
9592}
9593
9594#[doc = "Port 20%s Pin Function Select Register"]
9595pub type P20PfsBy = crate::RegValueT<P20PfsBy_SPEC>;
9596
9597impl P20PfsBy {
9598 #[doc = "Peripheral Select"]
9599 #[inline(always)]
9600 pub fn psel(
9601 self,
9602 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P20PfsBy_SPEC, crate::common::RW> {
9603 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P20PfsBy_SPEC,crate::common::RW>::from_register(self,0)
9604 }
9605}
9606impl ::core::default::Default for P20PfsBy {
9607 #[inline(always)]
9608 fn default() -> P20PfsBy {
9609 <crate::RegValueT<P20PfsBy_SPEC> as RegisterValue<_>>::new(0)
9610 }
9611}
9612
9613#[doc(hidden)]
9614#[derive(Copy, Clone, Eq, PartialEq)]
9615pub struct P208Pfs_SPEC;
9616impl crate::sealed::RegSpec for P208Pfs_SPEC {
9617 type DataType = u32;
9618}
9619
9620#[doc = "Port 208 Pin Function Select Register"]
9621pub type P208Pfs = crate::RegValueT<P208Pfs_SPEC>;
9622
9623impl P208Pfs {
9624 #[doc = "Port Output Data"]
9625 #[inline(always)]
9626 pub fn podr(
9627 self,
9628 ) -> crate::common::RegisterField<
9629 0,
9630 0x1,
9631 1,
9632 0,
9633 p208pfs::Podr,
9634 p208pfs::Podr,
9635 P208Pfs_SPEC,
9636 crate::common::RW,
9637 > {
9638 crate::common::RegisterField::<
9639 0,
9640 0x1,
9641 1,
9642 0,
9643 p208pfs::Podr,
9644 p208pfs::Podr,
9645 P208Pfs_SPEC,
9646 crate::common::RW,
9647 >::from_register(self, 0)
9648 }
9649
9650 #[doc = "Pmn State"]
9651 #[inline(always)]
9652 pub fn pidr(
9653 self,
9654 ) -> crate::common::RegisterField<
9655 1,
9656 0x1,
9657 1,
9658 0,
9659 p208pfs::Pidr,
9660 p208pfs::Pidr,
9661 P208Pfs_SPEC,
9662 crate::common::R,
9663 > {
9664 crate::common::RegisterField::<
9665 1,
9666 0x1,
9667 1,
9668 0,
9669 p208pfs::Pidr,
9670 p208pfs::Pidr,
9671 P208Pfs_SPEC,
9672 crate::common::R,
9673 >::from_register(self, 0)
9674 }
9675
9676 #[doc = "Port Direction"]
9677 #[inline(always)]
9678 pub fn pdr(
9679 self,
9680 ) -> crate::common::RegisterField<
9681 2,
9682 0x1,
9683 1,
9684 0,
9685 p208pfs::Pdr,
9686 p208pfs::Pdr,
9687 P208Pfs_SPEC,
9688 crate::common::RW,
9689 > {
9690 crate::common::RegisterField::<
9691 2,
9692 0x1,
9693 1,
9694 0,
9695 p208pfs::Pdr,
9696 p208pfs::Pdr,
9697 P208Pfs_SPEC,
9698 crate::common::RW,
9699 >::from_register(self, 0)
9700 }
9701
9702 #[doc = "Pull-up Control"]
9703 #[inline(always)]
9704 pub fn pcr(
9705 self,
9706 ) -> crate::common::RegisterField<
9707 4,
9708 0x1,
9709 1,
9710 0,
9711 p208pfs::Pcr,
9712 p208pfs::Pcr,
9713 P208Pfs_SPEC,
9714 crate::common::RW,
9715 > {
9716 crate::common::RegisterField::<
9717 4,
9718 0x1,
9719 1,
9720 0,
9721 p208pfs::Pcr,
9722 p208pfs::Pcr,
9723 P208Pfs_SPEC,
9724 crate::common::RW,
9725 >::from_register(self, 0)
9726 }
9727
9728 #[doc = "N-Channel Open-Drain Control"]
9729 #[inline(always)]
9730 pub fn ncodr(
9731 self,
9732 ) -> crate::common::RegisterField<
9733 6,
9734 0x1,
9735 1,
9736 0,
9737 p208pfs::Ncodr,
9738 p208pfs::Ncodr,
9739 P208Pfs_SPEC,
9740 crate::common::RW,
9741 > {
9742 crate::common::RegisterField::<
9743 6,
9744 0x1,
9745 1,
9746 0,
9747 p208pfs::Ncodr,
9748 p208pfs::Ncodr,
9749 P208Pfs_SPEC,
9750 crate::common::RW,
9751 >::from_register(self, 0)
9752 }
9753
9754 #[doc = "Port Drive Capability"]
9755 #[inline(always)]
9756 pub fn dscr(
9757 self,
9758 ) -> crate::common::RegisterField<
9759 10,
9760 0x3,
9761 1,
9762 0,
9763 p208pfs::Dscr,
9764 p208pfs::Dscr,
9765 P208Pfs_SPEC,
9766 crate::common::RW,
9767 > {
9768 crate::common::RegisterField::<
9769 10,
9770 0x3,
9771 1,
9772 0,
9773 p208pfs::Dscr,
9774 p208pfs::Dscr,
9775 P208Pfs_SPEC,
9776 crate::common::RW,
9777 >::from_register(self, 0)
9778 }
9779
9780 #[doc = "Event on Falling/Event on Rising"]
9781 #[inline(always)]
9782 pub fn eofr(
9783 self,
9784 ) -> crate::common::RegisterField<
9785 12,
9786 0x3,
9787 1,
9788 0,
9789 p208pfs::Eofr,
9790 p208pfs::Eofr,
9791 P208Pfs_SPEC,
9792 crate::common::RW,
9793 > {
9794 crate::common::RegisterField::<
9795 12,
9796 0x3,
9797 1,
9798 0,
9799 p208pfs::Eofr,
9800 p208pfs::Eofr,
9801 P208Pfs_SPEC,
9802 crate::common::RW,
9803 >::from_register(self, 0)
9804 }
9805
9806 #[doc = "IRQ Input Enable"]
9807 #[inline(always)]
9808 pub fn isel(
9809 self,
9810 ) -> crate::common::RegisterField<
9811 14,
9812 0x1,
9813 1,
9814 0,
9815 p208pfs::Isel,
9816 p208pfs::Isel,
9817 P208Pfs_SPEC,
9818 crate::common::RW,
9819 > {
9820 crate::common::RegisterField::<
9821 14,
9822 0x1,
9823 1,
9824 0,
9825 p208pfs::Isel,
9826 p208pfs::Isel,
9827 P208Pfs_SPEC,
9828 crate::common::RW,
9829 >::from_register(self, 0)
9830 }
9831
9832 #[doc = "Analog Input Enable"]
9833 #[inline(always)]
9834 pub fn asel(
9835 self,
9836 ) -> crate::common::RegisterField<
9837 15,
9838 0x1,
9839 1,
9840 0,
9841 p208pfs::Asel,
9842 p208pfs::Asel,
9843 P208Pfs_SPEC,
9844 crate::common::RW,
9845 > {
9846 crate::common::RegisterField::<
9847 15,
9848 0x1,
9849 1,
9850 0,
9851 p208pfs::Asel,
9852 p208pfs::Asel,
9853 P208Pfs_SPEC,
9854 crate::common::RW,
9855 >::from_register(self, 0)
9856 }
9857
9858 #[doc = "Port Mode Control"]
9859 #[inline(always)]
9860 pub fn pmr(
9861 self,
9862 ) -> crate::common::RegisterField<
9863 16,
9864 0x1,
9865 1,
9866 0,
9867 p208pfs::Pmr,
9868 p208pfs::Pmr,
9869 P208Pfs_SPEC,
9870 crate::common::RW,
9871 > {
9872 crate::common::RegisterField::<
9873 16,
9874 0x1,
9875 1,
9876 0,
9877 p208pfs::Pmr,
9878 p208pfs::Pmr,
9879 P208Pfs_SPEC,
9880 crate::common::RW,
9881 >::from_register(self, 0)
9882 }
9883
9884 #[doc = "Peripheral Select"]
9885 #[inline(always)]
9886 pub fn psel(
9887 self,
9888 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P208Pfs_SPEC, crate::common::RW> {
9889 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P208Pfs_SPEC,crate::common::RW>::from_register(self,0)
9890 }
9891}
9892impl ::core::default::Default for P208Pfs {
9893 #[inline(always)]
9894 fn default() -> P208Pfs {
9895 <crate::RegValueT<P208Pfs_SPEC> as RegisterValue<_>>::new(65552)
9896 }
9897}
9898pub mod p208pfs {
9899
9900 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9901 pub struct Podr_SPEC;
9902 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
9903 impl Podr {
9904 #[doc = "Low output"]
9905 pub const _0: Self = Self::new(0);
9906
9907 #[doc = "High output"]
9908 pub const _1: Self = Self::new(1);
9909 }
9910 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9911 pub struct Pidr_SPEC;
9912 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
9913 impl Pidr {
9914 #[doc = "Low level"]
9915 pub const _0: Self = Self::new(0);
9916
9917 #[doc = "High level"]
9918 pub const _1: Self = Self::new(1);
9919 }
9920 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9921 pub struct Pdr_SPEC;
9922 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
9923 impl Pdr {
9924 #[doc = "Input (functions as an input pin)"]
9925 pub const _0: Self = Self::new(0);
9926
9927 #[doc = "Output (functions as an output pin)"]
9928 pub const _1: Self = Self::new(1);
9929 }
9930 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9931 pub struct Pcr_SPEC;
9932 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
9933 impl Pcr {
9934 #[doc = "Disable input pull-up"]
9935 pub const _0: Self = Self::new(0);
9936
9937 #[doc = "Enable input pull-up"]
9938 pub const _1: Self = Self::new(1);
9939 }
9940 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9941 pub struct Ncodr_SPEC;
9942 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
9943 impl Ncodr {
9944 #[doc = "CMOS output"]
9945 pub const _0: Self = Self::new(0);
9946
9947 #[doc = "NMOS open-drain output"]
9948 pub const _1: Self = Self::new(1);
9949 }
9950 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9951 pub struct Dscr_SPEC;
9952 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
9953 impl Dscr {
9954 #[doc = "Low drive"]
9955 pub const _00: Self = Self::new(0);
9956
9957 #[doc = "Middle drive"]
9958 pub const _01: Self = Self::new(1);
9959
9960 #[doc = "High-speed high-drive"]
9961 pub const _10: Self = Self::new(2);
9962
9963 #[doc = "High drive"]
9964 pub const _11: Self = Self::new(3);
9965 }
9966 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9967 pub struct Eofr_SPEC;
9968 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
9969 impl Eofr {
9970 #[doc = "Don\'t care"]
9971 pub const _00: Self = Self::new(0);
9972
9973 #[doc = "Detect rising edge"]
9974 pub const _01: Self = Self::new(1);
9975
9976 #[doc = "Detect falling edge"]
9977 pub const _10: Self = Self::new(2);
9978
9979 #[doc = "Detect both edges"]
9980 pub const _11: Self = Self::new(3);
9981 }
9982 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9983 pub struct Isel_SPEC;
9984 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
9985 impl Isel {
9986 #[doc = "Not used as an IRQn input pin"]
9987 pub const _0: Self = Self::new(0);
9988
9989 #[doc = "Used as an IRQn input pin"]
9990 pub const _1: Self = Self::new(1);
9991 }
9992 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9993 pub struct Asel_SPEC;
9994 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
9995 impl Asel {
9996 #[doc = "Not used as an analog pin"]
9997 pub const _0: Self = Self::new(0);
9998
9999 #[doc = "Used as an analog pin"]
10000 pub const _1: Self = Self::new(1);
10001 }
10002 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10003 pub struct Pmr_SPEC;
10004 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
10005 impl Pmr {
10006 #[doc = "Used as a general I/O pin"]
10007 pub const _0: Self = Self::new(0);
10008
10009 #[doc = "Used as an I/O port for peripheral functions"]
10010 pub const _1: Self = Self::new(1);
10011 }
10012}
10013#[doc(hidden)]
10014#[derive(Copy, Clone, Eq, PartialEq)]
10015pub struct P208PfsHa_SPEC;
10016impl crate::sealed::RegSpec for P208PfsHa_SPEC {
10017 type DataType = u16;
10018}
10019
10020#[doc = "Port 208 Pin Function Select Register"]
10021pub type P208PfsHa = crate::RegValueT<P208PfsHa_SPEC>;
10022
10023impl P208PfsHa {
10024 #[doc = "Port Mode Control"]
10025 #[inline(always)]
10026 pub fn pmr(
10027 self,
10028 ) -> crate::common::RegisterField<
10029 0,
10030 0x1,
10031 1,
10032 0,
10033 p208pfs_ha::Pmr,
10034 p208pfs_ha::Pmr,
10035 P208PfsHa_SPEC,
10036 crate::common::RW,
10037 > {
10038 crate::common::RegisterField::<
10039 0,
10040 0x1,
10041 1,
10042 0,
10043 p208pfs_ha::Pmr,
10044 p208pfs_ha::Pmr,
10045 P208PfsHa_SPEC,
10046 crate::common::RW,
10047 >::from_register(self, 0)
10048 }
10049
10050 #[doc = "Peripheral Select"]
10051 #[inline(always)]
10052 pub fn psel(
10053 self,
10054 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P208PfsHa_SPEC, crate::common::RW>
10055 {
10056 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P208PfsHa_SPEC,crate::common::RW>::from_register(self,0)
10057 }
10058}
10059impl ::core::default::Default for P208PfsHa {
10060 #[inline(always)]
10061 fn default() -> P208PfsHa {
10062 <crate::RegValueT<P208PfsHa_SPEC> as RegisterValue<_>>::new(1)
10063 }
10064}
10065pub mod p208pfs_ha {
10066
10067 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10068 pub struct Pmr_SPEC;
10069 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
10070 impl Pmr {
10071 #[doc = "Used as a general I/O pin"]
10072 pub const _0: Self = Self::new(0);
10073
10074 #[doc = "Used as an I/O port for peripheral functions"]
10075 pub const _1: Self = Self::new(1);
10076 }
10077}
10078#[doc(hidden)]
10079#[derive(Copy, Clone, Eq, PartialEq)]
10080pub struct P208PfsBy_SPEC;
10081impl crate::sealed::RegSpec for P208PfsBy_SPEC {
10082 type DataType = u8;
10083}
10084
10085#[doc = "Port 208 Pin Function Select Register"]
10086pub type P208PfsBy = crate::RegValueT<P208PfsBy_SPEC>;
10087
10088impl P208PfsBy {
10089 #[doc = "Peripheral Select"]
10090 #[inline(always)]
10091 pub fn psel(
10092 self,
10093 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P208PfsBy_SPEC, crate::common::RW>
10094 {
10095 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P208PfsBy_SPEC,crate::common::RW>::from_register(self,0)
10096 }
10097}
10098impl ::core::default::Default for P208PfsBy {
10099 #[inline(always)]
10100 fn default() -> P208PfsBy {
10101 <crate::RegValueT<P208PfsBy_SPEC> as RegisterValue<_>>::new(0)
10102 }
10103}
10104
10105#[doc(hidden)]
10106#[derive(Copy, Clone, Eq, PartialEq)]
10107pub struct P209Pfs_SPEC;
10108impl crate::sealed::RegSpec for P209Pfs_SPEC {
10109 type DataType = u32;
10110}
10111
10112#[doc = "Port 209 Pin Function Select Register"]
10113pub type P209Pfs = crate::RegValueT<P209Pfs_SPEC>;
10114
10115impl P209Pfs {
10116 #[doc = "Port Output Data"]
10117 #[inline(always)]
10118 pub fn podr(
10119 self,
10120 ) -> crate::common::RegisterField<
10121 0,
10122 0x1,
10123 1,
10124 0,
10125 p209pfs::Podr,
10126 p209pfs::Podr,
10127 P209Pfs_SPEC,
10128 crate::common::RW,
10129 > {
10130 crate::common::RegisterField::<
10131 0,
10132 0x1,
10133 1,
10134 0,
10135 p209pfs::Podr,
10136 p209pfs::Podr,
10137 P209Pfs_SPEC,
10138 crate::common::RW,
10139 >::from_register(self, 0)
10140 }
10141
10142 #[doc = "Pmn State"]
10143 #[inline(always)]
10144 pub fn pidr(
10145 self,
10146 ) -> crate::common::RegisterField<
10147 1,
10148 0x1,
10149 1,
10150 0,
10151 p209pfs::Pidr,
10152 p209pfs::Pidr,
10153 P209Pfs_SPEC,
10154 crate::common::R,
10155 > {
10156 crate::common::RegisterField::<
10157 1,
10158 0x1,
10159 1,
10160 0,
10161 p209pfs::Pidr,
10162 p209pfs::Pidr,
10163 P209Pfs_SPEC,
10164 crate::common::R,
10165 >::from_register(self, 0)
10166 }
10167
10168 #[doc = "Port Direction"]
10169 #[inline(always)]
10170 pub fn pdr(
10171 self,
10172 ) -> crate::common::RegisterField<
10173 2,
10174 0x1,
10175 1,
10176 0,
10177 p209pfs::Pdr,
10178 p209pfs::Pdr,
10179 P209Pfs_SPEC,
10180 crate::common::RW,
10181 > {
10182 crate::common::RegisterField::<
10183 2,
10184 0x1,
10185 1,
10186 0,
10187 p209pfs::Pdr,
10188 p209pfs::Pdr,
10189 P209Pfs_SPEC,
10190 crate::common::RW,
10191 >::from_register(self, 0)
10192 }
10193
10194 #[doc = "Pull-up Control"]
10195 #[inline(always)]
10196 pub fn pcr(
10197 self,
10198 ) -> crate::common::RegisterField<
10199 4,
10200 0x1,
10201 1,
10202 0,
10203 p209pfs::Pcr,
10204 p209pfs::Pcr,
10205 P209Pfs_SPEC,
10206 crate::common::RW,
10207 > {
10208 crate::common::RegisterField::<
10209 4,
10210 0x1,
10211 1,
10212 0,
10213 p209pfs::Pcr,
10214 p209pfs::Pcr,
10215 P209Pfs_SPEC,
10216 crate::common::RW,
10217 >::from_register(self, 0)
10218 }
10219
10220 #[doc = "N-Channel Open-Drain Control"]
10221 #[inline(always)]
10222 pub fn ncodr(
10223 self,
10224 ) -> crate::common::RegisterField<
10225 6,
10226 0x1,
10227 1,
10228 0,
10229 p209pfs::Ncodr,
10230 p209pfs::Ncodr,
10231 P209Pfs_SPEC,
10232 crate::common::RW,
10233 > {
10234 crate::common::RegisterField::<
10235 6,
10236 0x1,
10237 1,
10238 0,
10239 p209pfs::Ncodr,
10240 p209pfs::Ncodr,
10241 P209Pfs_SPEC,
10242 crate::common::RW,
10243 >::from_register(self, 0)
10244 }
10245
10246 #[doc = "Port Drive Capability"]
10247 #[inline(always)]
10248 pub fn dscr(
10249 self,
10250 ) -> crate::common::RegisterField<
10251 10,
10252 0x3,
10253 1,
10254 0,
10255 p209pfs::Dscr,
10256 p209pfs::Dscr,
10257 P209Pfs_SPEC,
10258 crate::common::RW,
10259 > {
10260 crate::common::RegisterField::<
10261 10,
10262 0x3,
10263 1,
10264 0,
10265 p209pfs::Dscr,
10266 p209pfs::Dscr,
10267 P209Pfs_SPEC,
10268 crate::common::RW,
10269 >::from_register(self, 0)
10270 }
10271
10272 #[doc = "Event on Falling/Event on Rising"]
10273 #[inline(always)]
10274 pub fn eofr(
10275 self,
10276 ) -> crate::common::RegisterField<
10277 12,
10278 0x3,
10279 1,
10280 0,
10281 p209pfs::Eofr,
10282 p209pfs::Eofr,
10283 P209Pfs_SPEC,
10284 crate::common::RW,
10285 > {
10286 crate::common::RegisterField::<
10287 12,
10288 0x3,
10289 1,
10290 0,
10291 p209pfs::Eofr,
10292 p209pfs::Eofr,
10293 P209Pfs_SPEC,
10294 crate::common::RW,
10295 >::from_register(self, 0)
10296 }
10297
10298 #[doc = "IRQ Input Enable"]
10299 #[inline(always)]
10300 pub fn isel(
10301 self,
10302 ) -> crate::common::RegisterField<
10303 14,
10304 0x1,
10305 1,
10306 0,
10307 p209pfs::Isel,
10308 p209pfs::Isel,
10309 P209Pfs_SPEC,
10310 crate::common::RW,
10311 > {
10312 crate::common::RegisterField::<
10313 14,
10314 0x1,
10315 1,
10316 0,
10317 p209pfs::Isel,
10318 p209pfs::Isel,
10319 P209Pfs_SPEC,
10320 crate::common::RW,
10321 >::from_register(self, 0)
10322 }
10323
10324 #[doc = "Analog Input Enable"]
10325 #[inline(always)]
10326 pub fn asel(
10327 self,
10328 ) -> crate::common::RegisterField<
10329 15,
10330 0x1,
10331 1,
10332 0,
10333 p209pfs::Asel,
10334 p209pfs::Asel,
10335 P209Pfs_SPEC,
10336 crate::common::RW,
10337 > {
10338 crate::common::RegisterField::<
10339 15,
10340 0x1,
10341 1,
10342 0,
10343 p209pfs::Asel,
10344 p209pfs::Asel,
10345 P209Pfs_SPEC,
10346 crate::common::RW,
10347 >::from_register(self, 0)
10348 }
10349
10350 #[doc = "Port Mode Control"]
10351 #[inline(always)]
10352 pub fn pmr(
10353 self,
10354 ) -> crate::common::RegisterField<
10355 16,
10356 0x1,
10357 1,
10358 0,
10359 p209pfs::Pmr,
10360 p209pfs::Pmr,
10361 P209Pfs_SPEC,
10362 crate::common::RW,
10363 > {
10364 crate::common::RegisterField::<
10365 16,
10366 0x1,
10367 1,
10368 0,
10369 p209pfs::Pmr,
10370 p209pfs::Pmr,
10371 P209Pfs_SPEC,
10372 crate::common::RW,
10373 >::from_register(self, 0)
10374 }
10375
10376 #[doc = "Peripheral Select"]
10377 #[inline(always)]
10378 pub fn psel(
10379 self,
10380 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P209Pfs_SPEC, crate::common::RW> {
10381 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P209Pfs_SPEC,crate::common::RW>::from_register(self,0)
10382 }
10383}
10384impl ::core::default::Default for P209Pfs {
10385 #[inline(always)]
10386 fn default() -> P209Pfs {
10387 <crate::RegValueT<P209Pfs_SPEC> as RegisterValue<_>>::new(66560)
10388 }
10389}
10390pub mod p209pfs {
10391
10392 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10393 pub struct Podr_SPEC;
10394 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
10395 impl Podr {
10396 #[doc = "Low output"]
10397 pub const _0: Self = Self::new(0);
10398
10399 #[doc = "High output"]
10400 pub const _1: Self = Self::new(1);
10401 }
10402 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10403 pub struct Pidr_SPEC;
10404 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
10405 impl Pidr {
10406 #[doc = "Low level"]
10407 pub const _0: Self = Self::new(0);
10408
10409 #[doc = "High level"]
10410 pub const _1: Self = Self::new(1);
10411 }
10412 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10413 pub struct Pdr_SPEC;
10414 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
10415 impl Pdr {
10416 #[doc = "Input (functions as an input pin)"]
10417 pub const _0: Self = Self::new(0);
10418
10419 #[doc = "Output (functions as an output pin)"]
10420 pub const _1: Self = Self::new(1);
10421 }
10422 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10423 pub struct Pcr_SPEC;
10424 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
10425 impl Pcr {
10426 #[doc = "Disable input pull-up"]
10427 pub const _0: Self = Self::new(0);
10428
10429 #[doc = "Enable input pull-up"]
10430 pub const _1: Self = Self::new(1);
10431 }
10432 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10433 pub struct Ncodr_SPEC;
10434 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
10435 impl Ncodr {
10436 #[doc = "CMOS output"]
10437 pub const _0: Self = Self::new(0);
10438
10439 #[doc = "NMOS open-drain output"]
10440 pub const _1: Self = Self::new(1);
10441 }
10442 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10443 pub struct Dscr_SPEC;
10444 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
10445 impl Dscr {
10446 #[doc = "Low drive"]
10447 pub const _00: Self = Self::new(0);
10448
10449 #[doc = "Middle drive"]
10450 pub const _01: Self = Self::new(1);
10451
10452 #[doc = "High-speed high-drive"]
10453 pub const _10: Self = Self::new(2);
10454
10455 #[doc = "High drive"]
10456 pub const _11: Self = Self::new(3);
10457 }
10458 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10459 pub struct Eofr_SPEC;
10460 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
10461 impl Eofr {
10462 #[doc = "Don\'t care"]
10463 pub const _00: Self = Self::new(0);
10464
10465 #[doc = "Detect rising edge"]
10466 pub const _01: Self = Self::new(1);
10467
10468 #[doc = "Detect falling edge"]
10469 pub const _10: Self = Self::new(2);
10470
10471 #[doc = "Detect both edges"]
10472 pub const _11: Self = Self::new(3);
10473 }
10474 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10475 pub struct Isel_SPEC;
10476 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
10477 impl Isel {
10478 #[doc = "Not used as an IRQn input pin"]
10479 pub const _0: Self = Self::new(0);
10480
10481 #[doc = "Used as an IRQn input pin"]
10482 pub const _1: Self = Self::new(1);
10483 }
10484 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10485 pub struct Asel_SPEC;
10486 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
10487 impl Asel {
10488 #[doc = "Not used as an analog pin"]
10489 pub const _0: Self = Self::new(0);
10490
10491 #[doc = "Used as an analog pin"]
10492 pub const _1: Self = Self::new(1);
10493 }
10494 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10495 pub struct Pmr_SPEC;
10496 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
10497 impl Pmr {
10498 #[doc = "Used as a general I/O pin"]
10499 pub const _0: Self = Self::new(0);
10500
10501 #[doc = "Used as an I/O port for peripheral functions"]
10502 pub const _1: Self = Self::new(1);
10503 }
10504}
10505#[doc(hidden)]
10506#[derive(Copy, Clone, Eq, PartialEq)]
10507pub struct P209PfsHa_SPEC;
10508impl crate::sealed::RegSpec for P209PfsHa_SPEC {
10509 type DataType = u16;
10510}
10511
10512#[doc = "Port 209 Pin Function Select Register"]
10513pub type P209PfsHa = crate::RegValueT<P209PfsHa_SPEC>;
10514
10515impl P209PfsHa {
10516 #[doc = "Port Mode Control"]
10517 #[inline(always)]
10518 pub fn pmr(
10519 self,
10520 ) -> crate::common::RegisterField<
10521 0,
10522 0x1,
10523 1,
10524 0,
10525 p209pfs_ha::Pmr,
10526 p209pfs_ha::Pmr,
10527 P209PfsHa_SPEC,
10528 crate::common::RW,
10529 > {
10530 crate::common::RegisterField::<
10531 0,
10532 0x1,
10533 1,
10534 0,
10535 p209pfs_ha::Pmr,
10536 p209pfs_ha::Pmr,
10537 P209PfsHa_SPEC,
10538 crate::common::RW,
10539 >::from_register(self, 0)
10540 }
10541
10542 #[doc = "Peripheral Select"]
10543 #[inline(always)]
10544 pub fn psel(
10545 self,
10546 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P209PfsHa_SPEC, crate::common::RW>
10547 {
10548 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P209PfsHa_SPEC,crate::common::RW>::from_register(self,0)
10549 }
10550}
10551impl ::core::default::Default for P209PfsHa {
10552 #[inline(always)]
10553 fn default() -> P209PfsHa {
10554 <crate::RegValueT<P209PfsHa_SPEC> as RegisterValue<_>>::new(1)
10555 }
10556}
10557pub mod p209pfs_ha {
10558
10559 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10560 pub struct Pmr_SPEC;
10561 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
10562 impl Pmr {
10563 #[doc = "Used as a general I/O pin"]
10564 pub const _0: Self = Self::new(0);
10565
10566 #[doc = "Used as an I/O port for peripheral functions"]
10567 pub const _1: Self = Self::new(1);
10568 }
10569}
10570#[doc(hidden)]
10571#[derive(Copy, Clone, Eq, PartialEq)]
10572pub struct P209PfsBy_SPEC;
10573impl crate::sealed::RegSpec for P209PfsBy_SPEC {
10574 type DataType = u8;
10575}
10576
10577#[doc = "Port 209 Pin Function Select Register"]
10578pub type P209PfsBy = crate::RegValueT<P209PfsBy_SPEC>;
10579
10580impl P209PfsBy {
10581 #[doc = "Peripheral Select"]
10582 #[inline(always)]
10583 pub fn psel(
10584 self,
10585 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P209PfsBy_SPEC, crate::common::RW>
10586 {
10587 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P209PfsBy_SPEC,crate::common::RW>::from_register(self,0)
10588 }
10589}
10590impl ::core::default::Default for P209PfsBy {
10591 #[inline(always)]
10592 fn default() -> P209PfsBy {
10593 <crate::RegValueT<P209PfsBy_SPEC> as RegisterValue<_>>::new(0)
10594 }
10595}
10596
10597#[doc(hidden)]
10598#[derive(Copy, Clone, Eq, PartialEq)]
10599pub struct P210Pfs_SPEC;
10600impl crate::sealed::RegSpec for P210Pfs_SPEC {
10601 type DataType = u32;
10602}
10603
10604#[doc = "Port 210 Pin Function Select Register"]
10605pub type P210Pfs = crate::RegValueT<P210Pfs_SPEC>;
10606
10607impl P210Pfs {
10608 #[doc = "Port Output Data"]
10609 #[inline(always)]
10610 pub fn podr(
10611 self,
10612 ) -> crate::common::RegisterField<
10613 0,
10614 0x1,
10615 1,
10616 0,
10617 p210pfs::Podr,
10618 p210pfs::Podr,
10619 P210Pfs_SPEC,
10620 crate::common::RW,
10621 > {
10622 crate::common::RegisterField::<
10623 0,
10624 0x1,
10625 1,
10626 0,
10627 p210pfs::Podr,
10628 p210pfs::Podr,
10629 P210Pfs_SPEC,
10630 crate::common::RW,
10631 >::from_register(self, 0)
10632 }
10633
10634 #[doc = "Pmn State"]
10635 #[inline(always)]
10636 pub fn pidr(
10637 self,
10638 ) -> crate::common::RegisterField<
10639 1,
10640 0x1,
10641 1,
10642 0,
10643 p210pfs::Pidr,
10644 p210pfs::Pidr,
10645 P210Pfs_SPEC,
10646 crate::common::R,
10647 > {
10648 crate::common::RegisterField::<
10649 1,
10650 0x1,
10651 1,
10652 0,
10653 p210pfs::Pidr,
10654 p210pfs::Pidr,
10655 P210Pfs_SPEC,
10656 crate::common::R,
10657 >::from_register(self, 0)
10658 }
10659
10660 #[doc = "Port Direction"]
10661 #[inline(always)]
10662 pub fn pdr(
10663 self,
10664 ) -> crate::common::RegisterField<
10665 2,
10666 0x1,
10667 1,
10668 0,
10669 p210pfs::Pdr,
10670 p210pfs::Pdr,
10671 P210Pfs_SPEC,
10672 crate::common::RW,
10673 > {
10674 crate::common::RegisterField::<
10675 2,
10676 0x1,
10677 1,
10678 0,
10679 p210pfs::Pdr,
10680 p210pfs::Pdr,
10681 P210Pfs_SPEC,
10682 crate::common::RW,
10683 >::from_register(self, 0)
10684 }
10685
10686 #[doc = "Pull-up Control"]
10687 #[inline(always)]
10688 pub fn pcr(
10689 self,
10690 ) -> crate::common::RegisterField<
10691 4,
10692 0x1,
10693 1,
10694 0,
10695 p210pfs::Pcr,
10696 p210pfs::Pcr,
10697 P210Pfs_SPEC,
10698 crate::common::RW,
10699 > {
10700 crate::common::RegisterField::<
10701 4,
10702 0x1,
10703 1,
10704 0,
10705 p210pfs::Pcr,
10706 p210pfs::Pcr,
10707 P210Pfs_SPEC,
10708 crate::common::RW,
10709 >::from_register(self, 0)
10710 }
10711
10712 #[doc = "N-Channel Open-Drain Control"]
10713 #[inline(always)]
10714 pub fn ncodr(
10715 self,
10716 ) -> crate::common::RegisterField<
10717 6,
10718 0x1,
10719 1,
10720 0,
10721 p210pfs::Ncodr,
10722 p210pfs::Ncodr,
10723 P210Pfs_SPEC,
10724 crate::common::RW,
10725 > {
10726 crate::common::RegisterField::<
10727 6,
10728 0x1,
10729 1,
10730 0,
10731 p210pfs::Ncodr,
10732 p210pfs::Ncodr,
10733 P210Pfs_SPEC,
10734 crate::common::RW,
10735 >::from_register(self, 0)
10736 }
10737
10738 #[doc = "Port Drive Capability"]
10739 #[inline(always)]
10740 pub fn dscr(
10741 self,
10742 ) -> crate::common::RegisterField<
10743 10,
10744 0x3,
10745 1,
10746 0,
10747 p210pfs::Dscr,
10748 p210pfs::Dscr,
10749 P210Pfs_SPEC,
10750 crate::common::RW,
10751 > {
10752 crate::common::RegisterField::<
10753 10,
10754 0x3,
10755 1,
10756 0,
10757 p210pfs::Dscr,
10758 p210pfs::Dscr,
10759 P210Pfs_SPEC,
10760 crate::common::RW,
10761 >::from_register(self, 0)
10762 }
10763
10764 #[doc = "Event on Falling/Event on Rising"]
10765 #[inline(always)]
10766 pub fn eofr(
10767 self,
10768 ) -> crate::common::RegisterField<
10769 12,
10770 0x3,
10771 1,
10772 0,
10773 p210pfs::Eofr,
10774 p210pfs::Eofr,
10775 P210Pfs_SPEC,
10776 crate::common::RW,
10777 > {
10778 crate::common::RegisterField::<
10779 12,
10780 0x3,
10781 1,
10782 0,
10783 p210pfs::Eofr,
10784 p210pfs::Eofr,
10785 P210Pfs_SPEC,
10786 crate::common::RW,
10787 >::from_register(self, 0)
10788 }
10789
10790 #[doc = "IRQ Input Enable"]
10791 #[inline(always)]
10792 pub fn isel(
10793 self,
10794 ) -> crate::common::RegisterField<
10795 14,
10796 0x1,
10797 1,
10798 0,
10799 p210pfs::Isel,
10800 p210pfs::Isel,
10801 P210Pfs_SPEC,
10802 crate::common::RW,
10803 > {
10804 crate::common::RegisterField::<
10805 14,
10806 0x1,
10807 1,
10808 0,
10809 p210pfs::Isel,
10810 p210pfs::Isel,
10811 P210Pfs_SPEC,
10812 crate::common::RW,
10813 >::from_register(self, 0)
10814 }
10815
10816 #[doc = "Analog Input Enable"]
10817 #[inline(always)]
10818 pub fn asel(
10819 self,
10820 ) -> crate::common::RegisterField<
10821 15,
10822 0x1,
10823 1,
10824 0,
10825 p210pfs::Asel,
10826 p210pfs::Asel,
10827 P210Pfs_SPEC,
10828 crate::common::RW,
10829 > {
10830 crate::common::RegisterField::<
10831 15,
10832 0x1,
10833 1,
10834 0,
10835 p210pfs::Asel,
10836 p210pfs::Asel,
10837 P210Pfs_SPEC,
10838 crate::common::RW,
10839 >::from_register(self, 0)
10840 }
10841
10842 #[doc = "Port Mode Control"]
10843 #[inline(always)]
10844 pub fn pmr(
10845 self,
10846 ) -> crate::common::RegisterField<
10847 16,
10848 0x1,
10849 1,
10850 0,
10851 p210pfs::Pmr,
10852 p210pfs::Pmr,
10853 P210Pfs_SPEC,
10854 crate::common::RW,
10855 > {
10856 crate::common::RegisterField::<
10857 16,
10858 0x1,
10859 1,
10860 0,
10861 p210pfs::Pmr,
10862 p210pfs::Pmr,
10863 P210Pfs_SPEC,
10864 crate::common::RW,
10865 >::from_register(self, 0)
10866 }
10867
10868 #[doc = "Peripheral Select"]
10869 #[inline(always)]
10870 pub fn psel(
10871 self,
10872 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P210Pfs_SPEC, crate::common::RW> {
10873 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P210Pfs_SPEC,crate::common::RW>::from_register(self,0)
10874 }
10875}
10876impl ::core::default::Default for P210Pfs {
10877 #[inline(always)]
10878 fn default() -> P210Pfs {
10879 <crate::RegValueT<P210Pfs_SPEC> as RegisterValue<_>>::new(66576)
10880 }
10881}
10882pub mod p210pfs {
10883
10884 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10885 pub struct Podr_SPEC;
10886 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
10887 impl Podr {
10888 #[doc = "Low output"]
10889 pub const _0: Self = Self::new(0);
10890
10891 #[doc = "High output"]
10892 pub const _1: Self = Self::new(1);
10893 }
10894 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10895 pub struct Pidr_SPEC;
10896 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
10897 impl Pidr {
10898 #[doc = "Low level"]
10899 pub const _0: Self = Self::new(0);
10900
10901 #[doc = "High level"]
10902 pub const _1: Self = Self::new(1);
10903 }
10904 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10905 pub struct Pdr_SPEC;
10906 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
10907 impl Pdr {
10908 #[doc = "Input (functions as an input pin)"]
10909 pub const _0: Self = Self::new(0);
10910
10911 #[doc = "Output (functions as an output pin)"]
10912 pub const _1: Self = Self::new(1);
10913 }
10914 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10915 pub struct Pcr_SPEC;
10916 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
10917 impl Pcr {
10918 #[doc = "Disable input pull-up"]
10919 pub const _0: Self = Self::new(0);
10920
10921 #[doc = "Enable input pull-up"]
10922 pub const _1: Self = Self::new(1);
10923 }
10924 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10925 pub struct Ncodr_SPEC;
10926 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
10927 impl Ncodr {
10928 #[doc = "CMOS output"]
10929 pub const _0: Self = Self::new(0);
10930
10931 #[doc = "NMOS open-drain output"]
10932 pub const _1: Self = Self::new(1);
10933 }
10934 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10935 pub struct Dscr_SPEC;
10936 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
10937 impl Dscr {
10938 #[doc = "Low drive"]
10939 pub const _00: Self = Self::new(0);
10940
10941 #[doc = "Middle drive"]
10942 pub const _01: Self = Self::new(1);
10943
10944 #[doc = "High-speed high-drive"]
10945 pub const _10: Self = Self::new(2);
10946
10947 #[doc = "High drive"]
10948 pub const _11: Self = Self::new(3);
10949 }
10950 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10951 pub struct Eofr_SPEC;
10952 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
10953 impl Eofr {
10954 #[doc = "Don\'t care"]
10955 pub const _00: Self = Self::new(0);
10956
10957 #[doc = "Detect rising edge"]
10958 pub const _01: Self = Self::new(1);
10959
10960 #[doc = "Detect falling edge"]
10961 pub const _10: Self = Self::new(2);
10962
10963 #[doc = "Detect both edges"]
10964 pub const _11: Self = Self::new(3);
10965 }
10966 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10967 pub struct Isel_SPEC;
10968 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
10969 impl Isel {
10970 #[doc = "Not used as an IRQn input pin"]
10971 pub const _0: Self = Self::new(0);
10972
10973 #[doc = "Used as an IRQn input pin"]
10974 pub const _1: Self = Self::new(1);
10975 }
10976 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10977 pub struct Asel_SPEC;
10978 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
10979 impl Asel {
10980 #[doc = "Not used as an analog pin"]
10981 pub const _0: Self = Self::new(0);
10982
10983 #[doc = "Used as an analog pin"]
10984 pub const _1: Self = Self::new(1);
10985 }
10986 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10987 pub struct Pmr_SPEC;
10988 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
10989 impl Pmr {
10990 #[doc = "Used as a general I/O pin"]
10991 pub const _0: Self = Self::new(0);
10992
10993 #[doc = "Used as an I/O port for peripheral functions"]
10994 pub const _1: Self = Self::new(1);
10995 }
10996}
10997#[doc(hidden)]
10998#[derive(Copy, Clone, Eq, PartialEq)]
10999pub struct P210PfsHa_SPEC;
11000impl crate::sealed::RegSpec for P210PfsHa_SPEC {
11001 type DataType = u16;
11002}
11003
11004#[doc = "Port 210 Pin Function Select Register"]
11005pub type P210PfsHa = crate::RegValueT<P210PfsHa_SPEC>;
11006
11007impl P210PfsHa {
11008 #[doc = "Port Mode Control"]
11009 #[inline(always)]
11010 pub fn pmr(
11011 self,
11012 ) -> crate::common::RegisterField<
11013 0,
11014 0x1,
11015 1,
11016 0,
11017 p210pfs_ha::Pmr,
11018 p210pfs_ha::Pmr,
11019 P210PfsHa_SPEC,
11020 crate::common::RW,
11021 > {
11022 crate::common::RegisterField::<
11023 0,
11024 0x1,
11025 1,
11026 0,
11027 p210pfs_ha::Pmr,
11028 p210pfs_ha::Pmr,
11029 P210PfsHa_SPEC,
11030 crate::common::RW,
11031 >::from_register(self, 0)
11032 }
11033
11034 #[doc = "Peripheral Select"]
11035 #[inline(always)]
11036 pub fn psel(
11037 self,
11038 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P210PfsHa_SPEC, crate::common::RW>
11039 {
11040 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P210PfsHa_SPEC,crate::common::RW>::from_register(self,0)
11041 }
11042}
11043impl ::core::default::Default for P210PfsHa {
11044 #[inline(always)]
11045 fn default() -> P210PfsHa {
11046 <crate::RegValueT<P210PfsHa_SPEC> as RegisterValue<_>>::new(1)
11047 }
11048}
11049pub mod p210pfs_ha {
11050
11051 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11052 pub struct Pmr_SPEC;
11053 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
11054 impl Pmr {
11055 #[doc = "Used as a general I/O pin"]
11056 pub const _0: Self = Self::new(0);
11057
11058 #[doc = "Used as an I/O port for peripheral functions"]
11059 pub const _1: Self = Self::new(1);
11060 }
11061}
11062#[doc(hidden)]
11063#[derive(Copy, Clone, Eq, PartialEq)]
11064pub struct P210PfsBy_SPEC;
11065impl crate::sealed::RegSpec for P210PfsBy_SPEC {
11066 type DataType = u8;
11067}
11068
11069#[doc = "Port 210 Pin Function Select Register"]
11070pub type P210PfsBy = crate::RegValueT<P210PfsBy_SPEC>;
11071
11072impl P210PfsBy {
11073 #[doc = "Peripheral Select"]
11074 #[inline(always)]
11075 pub fn psel(
11076 self,
11077 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P210PfsBy_SPEC, crate::common::RW>
11078 {
11079 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P210PfsBy_SPEC,crate::common::RW>::from_register(self,0)
11080 }
11081}
11082impl ::core::default::Default for P210PfsBy {
11083 #[inline(always)]
11084 fn default() -> P210PfsBy {
11085 <crate::RegValueT<P210PfsBy_SPEC> as RegisterValue<_>>::new(0)
11086 }
11087}
11088
11089#[doc(hidden)]
11090#[derive(Copy, Clone, Eq, PartialEq)]
11091pub struct P211Pfs_SPEC;
11092impl crate::sealed::RegSpec for P211Pfs_SPEC {
11093 type DataType = u32;
11094}
11095
11096#[doc = "Port 211 Pin Function Select Register"]
11097pub type P211Pfs = crate::RegValueT<P211Pfs_SPEC>;
11098
11099impl P211Pfs {
11100 #[doc = "Port Output Data"]
11101 #[inline(always)]
11102 pub fn podr(
11103 self,
11104 ) -> crate::common::RegisterField<
11105 0,
11106 0x1,
11107 1,
11108 0,
11109 p211pfs::Podr,
11110 p211pfs::Podr,
11111 P211Pfs_SPEC,
11112 crate::common::RW,
11113 > {
11114 crate::common::RegisterField::<
11115 0,
11116 0x1,
11117 1,
11118 0,
11119 p211pfs::Podr,
11120 p211pfs::Podr,
11121 P211Pfs_SPEC,
11122 crate::common::RW,
11123 >::from_register(self, 0)
11124 }
11125
11126 #[doc = "Pmn State"]
11127 #[inline(always)]
11128 pub fn pidr(
11129 self,
11130 ) -> crate::common::RegisterField<
11131 1,
11132 0x1,
11133 1,
11134 0,
11135 p211pfs::Pidr,
11136 p211pfs::Pidr,
11137 P211Pfs_SPEC,
11138 crate::common::R,
11139 > {
11140 crate::common::RegisterField::<
11141 1,
11142 0x1,
11143 1,
11144 0,
11145 p211pfs::Pidr,
11146 p211pfs::Pidr,
11147 P211Pfs_SPEC,
11148 crate::common::R,
11149 >::from_register(self, 0)
11150 }
11151
11152 #[doc = "Port Direction"]
11153 #[inline(always)]
11154 pub fn pdr(
11155 self,
11156 ) -> crate::common::RegisterField<
11157 2,
11158 0x1,
11159 1,
11160 0,
11161 p211pfs::Pdr,
11162 p211pfs::Pdr,
11163 P211Pfs_SPEC,
11164 crate::common::RW,
11165 > {
11166 crate::common::RegisterField::<
11167 2,
11168 0x1,
11169 1,
11170 0,
11171 p211pfs::Pdr,
11172 p211pfs::Pdr,
11173 P211Pfs_SPEC,
11174 crate::common::RW,
11175 >::from_register(self, 0)
11176 }
11177
11178 #[doc = "Pull-up Control"]
11179 #[inline(always)]
11180 pub fn pcr(
11181 self,
11182 ) -> crate::common::RegisterField<
11183 4,
11184 0x1,
11185 1,
11186 0,
11187 p211pfs::Pcr,
11188 p211pfs::Pcr,
11189 P211Pfs_SPEC,
11190 crate::common::RW,
11191 > {
11192 crate::common::RegisterField::<
11193 4,
11194 0x1,
11195 1,
11196 0,
11197 p211pfs::Pcr,
11198 p211pfs::Pcr,
11199 P211Pfs_SPEC,
11200 crate::common::RW,
11201 >::from_register(self, 0)
11202 }
11203
11204 #[doc = "N-Channel Open-Drain Control"]
11205 #[inline(always)]
11206 pub fn ncodr(
11207 self,
11208 ) -> crate::common::RegisterField<
11209 6,
11210 0x1,
11211 1,
11212 0,
11213 p211pfs::Ncodr,
11214 p211pfs::Ncodr,
11215 P211Pfs_SPEC,
11216 crate::common::RW,
11217 > {
11218 crate::common::RegisterField::<
11219 6,
11220 0x1,
11221 1,
11222 0,
11223 p211pfs::Ncodr,
11224 p211pfs::Ncodr,
11225 P211Pfs_SPEC,
11226 crate::common::RW,
11227 >::from_register(self, 0)
11228 }
11229
11230 #[doc = "Port Drive Capability"]
11231 #[inline(always)]
11232 pub fn dscr(
11233 self,
11234 ) -> crate::common::RegisterField<
11235 10,
11236 0x3,
11237 1,
11238 0,
11239 p211pfs::Dscr,
11240 p211pfs::Dscr,
11241 P211Pfs_SPEC,
11242 crate::common::RW,
11243 > {
11244 crate::common::RegisterField::<
11245 10,
11246 0x3,
11247 1,
11248 0,
11249 p211pfs::Dscr,
11250 p211pfs::Dscr,
11251 P211Pfs_SPEC,
11252 crate::common::RW,
11253 >::from_register(self, 0)
11254 }
11255
11256 #[doc = "Event on Falling/Event on Rising"]
11257 #[inline(always)]
11258 pub fn eofr(
11259 self,
11260 ) -> crate::common::RegisterField<
11261 12,
11262 0x3,
11263 1,
11264 0,
11265 p211pfs::Eofr,
11266 p211pfs::Eofr,
11267 P211Pfs_SPEC,
11268 crate::common::RW,
11269 > {
11270 crate::common::RegisterField::<
11271 12,
11272 0x3,
11273 1,
11274 0,
11275 p211pfs::Eofr,
11276 p211pfs::Eofr,
11277 P211Pfs_SPEC,
11278 crate::common::RW,
11279 >::from_register(self, 0)
11280 }
11281
11282 #[doc = "IRQ Input Enable"]
11283 #[inline(always)]
11284 pub fn isel(
11285 self,
11286 ) -> crate::common::RegisterField<
11287 14,
11288 0x1,
11289 1,
11290 0,
11291 p211pfs::Isel,
11292 p211pfs::Isel,
11293 P211Pfs_SPEC,
11294 crate::common::RW,
11295 > {
11296 crate::common::RegisterField::<
11297 14,
11298 0x1,
11299 1,
11300 0,
11301 p211pfs::Isel,
11302 p211pfs::Isel,
11303 P211Pfs_SPEC,
11304 crate::common::RW,
11305 >::from_register(self, 0)
11306 }
11307
11308 #[doc = "Analog Input Enable"]
11309 #[inline(always)]
11310 pub fn asel(
11311 self,
11312 ) -> crate::common::RegisterField<
11313 15,
11314 0x1,
11315 1,
11316 0,
11317 p211pfs::Asel,
11318 p211pfs::Asel,
11319 P211Pfs_SPEC,
11320 crate::common::RW,
11321 > {
11322 crate::common::RegisterField::<
11323 15,
11324 0x1,
11325 1,
11326 0,
11327 p211pfs::Asel,
11328 p211pfs::Asel,
11329 P211Pfs_SPEC,
11330 crate::common::RW,
11331 >::from_register(self, 0)
11332 }
11333
11334 #[doc = "Port Mode Control"]
11335 #[inline(always)]
11336 pub fn pmr(
11337 self,
11338 ) -> crate::common::RegisterField<
11339 16,
11340 0x1,
11341 1,
11342 0,
11343 p211pfs::Pmr,
11344 p211pfs::Pmr,
11345 P211Pfs_SPEC,
11346 crate::common::RW,
11347 > {
11348 crate::common::RegisterField::<
11349 16,
11350 0x1,
11351 1,
11352 0,
11353 p211pfs::Pmr,
11354 p211pfs::Pmr,
11355 P211Pfs_SPEC,
11356 crate::common::RW,
11357 >::from_register(self, 0)
11358 }
11359
11360 #[doc = "Peripheral Select"]
11361 #[inline(always)]
11362 pub fn psel(
11363 self,
11364 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P211Pfs_SPEC, crate::common::RW> {
11365 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P211Pfs_SPEC,crate::common::RW>::from_register(self,0)
11366 }
11367}
11368impl ::core::default::Default for P211Pfs {
11369 #[inline(always)]
11370 fn default() -> P211Pfs {
11371 <crate::RegValueT<P211Pfs_SPEC> as RegisterValue<_>>::new(65552)
11372 }
11373}
11374pub mod p211pfs {
11375
11376 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11377 pub struct Podr_SPEC;
11378 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
11379 impl Podr {
11380 #[doc = "Low output"]
11381 pub const _0: Self = Self::new(0);
11382
11383 #[doc = "High output"]
11384 pub const _1: Self = Self::new(1);
11385 }
11386 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11387 pub struct Pidr_SPEC;
11388 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
11389 impl Pidr {
11390 #[doc = "Low level"]
11391 pub const _0: Self = Self::new(0);
11392
11393 #[doc = "High level"]
11394 pub const _1: Self = Self::new(1);
11395 }
11396 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11397 pub struct Pdr_SPEC;
11398 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
11399 impl Pdr {
11400 #[doc = "Input (functions as an input pin)"]
11401 pub const _0: Self = Self::new(0);
11402
11403 #[doc = "Output (functions as an output pin)"]
11404 pub const _1: Self = Self::new(1);
11405 }
11406 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11407 pub struct Pcr_SPEC;
11408 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
11409 impl Pcr {
11410 #[doc = "Disable input pull-up"]
11411 pub const _0: Self = Self::new(0);
11412
11413 #[doc = "Enable input pull-up"]
11414 pub const _1: Self = Self::new(1);
11415 }
11416 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11417 pub struct Ncodr_SPEC;
11418 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
11419 impl Ncodr {
11420 #[doc = "CMOS output"]
11421 pub const _0: Self = Self::new(0);
11422
11423 #[doc = "NMOS open-drain output"]
11424 pub const _1: Self = Self::new(1);
11425 }
11426 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11427 pub struct Dscr_SPEC;
11428 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
11429 impl Dscr {
11430 #[doc = "Low drive"]
11431 pub const _00: Self = Self::new(0);
11432
11433 #[doc = "Middle drive"]
11434 pub const _01: Self = Self::new(1);
11435
11436 #[doc = "High-speed high-drive"]
11437 pub const _10: Self = Self::new(2);
11438
11439 #[doc = "High drive"]
11440 pub const _11: Self = Self::new(3);
11441 }
11442 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11443 pub struct Eofr_SPEC;
11444 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
11445 impl Eofr {
11446 #[doc = "Don\'t care"]
11447 pub const _00: Self = Self::new(0);
11448
11449 #[doc = "Detect rising edge"]
11450 pub const _01: Self = Self::new(1);
11451
11452 #[doc = "Detect falling edge"]
11453 pub const _10: Self = Self::new(2);
11454
11455 #[doc = "Detect both edges"]
11456 pub const _11: Self = Self::new(3);
11457 }
11458 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11459 pub struct Isel_SPEC;
11460 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
11461 impl Isel {
11462 #[doc = "Not used as an IRQn input pin"]
11463 pub const _0: Self = Self::new(0);
11464
11465 #[doc = "Used as an IRQn input pin"]
11466 pub const _1: Self = Self::new(1);
11467 }
11468 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11469 pub struct Asel_SPEC;
11470 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
11471 impl Asel {
11472 #[doc = "Not used as an analog pin"]
11473 pub const _0: Self = Self::new(0);
11474
11475 #[doc = "Used as an analog pin"]
11476 pub const _1: Self = Self::new(1);
11477 }
11478 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11479 pub struct Pmr_SPEC;
11480 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
11481 impl Pmr {
11482 #[doc = "Used as a general I/O pin"]
11483 pub const _0: Self = Self::new(0);
11484
11485 #[doc = "Used as an I/O port for peripheral functions"]
11486 pub const _1: Self = Self::new(1);
11487 }
11488}
11489#[doc(hidden)]
11490#[derive(Copy, Clone, Eq, PartialEq)]
11491pub struct P211PfsHa_SPEC;
11492impl crate::sealed::RegSpec for P211PfsHa_SPEC {
11493 type DataType = u16;
11494}
11495
11496#[doc = "Port 211 Pin Function Select Register"]
11497pub type P211PfsHa = crate::RegValueT<P211PfsHa_SPEC>;
11498
11499impl P211PfsHa {
11500 #[doc = "Port Mode Control"]
11501 #[inline(always)]
11502 pub fn pmr(
11503 self,
11504 ) -> crate::common::RegisterField<
11505 0,
11506 0x1,
11507 1,
11508 0,
11509 p211pfs_ha::Pmr,
11510 p211pfs_ha::Pmr,
11511 P211PfsHa_SPEC,
11512 crate::common::RW,
11513 > {
11514 crate::common::RegisterField::<
11515 0,
11516 0x1,
11517 1,
11518 0,
11519 p211pfs_ha::Pmr,
11520 p211pfs_ha::Pmr,
11521 P211PfsHa_SPEC,
11522 crate::common::RW,
11523 >::from_register(self, 0)
11524 }
11525
11526 #[doc = "Peripheral Select"]
11527 #[inline(always)]
11528 pub fn psel(
11529 self,
11530 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P211PfsHa_SPEC, crate::common::RW>
11531 {
11532 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P211PfsHa_SPEC,crate::common::RW>::from_register(self,0)
11533 }
11534}
11535impl ::core::default::Default for P211PfsHa {
11536 #[inline(always)]
11537 fn default() -> P211PfsHa {
11538 <crate::RegValueT<P211PfsHa_SPEC> as RegisterValue<_>>::new(1)
11539 }
11540}
11541pub mod p211pfs_ha {
11542
11543 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11544 pub struct Pmr_SPEC;
11545 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
11546 impl Pmr {
11547 #[doc = "Used as a general I/O pin"]
11548 pub const _0: Self = Self::new(0);
11549
11550 #[doc = "Used as an I/O port for peripheral functions"]
11551 pub const _1: Self = Self::new(1);
11552 }
11553}
11554#[doc(hidden)]
11555#[derive(Copy, Clone, Eq, PartialEq)]
11556pub struct P211PfsBy_SPEC;
11557impl crate::sealed::RegSpec for P211PfsBy_SPEC {
11558 type DataType = u8;
11559}
11560
11561#[doc = "Port 211 Pin Function Select Register"]
11562pub type P211PfsBy = crate::RegValueT<P211PfsBy_SPEC>;
11563
11564impl P211PfsBy {
11565 #[doc = "Peripheral Select"]
11566 #[inline(always)]
11567 pub fn psel(
11568 self,
11569 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P211PfsBy_SPEC, crate::common::RW>
11570 {
11571 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P211PfsBy_SPEC,crate::common::RW>::from_register(self,0)
11572 }
11573}
11574impl ::core::default::Default for P211PfsBy {
11575 #[inline(always)]
11576 fn default() -> P211PfsBy {
11577 <crate::RegValueT<P211PfsBy_SPEC> as RegisterValue<_>>::new(0)
11578 }
11579}
11580
11581#[doc(hidden)]
11582#[derive(Copy, Clone, Eq, PartialEq)]
11583pub struct P2Pfs_SPEC;
11584impl crate::sealed::RegSpec for P2Pfs_SPEC {
11585 type DataType = u32;
11586}
11587
11588#[doc = "Port 2%s Pin Function Select Register"]
11589pub type P2Pfs = crate::RegValueT<P2Pfs_SPEC>;
11590
11591impl P2Pfs {
11592 #[doc = "Port Output Data"]
11593 #[inline(always)]
11594 pub fn podr(
11595 self,
11596 ) -> crate::common::RegisterField<
11597 0,
11598 0x1,
11599 1,
11600 0,
11601 p2pfs::Podr,
11602 p2pfs::Podr,
11603 P2Pfs_SPEC,
11604 crate::common::RW,
11605 > {
11606 crate::common::RegisterField::<
11607 0,
11608 0x1,
11609 1,
11610 0,
11611 p2pfs::Podr,
11612 p2pfs::Podr,
11613 P2Pfs_SPEC,
11614 crate::common::RW,
11615 >::from_register(self, 0)
11616 }
11617
11618 #[doc = "Pmn State"]
11619 #[inline(always)]
11620 pub fn pidr(
11621 self,
11622 ) -> crate::common::RegisterField<
11623 1,
11624 0x1,
11625 1,
11626 0,
11627 p2pfs::Pidr,
11628 p2pfs::Pidr,
11629 P2Pfs_SPEC,
11630 crate::common::R,
11631 > {
11632 crate::common::RegisterField::<
11633 1,
11634 0x1,
11635 1,
11636 0,
11637 p2pfs::Pidr,
11638 p2pfs::Pidr,
11639 P2Pfs_SPEC,
11640 crate::common::R,
11641 >::from_register(self, 0)
11642 }
11643
11644 #[doc = "Port Direction"]
11645 #[inline(always)]
11646 pub fn pdr(
11647 self,
11648 ) -> crate::common::RegisterField<
11649 2,
11650 0x1,
11651 1,
11652 0,
11653 p2pfs::Pdr,
11654 p2pfs::Pdr,
11655 P2Pfs_SPEC,
11656 crate::common::RW,
11657 > {
11658 crate::common::RegisterField::<
11659 2,
11660 0x1,
11661 1,
11662 0,
11663 p2pfs::Pdr,
11664 p2pfs::Pdr,
11665 P2Pfs_SPEC,
11666 crate::common::RW,
11667 >::from_register(self, 0)
11668 }
11669
11670 #[doc = "Pull-up Control"]
11671 #[inline(always)]
11672 pub fn pcr(
11673 self,
11674 ) -> crate::common::RegisterField<
11675 4,
11676 0x1,
11677 1,
11678 0,
11679 p2pfs::Pcr,
11680 p2pfs::Pcr,
11681 P2Pfs_SPEC,
11682 crate::common::RW,
11683 > {
11684 crate::common::RegisterField::<
11685 4,
11686 0x1,
11687 1,
11688 0,
11689 p2pfs::Pcr,
11690 p2pfs::Pcr,
11691 P2Pfs_SPEC,
11692 crate::common::RW,
11693 >::from_register(self, 0)
11694 }
11695
11696 #[doc = "N-Channel Open-Drain Control"]
11697 #[inline(always)]
11698 pub fn ncodr(
11699 self,
11700 ) -> crate::common::RegisterField<
11701 6,
11702 0x1,
11703 1,
11704 0,
11705 p2pfs::Ncodr,
11706 p2pfs::Ncodr,
11707 P2Pfs_SPEC,
11708 crate::common::RW,
11709 > {
11710 crate::common::RegisterField::<
11711 6,
11712 0x1,
11713 1,
11714 0,
11715 p2pfs::Ncodr,
11716 p2pfs::Ncodr,
11717 P2Pfs_SPEC,
11718 crate::common::RW,
11719 >::from_register(self, 0)
11720 }
11721
11722 #[doc = "Port Drive Capability"]
11723 #[inline(always)]
11724 pub fn dscr(
11725 self,
11726 ) -> crate::common::RegisterField<
11727 10,
11728 0x3,
11729 1,
11730 0,
11731 p2pfs::Dscr,
11732 p2pfs::Dscr,
11733 P2Pfs_SPEC,
11734 crate::common::RW,
11735 > {
11736 crate::common::RegisterField::<
11737 10,
11738 0x3,
11739 1,
11740 0,
11741 p2pfs::Dscr,
11742 p2pfs::Dscr,
11743 P2Pfs_SPEC,
11744 crate::common::RW,
11745 >::from_register(self, 0)
11746 }
11747
11748 #[doc = "Event on Falling/Event on Rising"]
11749 #[inline(always)]
11750 pub fn eofr(
11751 self,
11752 ) -> crate::common::RegisterField<
11753 12,
11754 0x3,
11755 1,
11756 0,
11757 p2pfs::Eofr,
11758 p2pfs::Eofr,
11759 P2Pfs_SPEC,
11760 crate::common::RW,
11761 > {
11762 crate::common::RegisterField::<
11763 12,
11764 0x3,
11765 1,
11766 0,
11767 p2pfs::Eofr,
11768 p2pfs::Eofr,
11769 P2Pfs_SPEC,
11770 crate::common::RW,
11771 >::from_register(self, 0)
11772 }
11773
11774 #[doc = "IRQ Input Enable"]
11775 #[inline(always)]
11776 pub fn isel(
11777 self,
11778 ) -> crate::common::RegisterField<
11779 14,
11780 0x1,
11781 1,
11782 0,
11783 p2pfs::Isel,
11784 p2pfs::Isel,
11785 P2Pfs_SPEC,
11786 crate::common::RW,
11787 > {
11788 crate::common::RegisterField::<
11789 14,
11790 0x1,
11791 1,
11792 0,
11793 p2pfs::Isel,
11794 p2pfs::Isel,
11795 P2Pfs_SPEC,
11796 crate::common::RW,
11797 >::from_register(self, 0)
11798 }
11799
11800 #[doc = "Analog Input Enable"]
11801 #[inline(always)]
11802 pub fn asel(
11803 self,
11804 ) -> crate::common::RegisterField<
11805 15,
11806 0x1,
11807 1,
11808 0,
11809 p2pfs::Asel,
11810 p2pfs::Asel,
11811 P2Pfs_SPEC,
11812 crate::common::RW,
11813 > {
11814 crate::common::RegisterField::<
11815 15,
11816 0x1,
11817 1,
11818 0,
11819 p2pfs::Asel,
11820 p2pfs::Asel,
11821 P2Pfs_SPEC,
11822 crate::common::RW,
11823 >::from_register(self, 0)
11824 }
11825
11826 #[doc = "Port Mode Control"]
11827 #[inline(always)]
11828 pub fn pmr(
11829 self,
11830 ) -> crate::common::RegisterField<
11831 16,
11832 0x1,
11833 1,
11834 0,
11835 p2pfs::Pmr,
11836 p2pfs::Pmr,
11837 P2Pfs_SPEC,
11838 crate::common::RW,
11839 > {
11840 crate::common::RegisterField::<
11841 16,
11842 0x1,
11843 1,
11844 0,
11845 p2pfs::Pmr,
11846 p2pfs::Pmr,
11847 P2Pfs_SPEC,
11848 crate::common::RW,
11849 >::from_register(self, 0)
11850 }
11851
11852 #[doc = "Peripheral Select"]
11853 #[inline(always)]
11854 pub fn psel(
11855 self,
11856 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P2Pfs_SPEC, crate::common::RW> {
11857 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P2Pfs_SPEC,crate::common::RW>::from_register(self,0)
11858 }
11859}
11860impl ::core::default::Default for P2Pfs {
11861 #[inline(always)]
11862 fn default() -> P2Pfs {
11863 <crate::RegValueT<P2Pfs_SPEC> as RegisterValue<_>>::new(0)
11864 }
11865}
11866pub mod p2pfs {
11867
11868 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11869 pub struct Podr_SPEC;
11870 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
11871 impl Podr {
11872 #[doc = "Low output"]
11873 pub const _0: Self = Self::new(0);
11874
11875 #[doc = "High output"]
11876 pub const _1: Self = Self::new(1);
11877 }
11878 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11879 pub struct Pidr_SPEC;
11880 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
11881 impl Pidr {
11882 #[doc = "Low level"]
11883 pub const _0: Self = Self::new(0);
11884
11885 #[doc = "High level"]
11886 pub const _1: Self = Self::new(1);
11887 }
11888 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11889 pub struct Pdr_SPEC;
11890 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
11891 impl Pdr {
11892 #[doc = "Input (functions as an input pin)"]
11893 pub const _0: Self = Self::new(0);
11894
11895 #[doc = "Output (functions as an output pin)"]
11896 pub const _1: Self = Self::new(1);
11897 }
11898 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11899 pub struct Pcr_SPEC;
11900 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
11901 impl Pcr {
11902 #[doc = "Disable input pull-up"]
11903 pub const _0: Self = Self::new(0);
11904
11905 #[doc = "Enable input pull-up"]
11906 pub const _1: Self = Self::new(1);
11907 }
11908 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11909 pub struct Ncodr_SPEC;
11910 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
11911 impl Ncodr {
11912 #[doc = "CMOS output"]
11913 pub const _0: Self = Self::new(0);
11914
11915 #[doc = "NMOS open-drain output"]
11916 pub const _1: Self = Self::new(1);
11917 }
11918 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11919 pub struct Dscr_SPEC;
11920 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
11921 impl Dscr {
11922 #[doc = "Low drive"]
11923 pub const _00: Self = Self::new(0);
11924
11925 #[doc = "Middle drive"]
11926 pub const _01: Self = Self::new(1);
11927
11928 #[doc = "High-speed high-drive"]
11929 pub const _10: Self = Self::new(2);
11930
11931 #[doc = "High drive"]
11932 pub const _11: Self = Self::new(3);
11933 }
11934 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11935 pub struct Eofr_SPEC;
11936 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
11937 impl Eofr {
11938 #[doc = "Don\'t care"]
11939 pub const _00: Self = Self::new(0);
11940
11941 #[doc = "Detect rising edge"]
11942 pub const _01: Self = Self::new(1);
11943
11944 #[doc = "Detect falling edge"]
11945 pub const _10: Self = Self::new(2);
11946
11947 #[doc = "Detect both edges"]
11948 pub const _11: Self = Self::new(3);
11949 }
11950 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11951 pub struct Isel_SPEC;
11952 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
11953 impl Isel {
11954 #[doc = "Not used as an IRQn input pin"]
11955 pub const _0: Self = Self::new(0);
11956
11957 #[doc = "Used as an IRQn input pin"]
11958 pub const _1: Self = Self::new(1);
11959 }
11960 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11961 pub struct Asel_SPEC;
11962 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
11963 impl Asel {
11964 #[doc = "Not used as an analog pin"]
11965 pub const _0: Self = Self::new(0);
11966
11967 #[doc = "Used as an analog pin"]
11968 pub const _1: Self = Self::new(1);
11969 }
11970 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
11971 pub struct Pmr_SPEC;
11972 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
11973 impl Pmr {
11974 #[doc = "Used as a general I/O pin"]
11975 pub const _0: Self = Self::new(0);
11976
11977 #[doc = "Used as an I/O port for peripheral functions"]
11978 pub const _1: Self = Self::new(1);
11979 }
11980}
11981#[doc(hidden)]
11982#[derive(Copy, Clone, Eq, PartialEq)]
11983pub struct P2PfsHa_SPEC;
11984impl crate::sealed::RegSpec for P2PfsHa_SPEC {
11985 type DataType = u16;
11986}
11987
11988#[doc = "Port 2%s Pin Function Select Register"]
11989pub type P2PfsHa = crate::RegValueT<P2PfsHa_SPEC>;
11990
11991impl P2PfsHa {
11992 #[doc = "Port Mode Control"]
11993 #[inline(always)]
11994 pub fn pmr(
11995 self,
11996 ) -> crate::common::RegisterField<
11997 0,
11998 0x1,
11999 1,
12000 0,
12001 p2pfs_ha::Pmr,
12002 p2pfs_ha::Pmr,
12003 P2PfsHa_SPEC,
12004 crate::common::RW,
12005 > {
12006 crate::common::RegisterField::<
12007 0,
12008 0x1,
12009 1,
12010 0,
12011 p2pfs_ha::Pmr,
12012 p2pfs_ha::Pmr,
12013 P2PfsHa_SPEC,
12014 crate::common::RW,
12015 >::from_register(self, 0)
12016 }
12017
12018 #[doc = "Peripheral Select"]
12019 #[inline(always)]
12020 pub fn psel(
12021 self,
12022 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P2PfsHa_SPEC, crate::common::RW> {
12023 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P2PfsHa_SPEC,crate::common::RW>::from_register(self,0)
12024 }
12025}
12026impl ::core::default::Default for P2PfsHa {
12027 #[inline(always)]
12028 fn default() -> P2PfsHa {
12029 <crate::RegValueT<P2PfsHa_SPEC> as RegisterValue<_>>::new(0)
12030 }
12031}
12032pub mod p2pfs_ha {
12033
12034 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12035 pub struct Pmr_SPEC;
12036 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
12037 impl Pmr {
12038 #[doc = "Used as a general I/O pin"]
12039 pub const _0: Self = Self::new(0);
12040
12041 #[doc = "Used as an I/O port for peripheral functions"]
12042 pub const _1: Self = Self::new(1);
12043 }
12044}
12045#[doc(hidden)]
12046#[derive(Copy, Clone, Eq, PartialEq)]
12047pub struct P2PfsBy_SPEC;
12048impl crate::sealed::RegSpec for P2PfsBy_SPEC {
12049 type DataType = u8;
12050}
12051
12052#[doc = "Port 2%s Pin Function Select Register"]
12053pub type P2PfsBy = crate::RegValueT<P2PfsBy_SPEC>;
12054
12055impl P2PfsBy {
12056 #[doc = "Peripheral Select"]
12057 #[inline(always)]
12058 pub fn psel(
12059 self,
12060 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P2PfsBy_SPEC, crate::common::RW> {
12061 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P2PfsBy_SPEC,crate::common::RW>::from_register(self,0)
12062 }
12063}
12064impl ::core::default::Default for P2PfsBy {
12065 #[inline(always)]
12066 fn default() -> P2PfsBy {
12067 <crate::RegValueT<P2PfsBy_SPEC> as RegisterValue<_>>::new(0)
12068 }
12069}
12070
12071#[doc(hidden)]
12072#[derive(Copy, Clone, Eq, PartialEq)]
12073pub struct P30Pfs_SPEC;
12074impl crate::sealed::RegSpec for P30Pfs_SPEC {
12075 type DataType = u32;
12076}
12077
12078#[doc = "Port 30%s Pin Function Select Register"]
12079pub type P30Pfs = crate::RegValueT<P30Pfs_SPEC>;
12080
12081impl P30Pfs {
12082 #[doc = "Port Output Data"]
12083 #[inline(always)]
12084 pub fn podr(
12085 self,
12086 ) -> crate::common::RegisterField<
12087 0,
12088 0x1,
12089 1,
12090 0,
12091 p30pfs::Podr,
12092 p30pfs::Podr,
12093 P30Pfs_SPEC,
12094 crate::common::RW,
12095 > {
12096 crate::common::RegisterField::<
12097 0,
12098 0x1,
12099 1,
12100 0,
12101 p30pfs::Podr,
12102 p30pfs::Podr,
12103 P30Pfs_SPEC,
12104 crate::common::RW,
12105 >::from_register(self, 0)
12106 }
12107
12108 #[doc = "Pmn State"]
12109 #[inline(always)]
12110 pub fn pidr(
12111 self,
12112 ) -> crate::common::RegisterField<
12113 1,
12114 0x1,
12115 1,
12116 0,
12117 p30pfs::Pidr,
12118 p30pfs::Pidr,
12119 P30Pfs_SPEC,
12120 crate::common::R,
12121 > {
12122 crate::common::RegisterField::<
12123 1,
12124 0x1,
12125 1,
12126 0,
12127 p30pfs::Pidr,
12128 p30pfs::Pidr,
12129 P30Pfs_SPEC,
12130 crate::common::R,
12131 >::from_register(self, 0)
12132 }
12133
12134 #[doc = "Port Direction"]
12135 #[inline(always)]
12136 pub fn pdr(
12137 self,
12138 ) -> crate::common::RegisterField<
12139 2,
12140 0x1,
12141 1,
12142 0,
12143 p30pfs::Pdr,
12144 p30pfs::Pdr,
12145 P30Pfs_SPEC,
12146 crate::common::RW,
12147 > {
12148 crate::common::RegisterField::<
12149 2,
12150 0x1,
12151 1,
12152 0,
12153 p30pfs::Pdr,
12154 p30pfs::Pdr,
12155 P30Pfs_SPEC,
12156 crate::common::RW,
12157 >::from_register(self, 0)
12158 }
12159
12160 #[doc = "Pull-up Control"]
12161 #[inline(always)]
12162 pub fn pcr(
12163 self,
12164 ) -> crate::common::RegisterField<
12165 4,
12166 0x1,
12167 1,
12168 0,
12169 p30pfs::Pcr,
12170 p30pfs::Pcr,
12171 P30Pfs_SPEC,
12172 crate::common::RW,
12173 > {
12174 crate::common::RegisterField::<
12175 4,
12176 0x1,
12177 1,
12178 0,
12179 p30pfs::Pcr,
12180 p30pfs::Pcr,
12181 P30Pfs_SPEC,
12182 crate::common::RW,
12183 >::from_register(self, 0)
12184 }
12185
12186 #[doc = "N-Channel Open-Drain Control"]
12187 #[inline(always)]
12188 pub fn ncodr(
12189 self,
12190 ) -> crate::common::RegisterField<
12191 6,
12192 0x1,
12193 1,
12194 0,
12195 p30pfs::Ncodr,
12196 p30pfs::Ncodr,
12197 P30Pfs_SPEC,
12198 crate::common::RW,
12199 > {
12200 crate::common::RegisterField::<
12201 6,
12202 0x1,
12203 1,
12204 0,
12205 p30pfs::Ncodr,
12206 p30pfs::Ncodr,
12207 P30Pfs_SPEC,
12208 crate::common::RW,
12209 >::from_register(self, 0)
12210 }
12211
12212 #[doc = "Port Drive Capability"]
12213 #[inline(always)]
12214 pub fn dscr(
12215 self,
12216 ) -> crate::common::RegisterField<
12217 10,
12218 0x3,
12219 1,
12220 0,
12221 p30pfs::Dscr,
12222 p30pfs::Dscr,
12223 P30Pfs_SPEC,
12224 crate::common::RW,
12225 > {
12226 crate::common::RegisterField::<
12227 10,
12228 0x3,
12229 1,
12230 0,
12231 p30pfs::Dscr,
12232 p30pfs::Dscr,
12233 P30Pfs_SPEC,
12234 crate::common::RW,
12235 >::from_register(self, 0)
12236 }
12237
12238 #[doc = "Event on Falling/Event on Rising"]
12239 #[inline(always)]
12240 pub fn eofr(
12241 self,
12242 ) -> crate::common::RegisterField<
12243 12,
12244 0x3,
12245 1,
12246 0,
12247 p30pfs::Eofr,
12248 p30pfs::Eofr,
12249 P30Pfs_SPEC,
12250 crate::common::RW,
12251 > {
12252 crate::common::RegisterField::<
12253 12,
12254 0x3,
12255 1,
12256 0,
12257 p30pfs::Eofr,
12258 p30pfs::Eofr,
12259 P30Pfs_SPEC,
12260 crate::common::RW,
12261 >::from_register(self, 0)
12262 }
12263
12264 #[doc = "IRQ Input Enable"]
12265 #[inline(always)]
12266 pub fn isel(
12267 self,
12268 ) -> crate::common::RegisterField<
12269 14,
12270 0x1,
12271 1,
12272 0,
12273 p30pfs::Isel,
12274 p30pfs::Isel,
12275 P30Pfs_SPEC,
12276 crate::common::RW,
12277 > {
12278 crate::common::RegisterField::<
12279 14,
12280 0x1,
12281 1,
12282 0,
12283 p30pfs::Isel,
12284 p30pfs::Isel,
12285 P30Pfs_SPEC,
12286 crate::common::RW,
12287 >::from_register(self, 0)
12288 }
12289
12290 #[doc = "Analog Input Enable"]
12291 #[inline(always)]
12292 pub fn asel(
12293 self,
12294 ) -> crate::common::RegisterField<
12295 15,
12296 0x1,
12297 1,
12298 0,
12299 p30pfs::Asel,
12300 p30pfs::Asel,
12301 P30Pfs_SPEC,
12302 crate::common::RW,
12303 > {
12304 crate::common::RegisterField::<
12305 15,
12306 0x1,
12307 1,
12308 0,
12309 p30pfs::Asel,
12310 p30pfs::Asel,
12311 P30Pfs_SPEC,
12312 crate::common::RW,
12313 >::from_register(self, 0)
12314 }
12315
12316 #[doc = "Port Mode Control"]
12317 #[inline(always)]
12318 pub fn pmr(
12319 self,
12320 ) -> crate::common::RegisterField<
12321 16,
12322 0x1,
12323 1,
12324 0,
12325 p30pfs::Pmr,
12326 p30pfs::Pmr,
12327 P30Pfs_SPEC,
12328 crate::common::RW,
12329 > {
12330 crate::common::RegisterField::<
12331 16,
12332 0x1,
12333 1,
12334 0,
12335 p30pfs::Pmr,
12336 p30pfs::Pmr,
12337 P30Pfs_SPEC,
12338 crate::common::RW,
12339 >::from_register(self, 0)
12340 }
12341
12342 #[doc = "Peripheral Select"]
12343 #[inline(always)]
12344 pub fn psel(
12345 self,
12346 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P30Pfs_SPEC, crate::common::RW> {
12347 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P30Pfs_SPEC,crate::common::RW>::from_register(self,0)
12348 }
12349}
12350impl ::core::default::Default for P30Pfs {
12351 #[inline(always)]
12352 fn default() -> P30Pfs {
12353 <crate::RegValueT<P30Pfs_SPEC> as RegisterValue<_>>::new(0)
12354 }
12355}
12356pub mod p30pfs {
12357
12358 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12359 pub struct Podr_SPEC;
12360 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
12361 impl Podr {
12362 #[doc = "Low output"]
12363 pub const _0: Self = Self::new(0);
12364
12365 #[doc = "High output"]
12366 pub const _1: Self = Self::new(1);
12367 }
12368 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12369 pub struct Pidr_SPEC;
12370 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
12371 impl Pidr {
12372 #[doc = "Low level"]
12373 pub const _0: Self = Self::new(0);
12374
12375 #[doc = "High level"]
12376 pub const _1: Self = Self::new(1);
12377 }
12378 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12379 pub struct Pdr_SPEC;
12380 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
12381 impl Pdr {
12382 #[doc = "Input (functions as an input pin)"]
12383 pub const _0: Self = Self::new(0);
12384
12385 #[doc = "Output (functions as an output pin)"]
12386 pub const _1: Self = Self::new(1);
12387 }
12388 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12389 pub struct Pcr_SPEC;
12390 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
12391 impl Pcr {
12392 #[doc = "Disable input pull-up"]
12393 pub const _0: Self = Self::new(0);
12394
12395 #[doc = "Enable input pull-up"]
12396 pub const _1: Self = Self::new(1);
12397 }
12398 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12399 pub struct Ncodr_SPEC;
12400 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
12401 impl Ncodr {
12402 #[doc = "CMOS output"]
12403 pub const _0: Self = Self::new(0);
12404
12405 #[doc = "NMOS open-drain output"]
12406 pub const _1: Self = Self::new(1);
12407 }
12408 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12409 pub struct Dscr_SPEC;
12410 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
12411 impl Dscr {
12412 #[doc = "Low drive"]
12413 pub const _00: Self = Self::new(0);
12414
12415 #[doc = "Middle drive"]
12416 pub const _01: Self = Self::new(1);
12417
12418 #[doc = "High-speed high-drive"]
12419 pub const _10: Self = Self::new(2);
12420
12421 #[doc = "High drive"]
12422 pub const _11: Self = Self::new(3);
12423 }
12424 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12425 pub struct Eofr_SPEC;
12426 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
12427 impl Eofr {
12428 #[doc = "Don\'t care"]
12429 pub const _00: Self = Self::new(0);
12430
12431 #[doc = "Detect rising edge"]
12432 pub const _01: Self = Self::new(1);
12433
12434 #[doc = "Detect falling edge"]
12435 pub const _10: Self = Self::new(2);
12436
12437 #[doc = "Detect both edges"]
12438 pub const _11: Self = Self::new(3);
12439 }
12440 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12441 pub struct Isel_SPEC;
12442 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
12443 impl Isel {
12444 #[doc = "Not used as an IRQn input pin"]
12445 pub const _0: Self = Self::new(0);
12446
12447 #[doc = "Used as an IRQn input pin"]
12448 pub const _1: Self = Self::new(1);
12449 }
12450 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12451 pub struct Asel_SPEC;
12452 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
12453 impl Asel {
12454 #[doc = "Not used as an analog pin"]
12455 pub const _0: Self = Self::new(0);
12456
12457 #[doc = "Used as an analog pin"]
12458 pub const _1: Self = Self::new(1);
12459 }
12460 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12461 pub struct Pmr_SPEC;
12462 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
12463 impl Pmr {
12464 #[doc = "Used as a general I/O pin"]
12465 pub const _0: Self = Self::new(0);
12466
12467 #[doc = "Used as an I/O port for peripheral functions"]
12468 pub const _1: Self = Self::new(1);
12469 }
12470}
12471#[doc(hidden)]
12472#[derive(Copy, Clone, Eq, PartialEq)]
12473pub struct P30PfsHa_SPEC;
12474impl crate::sealed::RegSpec for P30PfsHa_SPEC {
12475 type DataType = u16;
12476}
12477
12478#[doc = "Port 30%s Pin Function Select Register"]
12479pub type P30PfsHa = crate::RegValueT<P30PfsHa_SPEC>;
12480
12481impl P30PfsHa {
12482 #[doc = "Port Mode Control"]
12483 #[inline(always)]
12484 pub fn pmr(
12485 self,
12486 ) -> crate::common::RegisterField<
12487 0,
12488 0x1,
12489 1,
12490 0,
12491 p30pfs_ha::Pmr,
12492 p30pfs_ha::Pmr,
12493 P30PfsHa_SPEC,
12494 crate::common::RW,
12495 > {
12496 crate::common::RegisterField::<
12497 0,
12498 0x1,
12499 1,
12500 0,
12501 p30pfs_ha::Pmr,
12502 p30pfs_ha::Pmr,
12503 P30PfsHa_SPEC,
12504 crate::common::RW,
12505 >::from_register(self, 0)
12506 }
12507
12508 #[doc = "Peripheral Select"]
12509 #[inline(always)]
12510 pub fn psel(
12511 self,
12512 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P30PfsHa_SPEC, crate::common::RW> {
12513 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P30PfsHa_SPEC,crate::common::RW>::from_register(self,0)
12514 }
12515}
12516impl ::core::default::Default for P30PfsHa {
12517 #[inline(always)]
12518 fn default() -> P30PfsHa {
12519 <crate::RegValueT<P30PfsHa_SPEC> as RegisterValue<_>>::new(0)
12520 }
12521}
12522pub mod p30pfs_ha {
12523
12524 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12525 pub struct Pmr_SPEC;
12526 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
12527 impl Pmr {
12528 #[doc = "Used as a general I/O pin"]
12529 pub const _0: Self = Self::new(0);
12530
12531 #[doc = "Used as an I/O port for peripheral functions"]
12532 pub const _1: Self = Self::new(1);
12533 }
12534}
12535#[doc(hidden)]
12536#[derive(Copy, Clone, Eq, PartialEq)]
12537pub struct P30PfsBy_SPEC;
12538impl crate::sealed::RegSpec for P30PfsBy_SPEC {
12539 type DataType = u8;
12540}
12541
12542#[doc = "Port 30%s Pin Function Select Register"]
12543pub type P30PfsBy = crate::RegValueT<P30PfsBy_SPEC>;
12544
12545impl P30PfsBy {
12546 #[doc = "Peripheral Select"]
12547 #[inline(always)]
12548 pub fn psel(
12549 self,
12550 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P30PfsBy_SPEC, crate::common::RW> {
12551 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P30PfsBy_SPEC,crate::common::RW>::from_register(self,0)
12552 }
12553}
12554impl ::core::default::Default for P30PfsBy {
12555 #[inline(always)]
12556 fn default() -> P30PfsBy {
12557 <crate::RegValueT<P30PfsBy_SPEC> as RegisterValue<_>>::new(0)
12558 }
12559}
12560
12561#[doc(hidden)]
12562#[derive(Copy, Clone, Eq, PartialEq)]
12563pub struct P3Pfs_SPEC;
12564impl crate::sealed::RegSpec for P3Pfs_SPEC {
12565 type DataType = u32;
12566}
12567
12568#[doc = "Port 3%s Pin Function Select Register"]
12569pub type P3Pfs = crate::RegValueT<P3Pfs_SPEC>;
12570
12571impl P3Pfs {
12572 #[doc = "Port Output Data"]
12573 #[inline(always)]
12574 pub fn podr(
12575 self,
12576 ) -> crate::common::RegisterField<
12577 0,
12578 0x1,
12579 1,
12580 0,
12581 p3pfs::Podr,
12582 p3pfs::Podr,
12583 P3Pfs_SPEC,
12584 crate::common::RW,
12585 > {
12586 crate::common::RegisterField::<
12587 0,
12588 0x1,
12589 1,
12590 0,
12591 p3pfs::Podr,
12592 p3pfs::Podr,
12593 P3Pfs_SPEC,
12594 crate::common::RW,
12595 >::from_register(self, 0)
12596 }
12597
12598 #[doc = "Pmn State"]
12599 #[inline(always)]
12600 pub fn pidr(
12601 self,
12602 ) -> crate::common::RegisterField<
12603 1,
12604 0x1,
12605 1,
12606 0,
12607 p3pfs::Pidr,
12608 p3pfs::Pidr,
12609 P3Pfs_SPEC,
12610 crate::common::R,
12611 > {
12612 crate::common::RegisterField::<
12613 1,
12614 0x1,
12615 1,
12616 0,
12617 p3pfs::Pidr,
12618 p3pfs::Pidr,
12619 P3Pfs_SPEC,
12620 crate::common::R,
12621 >::from_register(self, 0)
12622 }
12623
12624 #[doc = "Port Direction"]
12625 #[inline(always)]
12626 pub fn pdr(
12627 self,
12628 ) -> crate::common::RegisterField<
12629 2,
12630 0x1,
12631 1,
12632 0,
12633 p3pfs::Pdr,
12634 p3pfs::Pdr,
12635 P3Pfs_SPEC,
12636 crate::common::RW,
12637 > {
12638 crate::common::RegisterField::<
12639 2,
12640 0x1,
12641 1,
12642 0,
12643 p3pfs::Pdr,
12644 p3pfs::Pdr,
12645 P3Pfs_SPEC,
12646 crate::common::RW,
12647 >::from_register(self, 0)
12648 }
12649
12650 #[doc = "Pull-up Control"]
12651 #[inline(always)]
12652 pub fn pcr(
12653 self,
12654 ) -> crate::common::RegisterField<
12655 4,
12656 0x1,
12657 1,
12658 0,
12659 p3pfs::Pcr,
12660 p3pfs::Pcr,
12661 P3Pfs_SPEC,
12662 crate::common::RW,
12663 > {
12664 crate::common::RegisterField::<
12665 4,
12666 0x1,
12667 1,
12668 0,
12669 p3pfs::Pcr,
12670 p3pfs::Pcr,
12671 P3Pfs_SPEC,
12672 crate::common::RW,
12673 >::from_register(self, 0)
12674 }
12675
12676 #[doc = "N-Channel Open-Drain Control"]
12677 #[inline(always)]
12678 pub fn ncodr(
12679 self,
12680 ) -> crate::common::RegisterField<
12681 6,
12682 0x1,
12683 1,
12684 0,
12685 p3pfs::Ncodr,
12686 p3pfs::Ncodr,
12687 P3Pfs_SPEC,
12688 crate::common::RW,
12689 > {
12690 crate::common::RegisterField::<
12691 6,
12692 0x1,
12693 1,
12694 0,
12695 p3pfs::Ncodr,
12696 p3pfs::Ncodr,
12697 P3Pfs_SPEC,
12698 crate::common::RW,
12699 >::from_register(self, 0)
12700 }
12701
12702 #[doc = "Port Drive Capability"]
12703 #[inline(always)]
12704 pub fn dscr(
12705 self,
12706 ) -> crate::common::RegisterField<
12707 10,
12708 0x3,
12709 1,
12710 0,
12711 p3pfs::Dscr,
12712 p3pfs::Dscr,
12713 P3Pfs_SPEC,
12714 crate::common::RW,
12715 > {
12716 crate::common::RegisterField::<
12717 10,
12718 0x3,
12719 1,
12720 0,
12721 p3pfs::Dscr,
12722 p3pfs::Dscr,
12723 P3Pfs_SPEC,
12724 crate::common::RW,
12725 >::from_register(self, 0)
12726 }
12727
12728 #[doc = "Event on Falling/Event on Rising"]
12729 #[inline(always)]
12730 pub fn eofr(
12731 self,
12732 ) -> crate::common::RegisterField<
12733 12,
12734 0x3,
12735 1,
12736 0,
12737 p3pfs::Eofr,
12738 p3pfs::Eofr,
12739 P3Pfs_SPEC,
12740 crate::common::RW,
12741 > {
12742 crate::common::RegisterField::<
12743 12,
12744 0x3,
12745 1,
12746 0,
12747 p3pfs::Eofr,
12748 p3pfs::Eofr,
12749 P3Pfs_SPEC,
12750 crate::common::RW,
12751 >::from_register(self, 0)
12752 }
12753
12754 #[doc = "IRQ Input Enable"]
12755 #[inline(always)]
12756 pub fn isel(
12757 self,
12758 ) -> crate::common::RegisterField<
12759 14,
12760 0x1,
12761 1,
12762 0,
12763 p3pfs::Isel,
12764 p3pfs::Isel,
12765 P3Pfs_SPEC,
12766 crate::common::RW,
12767 > {
12768 crate::common::RegisterField::<
12769 14,
12770 0x1,
12771 1,
12772 0,
12773 p3pfs::Isel,
12774 p3pfs::Isel,
12775 P3Pfs_SPEC,
12776 crate::common::RW,
12777 >::from_register(self, 0)
12778 }
12779
12780 #[doc = "Analog Input Enable"]
12781 #[inline(always)]
12782 pub fn asel(
12783 self,
12784 ) -> crate::common::RegisterField<
12785 15,
12786 0x1,
12787 1,
12788 0,
12789 p3pfs::Asel,
12790 p3pfs::Asel,
12791 P3Pfs_SPEC,
12792 crate::common::RW,
12793 > {
12794 crate::common::RegisterField::<
12795 15,
12796 0x1,
12797 1,
12798 0,
12799 p3pfs::Asel,
12800 p3pfs::Asel,
12801 P3Pfs_SPEC,
12802 crate::common::RW,
12803 >::from_register(self, 0)
12804 }
12805
12806 #[doc = "Port Mode Control"]
12807 #[inline(always)]
12808 pub fn pmr(
12809 self,
12810 ) -> crate::common::RegisterField<
12811 16,
12812 0x1,
12813 1,
12814 0,
12815 p3pfs::Pmr,
12816 p3pfs::Pmr,
12817 P3Pfs_SPEC,
12818 crate::common::RW,
12819 > {
12820 crate::common::RegisterField::<
12821 16,
12822 0x1,
12823 1,
12824 0,
12825 p3pfs::Pmr,
12826 p3pfs::Pmr,
12827 P3Pfs_SPEC,
12828 crate::common::RW,
12829 >::from_register(self, 0)
12830 }
12831
12832 #[doc = "Peripheral Select"]
12833 #[inline(always)]
12834 pub fn psel(
12835 self,
12836 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P3Pfs_SPEC, crate::common::RW> {
12837 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P3Pfs_SPEC,crate::common::RW>::from_register(self,0)
12838 }
12839}
12840impl ::core::default::Default for P3Pfs {
12841 #[inline(always)]
12842 fn default() -> P3Pfs {
12843 <crate::RegValueT<P3Pfs_SPEC> as RegisterValue<_>>::new(0)
12844 }
12845}
12846pub mod p3pfs {
12847
12848 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12849 pub struct Podr_SPEC;
12850 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
12851 impl Podr {
12852 #[doc = "Low output"]
12853 pub const _0: Self = Self::new(0);
12854
12855 #[doc = "High output"]
12856 pub const _1: Self = Self::new(1);
12857 }
12858 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12859 pub struct Pidr_SPEC;
12860 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
12861 impl Pidr {
12862 #[doc = "Low level"]
12863 pub const _0: Self = Self::new(0);
12864
12865 #[doc = "High level"]
12866 pub const _1: Self = Self::new(1);
12867 }
12868 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12869 pub struct Pdr_SPEC;
12870 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
12871 impl Pdr {
12872 #[doc = "Input (functions as an input pin)"]
12873 pub const _0: Self = Self::new(0);
12874
12875 #[doc = "Output (functions as an output pin)"]
12876 pub const _1: Self = Self::new(1);
12877 }
12878 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12879 pub struct Pcr_SPEC;
12880 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
12881 impl Pcr {
12882 #[doc = "Disable input pull-up"]
12883 pub const _0: Self = Self::new(0);
12884
12885 #[doc = "Enable input pull-up"]
12886 pub const _1: Self = Self::new(1);
12887 }
12888 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12889 pub struct Ncodr_SPEC;
12890 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
12891 impl Ncodr {
12892 #[doc = "CMOS output"]
12893 pub const _0: Self = Self::new(0);
12894
12895 #[doc = "NMOS open-drain output"]
12896 pub const _1: Self = Self::new(1);
12897 }
12898 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12899 pub struct Dscr_SPEC;
12900 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
12901 impl Dscr {
12902 #[doc = "Low drive"]
12903 pub const _00: Self = Self::new(0);
12904
12905 #[doc = "Middle drive"]
12906 pub const _01: Self = Self::new(1);
12907
12908 #[doc = "High-speed high-drive"]
12909 pub const _10: Self = Self::new(2);
12910
12911 #[doc = "High drive"]
12912 pub const _11: Self = Self::new(3);
12913 }
12914 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12915 pub struct Eofr_SPEC;
12916 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
12917 impl Eofr {
12918 #[doc = "Don\'t care"]
12919 pub const _00: Self = Self::new(0);
12920
12921 #[doc = "Detect rising edge"]
12922 pub const _01: Self = Self::new(1);
12923
12924 #[doc = "Detect falling edge"]
12925 pub const _10: Self = Self::new(2);
12926
12927 #[doc = "Detect both edges"]
12928 pub const _11: Self = Self::new(3);
12929 }
12930 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12931 pub struct Isel_SPEC;
12932 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
12933 impl Isel {
12934 #[doc = "Not used as an IRQn input pin"]
12935 pub const _0: Self = Self::new(0);
12936
12937 #[doc = "Used as an IRQn input pin"]
12938 pub const _1: Self = Self::new(1);
12939 }
12940 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12941 pub struct Asel_SPEC;
12942 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
12943 impl Asel {
12944 #[doc = "Not used as an analog pin"]
12945 pub const _0: Self = Self::new(0);
12946
12947 #[doc = "Used as an analog pin"]
12948 pub const _1: Self = Self::new(1);
12949 }
12950 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
12951 pub struct Pmr_SPEC;
12952 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
12953 impl Pmr {
12954 #[doc = "Used as a general I/O pin"]
12955 pub const _0: Self = Self::new(0);
12956
12957 #[doc = "Used as an I/O port for peripheral functions"]
12958 pub const _1: Self = Self::new(1);
12959 }
12960}
12961#[doc(hidden)]
12962#[derive(Copy, Clone, Eq, PartialEq)]
12963pub struct P3PfsHa_SPEC;
12964impl crate::sealed::RegSpec for P3PfsHa_SPEC {
12965 type DataType = u16;
12966}
12967
12968#[doc = "Port 3%s Pin Function Select Register"]
12969pub type P3PfsHa = crate::RegValueT<P3PfsHa_SPEC>;
12970
12971impl P3PfsHa {
12972 #[doc = "Port Mode Control"]
12973 #[inline(always)]
12974 pub fn pmr(
12975 self,
12976 ) -> crate::common::RegisterField<
12977 0,
12978 0x1,
12979 1,
12980 0,
12981 p3pfs_ha::Pmr,
12982 p3pfs_ha::Pmr,
12983 P3PfsHa_SPEC,
12984 crate::common::RW,
12985 > {
12986 crate::common::RegisterField::<
12987 0,
12988 0x1,
12989 1,
12990 0,
12991 p3pfs_ha::Pmr,
12992 p3pfs_ha::Pmr,
12993 P3PfsHa_SPEC,
12994 crate::common::RW,
12995 >::from_register(self, 0)
12996 }
12997
12998 #[doc = "Peripheral Select"]
12999 #[inline(always)]
13000 pub fn psel(
13001 self,
13002 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P3PfsHa_SPEC, crate::common::RW> {
13003 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P3PfsHa_SPEC,crate::common::RW>::from_register(self,0)
13004 }
13005}
13006impl ::core::default::Default for P3PfsHa {
13007 #[inline(always)]
13008 fn default() -> P3PfsHa {
13009 <crate::RegValueT<P3PfsHa_SPEC> as RegisterValue<_>>::new(0)
13010 }
13011}
13012pub mod p3pfs_ha {
13013
13014 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13015 pub struct Pmr_SPEC;
13016 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
13017 impl Pmr {
13018 #[doc = "Used as a general I/O pin"]
13019 pub const _0: Self = Self::new(0);
13020
13021 #[doc = "Used as an I/O port for peripheral functions"]
13022 pub const _1: Self = Self::new(1);
13023 }
13024}
13025#[doc(hidden)]
13026#[derive(Copy, Clone, Eq, PartialEq)]
13027pub struct P3PfsBy_SPEC;
13028impl crate::sealed::RegSpec for P3PfsBy_SPEC {
13029 type DataType = u8;
13030}
13031
13032#[doc = "Port 3%s Pin Function Select Register"]
13033pub type P3PfsBy = crate::RegValueT<P3PfsBy_SPEC>;
13034
13035impl P3PfsBy {
13036 #[doc = "Peripheral Select"]
13037 #[inline(always)]
13038 pub fn psel(
13039 self,
13040 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P3PfsBy_SPEC, crate::common::RW> {
13041 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P3PfsBy_SPEC,crate::common::RW>::from_register(self,0)
13042 }
13043}
13044impl ::core::default::Default for P3PfsBy {
13045 #[inline(always)]
13046 fn default() -> P3PfsBy {
13047 <crate::RegValueT<P3PfsBy_SPEC> as RegisterValue<_>>::new(0)
13048 }
13049}
13050
13051#[doc(hidden)]
13052#[derive(Copy, Clone, Eq, PartialEq)]
13053pub struct P40Pfs_SPEC;
13054impl crate::sealed::RegSpec for P40Pfs_SPEC {
13055 type DataType = u32;
13056}
13057
13058#[doc = "Port 40%s Pin Function Select Register"]
13059pub type P40Pfs = crate::RegValueT<P40Pfs_SPEC>;
13060
13061impl P40Pfs {
13062 #[doc = "Port Output Data"]
13063 #[inline(always)]
13064 pub fn podr(
13065 self,
13066 ) -> crate::common::RegisterField<
13067 0,
13068 0x1,
13069 1,
13070 0,
13071 p40pfs::Podr,
13072 p40pfs::Podr,
13073 P40Pfs_SPEC,
13074 crate::common::RW,
13075 > {
13076 crate::common::RegisterField::<
13077 0,
13078 0x1,
13079 1,
13080 0,
13081 p40pfs::Podr,
13082 p40pfs::Podr,
13083 P40Pfs_SPEC,
13084 crate::common::RW,
13085 >::from_register(self, 0)
13086 }
13087
13088 #[doc = "Pmn State"]
13089 #[inline(always)]
13090 pub fn pidr(
13091 self,
13092 ) -> crate::common::RegisterField<
13093 1,
13094 0x1,
13095 1,
13096 0,
13097 p40pfs::Pidr,
13098 p40pfs::Pidr,
13099 P40Pfs_SPEC,
13100 crate::common::R,
13101 > {
13102 crate::common::RegisterField::<
13103 1,
13104 0x1,
13105 1,
13106 0,
13107 p40pfs::Pidr,
13108 p40pfs::Pidr,
13109 P40Pfs_SPEC,
13110 crate::common::R,
13111 >::from_register(self, 0)
13112 }
13113
13114 #[doc = "Port Direction"]
13115 #[inline(always)]
13116 pub fn pdr(
13117 self,
13118 ) -> crate::common::RegisterField<
13119 2,
13120 0x1,
13121 1,
13122 0,
13123 p40pfs::Pdr,
13124 p40pfs::Pdr,
13125 P40Pfs_SPEC,
13126 crate::common::RW,
13127 > {
13128 crate::common::RegisterField::<
13129 2,
13130 0x1,
13131 1,
13132 0,
13133 p40pfs::Pdr,
13134 p40pfs::Pdr,
13135 P40Pfs_SPEC,
13136 crate::common::RW,
13137 >::from_register(self, 0)
13138 }
13139
13140 #[doc = "Pull-up Control"]
13141 #[inline(always)]
13142 pub fn pcr(
13143 self,
13144 ) -> crate::common::RegisterField<
13145 4,
13146 0x1,
13147 1,
13148 0,
13149 p40pfs::Pcr,
13150 p40pfs::Pcr,
13151 P40Pfs_SPEC,
13152 crate::common::RW,
13153 > {
13154 crate::common::RegisterField::<
13155 4,
13156 0x1,
13157 1,
13158 0,
13159 p40pfs::Pcr,
13160 p40pfs::Pcr,
13161 P40Pfs_SPEC,
13162 crate::common::RW,
13163 >::from_register(self, 0)
13164 }
13165
13166 #[doc = "N-Channel Open-Drain Control"]
13167 #[inline(always)]
13168 pub fn ncodr(
13169 self,
13170 ) -> crate::common::RegisterField<
13171 6,
13172 0x1,
13173 1,
13174 0,
13175 p40pfs::Ncodr,
13176 p40pfs::Ncodr,
13177 P40Pfs_SPEC,
13178 crate::common::RW,
13179 > {
13180 crate::common::RegisterField::<
13181 6,
13182 0x1,
13183 1,
13184 0,
13185 p40pfs::Ncodr,
13186 p40pfs::Ncodr,
13187 P40Pfs_SPEC,
13188 crate::common::RW,
13189 >::from_register(self, 0)
13190 }
13191
13192 #[doc = "Port Drive Capability"]
13193 #[inline(always)]
13194 pub fn dscr(
13195 self,
13196 ) -> crate::common::RegisterField<
13197 10,
13198 0x3,
13199 1,
13200 0,
13201 p40pfs::Dscr,
13202 p40pfs::Dscr,
13203 P40Pfs_SPEC,
13204 crate::common::RW,
13205 > {
13206 crate::common::RegisterField::<
13207 10,
13208 0x3,
13209 1,
13210 0,
13211 p40pfs::Dscr,
13212 p40pfs::Dscr,
13213 P40Pfs_SPEC,
13214 crate::common::RW,
13215 >::from_register(self, 0)
13216 }
13217
13218 #[doc = "Event on Falling/Event on Rising"]
13219 #[inline(always)]
13220 pub fn eofr(
13221 self,
13222 ) -> crate::common::RegisterField<
13223 12,
13224 0x3,
13225 1,
13226 0,
13227 p40pfs::Eofr,
13228 p40pfs::Eofr,
13229 P40Pfs_SPEC,
13230 crate::common::RW,
13231 > {
13232 crate::common::RegisterField::<
13233 12,
13234 0x3,
13235 1,
13236 0,
13237 p40pfs::Eofr,
13238 p40pfs::Eofr,
13239 P40Pfs_SPEC,
13240 crate::common::RW,
13241 >::from_register(self, 0)
13242 }
13243
13244 #[doc = "IRQ Input Enable"]
13245 #[inline(always)]
13246 pub fn isel(
13247 self,
13248 ) -> crate::common::RegisterField<
13249 14,
13250 0x1,
13251 1,
13252 0,
13253 p40pfs::Isel,
13254 p40pfs::Isel,
13255 P40Pfs_SPEC,
13256 crate::common::RW,
13257 > {
13258 crate::common::RegisterField::<
13259 14,
13260 0x1,
13261 1,
13262 0,
13263 p40pfs::Isel,
13264 p40pfs::Isel,
13265 P40Pfs_SPEC,
13266 crate::common::RW,
13267 >::from_register(self, 0)
13268 }
13269
13270 #[doc = "Analog Input Enable"]
13271 #[inline(always)]
13272 pub fn asel(
13273 self,
13274 ) -> crate::common::RegisterField<
13275 15,
13276 0x1,
13277 1,
13278 0,
13279 p40pfs::Asel,
13280 p40pfs::Asel,
13281 P40Pfs_SPEC,
13282 crate::common::RW,
13283 > {
13284 crate::common::RegisterField::<
13285 15,
13286 0x1,
13287 1,
13288 0,
13289 p40pfs::Asel,
13290 p40pfs::Asel,
13291 P40Pfs_SPEC,
13292 crate::common::RW,
13293 >::from_register(self, 0)
13294 }
13295
13296 #[doc = "Port Mode Control"]
13297 #[inline(always)]
13298 pub fn pmr(
13299 self,
13300 ) -> crate::common::RegisterField<
13301 16,
13302 0x1,
13303 1,
13304 0,
13305 p40pfs::Pmr,
13306 p40pfs::Pmr,
13307 P40Pfs_SPEC,
13308 crate::common::RW,
13309 > {
13310 crate::common::RegisterField::<
13311 16,
13312 0x1,
13313 1,
13314 0,
13315 p40pfs::Pmr,
13316 p40pfs::Pmr,
13317 P40Pfs_SPEC,
13318 crate::common::RW,
13319 >::from_register(self, 0)
13320 }
13321
13322 #[doc = "Peripheral Select"]
13323 #[inline(always)]
13324 pub fn psel(
13325 self,
13326 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P40Pfs_SPEC, crate::common::RW> {
13327 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P40Pfs_SPEC,crate::common::RW>::from_register(self,0)
13328 }
13329}
13330impl ::core::default::Default for P40Pfs {
13331 #[inline(always)]
13332 fn default() -> P40Pfs {
13333 <crate::RegValueT<P40Pfs_SPEC> as RegisterValue<_>>::new(0)
13334 }
13335}
13336pub mod p40pfs {
13337
13338 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13339 pub struct Podr_SPEC;
13340 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
13341 impl Podr {
13342 #[doc = "Low output"]
13343 pub const _0: Self = Self::new(0);
13344
13345 #[doc = "High output"]
13346 pub const _1: Self = Self::new(1);
13347 }
13348 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13349 pub struct Pidr_SPEC;
13350 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
13351 impl Pidr {
13352 #[doc = "Low level"]
13353 pub const _0: Self = Self::new(0);
13354
13355 #[doc = "High level"]
13356 pub const _1: Self = Self::new(1);
13357 }
13358 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13359 pub struct Pdr_SPEC;
13360 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
13361 impl Pdr {
13362 #[doc = "Input (functions as an input pin)"]
13363 pub const _0: Self = Self::new(0);
13364
13365 #[doc = "Output (functions as an output pin)"]
13366 pub const _1: Self = Self::new(1);
13367 }
13368 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13369 pub struct Pcr_SPEC;
13370 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
13371 impl Pcr {
13372 #[doc = "Disable input pull-up"]
13373 pub const _0: Self = Self::new(0);
13374
13375 #[doc = "Enable input pull-up"]
13376 pub const _1: Self = Self::new(1);
13377 }
13378 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13379 pub struct Ncodr_SPEC;
13380 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
13381 impl Ncodr {
13382 #[doc = "CMOS output"]
13383 pub const _0: Self = Self::new(0);
13384
13385 #[doc = "NMOS open-drain output"]
13386 pub const _1: Self = Self::new(1);
13387 }
13388 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13389 pub struct Dscr_SPEC;
13390 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
13391 impl Dscr {
13392 #[doc = "Low drive"]
13393 pub const _00: Self = Self::new(0);
13394
13395 #[doc = "Middle drive"]
13396 pub const _01: Self = Self::new(1);
13397
13398 #[doc = "High-speed high-drive"]
13399 pub const _10: Self = Self::new(2);
13400
13401 #[doc = "High drive"]
13402 pub const _11: Self = Self::new(3);
13403 }
13404 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13405 pub struct Eofr_SPEC;
13406 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
13407 impl Eofr {
13408 #[doc = "Don\'t care"]
13409 pub const _00: Self = Self::new(0);
13410
13411 #[doc = "Detect rising edge"]
13412 pub const _01: Self = Self::new(1);
13413
13414 #[doc = "Detect falling edge"]
13415 pub const _10: Self = Self::new(2);
13416
13417 #[doc = "Detect both edges"]
13418 pub const _11: Self = Self::new(3);
13419 }
13420 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13421 pub struct Isel_SPEC;
13422 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
13423 impl Isel {
13424 #[doc = "Not used as an IRQn input pin"]
13425 pub const _0: Self = Self::new(0);
13426
13427 #[doc = "Used as an IRQn input pin"]
13428 pub const _1: Self = Self::new(1);
13429 }
13430 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13431 pub struct Asel_SPEC;
13432 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
13433 impl Asel {
13434 #[doc = "Not used as an analog pin"]
13435 pub const _0: Self = Self::new(0);
13436
13437 #[doc = "Used as an analog pin"]
13438 pub const _1: Self = Self::new(1);
13439 }
13440 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13441 pub struct Pmr_SPEC;
13442 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
13443 impl Pmr {
13444 #[doc = "Used as a general I/O pin"]
13445 pub const _0: Self = Self::new(0);
13446
13447 #[doc = "Used as an I/O port for peripheral functions"]
13448 pub const _1: Self = Self::new(1);
13449 }
13450}
13451#[doc(hidden)]
13452#[derive(Copy, Clone, Eq, PartialEq)]
13453pub struct P40PfsHa_SPEC;
13454impl crate::sealed::RegSpec for P40PfsHa_SPEC {
13455 type DataType = u16;
13456}
13457
13458#[doc = "Port 40%s Pin Function Select Register"]
13459pub type P40PfsHa = crate::RegValueT<P40PfsHa_SPEC>;
13460
13461impl P40PfsHa {
13462 #[doc = "Port Mode Control"]
13463 #[inline(always)]
13464 pub fn pmr(
13465 self,
13466 ) -> crate::common::RegisterField<
13467 0,
13468 0x1,
13469 1,
13470 0,
13471 p40pfs_ha::Pmr,
13472 p40pfs_ha::Pmr,
13473 P40PfsHa_SPEC,
13474 crate::common::RW,
13475 > {
13476 crate::common::RegisterField::<
13477 0,
13478 0x1,
13479 1,
13480 0,
13481 p40pfs_ha::Pmr,
13482 p40pfs_ha::Pmr,
13483 P40PfsHa_SPEC,
13484 crate::common::RW,
13485 >::from_register(self, 0)
13486 }
13487
13488 #[doc = "Peripheral Select"]
13489 #[inline(always)]
13490 pub fn psel(
13491 self,
13492 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P40PfsHa_SPEC, crate::common::RW> {
13493 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P40PfsHa_SPEC,crate::common::RW>::from_register(self,0)
13494 }
13495}
13496impl ::core::default::Default for P40PfsHa {
13497 #[inline(always)]
13498 fn default() -> P40PfsHa {
13499 <crate::RegValueT<P40PfsHa_SPEC> as RegisterValue<_>>::new(0)
13500 }
13501}
13502pub mod p40pfs_ha {
13503
13504 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13505 pub struct Pmr_SPEC;
13506 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
13507 impl Pmr {
13508 #[doc = "Used as a general I/O pin"]
13509 pub const _0: Self = Self::new(0);
13510
13511 #[doc = "Used as an I/O port for peripheral functions"]
13512 pub const _1: Self = Self::new(1);
13513 }
13514}
13515#[doc(hidden)]
13516#[derive(Copy, Clone, Eq, PartialEq)]
13517pub struct P40PfsBy_SPEC;
13518impl crate::sealed::RegSpec for P40PfsBy_SPEC {
13519 type DataType = u8;
13520}
13521
13522#[doc = "Port 40%s Pin Function Select Register"]
13523pub type P40PfsBy = crate::RegValueT<P40PfsBy_SPEC>;
13524
13525impl P40PfsBy {
13526 #[doc = "Peripheral Select"]
13527 #[inline(always)]
13528 pub fn psel(
13529 self,
13530 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P40PfsBy_SPEC, crate::common::RW> {
13531 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P40PfsBy_SPEC,crate::common::RW>::from_register(self,0)
13532 }
13533}
13534impl ::core::default::Default for P40PfsBy {
13535 #[inline(always)]
13536 fn default() -> P40PfsBy {
13537 <crate::RegValueT<P40PfsBy_SPEC> as RegisterValue<_>>::new(0)
13538 }
13539}
13540
13541#[doc(hidden)]
13542#[derive(Copy, Clone, Eq, PartialEq)]
13543pub struct P4Pfs_SPEC;
13544impl crate::sealed::RegSpec for P4Pfs_SPEC {
13545 type DataType = u32;
13546}
13547
13548#[doc = "Port 4%s Pin Function Select Register"]
13549pub type P4Pfs = crate::RegValueT<P4Pfs_SPEC>;
13550
13551impl P4Pfs {
13552 #[doc = "Port Output Data"]
13553 #[inline(always)]
13554 pub fn podr(
13555 self,
13556 ) -> crate::common::RegisterField<
13557 0,
13558 0x1,
13559 1,
13560 0,
13561 p4pfs::Podr,
13562 p4pfs::Podr,
13563 P4Pfs_SPEC,
13564 crate::common::RW,
13565 > {
13566 crate::common::RegisterField::<
13567 0,
13568 0x1,
13569 1,
13570 0,
13571 p4pfs::Podr,
13572 p4pfs::Podr,
13573 P4Pfs_SPEC,
13574 crate::common::RW,
13575 >::from_register(self, 0)
13576 }
13577
13578 #[doc = "Pmn State"]
13579 #[inline(always)]
13580 pub fn pidr(
13581 self,
13582 ) -> crate::common::RegisterField<
13583 1,
13584 0x1,
13585 1,
13586 0,
13587 p4pfs::Pidr,
13588 p4pfs::Pidr,
13589 P4Pfs_SPEC,
13590 crate::common::R,
13591 > {
13592 crate::common::RegisterField::<
13593 1,
13594 0x1,
13595 1,
13596 0,
13597 p4pfs::Pidr,
13598 p4pfs::Pidr,
13599 P4Pfs_SPEC,
13600 crate::common::R,
13601 >::from_register(self, 0)
13602 }
13603
13604 #[doc = "Port Direction"]
13605 #[inline(always)]
13606 pub fn pdr(
13607 self,
13608 ) -> crate::common::RegisterField<
13609 2,
13610 0x1,
13611 1,
13612 0,
13613 p4pfs::Pdr,
13614 p4pfs::Pdr,
13615 P4Pfs_SPEC,
13616 crate::common::RW,
13617 > {
13618 crate::common::RegisterField::<
13619 2,
13620 0x1,
13621 1,
13622 0,
13623 p4pfs::Pdr,
13624 p4pfs::Pdr,
13625 P4Pfs_SPEC,
13626 crate::common::RW,
13627 >::from_register(self, 0)
13628 }
13629
13630 #[doc = "Pull-up Control"]
13631 #[inline(always)]
13632 pub fn pcr(
13633 self,
13634 ) -> crate::common::RegisterField<
13635 4,
13636 0x1,
13637 1,
13638 0,
13639 p4pfs::Pcr,
13640 p4pfs::Pcr,
13641 P4Pfs_SPEC,
13642 crate::common::RW,
13643 > {
13644 crate::common::RegisterField::<
13645 4,
13646 0x1,
13647 1,
13648 0,
13649 p4pfs::Pcr,
13650 p4pfs::Pcr,
13651 P4Pfs_SPEC,
13652 crate::common::RW,
13653 >::from_register(self, 0)
13654 }
13655
13656 #[doc = "N-Channel Open-Drain Control"]
13657 #[inline(always)]
13658 pub fn ncodr(
13659 self,
13660 ) -> crate::common::RegisterField<
13661 6,
13662 0x1,
13663 1,
13664 0,
13665 p4pfs::Ncodr,
13666 p4pfs::Ncodr,
13667 P4Pfs_SPEC,
13668 crate::common::RW,
13669 > {
13670 crate::common::RegisterField::<
13671 6,
13672 0x1,
13673 1,
13674 0,
13675 p4pfs::Ncodr,
13676 p4pfs::Ncodr,
13677 P4Pfs_SPEC,
13678 crate::common::RW,
13679 >::from_register(self, 0)
13680 }
13681
13682 #[doc = "Port Drive Capability"]
13683 #[inline(always)]
13684 pub fn dscr(
13685 self,
13686 ) -> crate::common::RegisterField<
13687 10,
13688 0x3,
13689 1,
13690 0,
13691 p4pfs::Dscr,
13692 p4pfs::Dscr,
13693 P4Pfs_SPEC,
13694 crate::common::RW,
13695 > {
13696 crate::common::RegisterField::<
13697 10,
13698 0x3,
13699 1,
13700 0,
13701 p4pfs::Dscr,
13702 p4pfs::Dscr,
13703 P4Pfs_SPEC,
13704 crate::common::RW,
13705 >::from_register(self, 0)
13706 }
13707
13708 #[doc = "Event on Falling/Event on Rising"]
13709 #[inline(always)]
13710 pub fn eofr(
13711 self,
13712 ) -> crate::common::RegisterField<
13713 12,
13714 0x3,
13715 1,
13716 0,
13717 p4pfs::Eofr,
13718 p4pfs::Eofr,
13719 P4Pfs_SPEC,
13720 crate::common::RW,
13721 > {
13722 crate::common::RegisterField::<
13723 12,
13724 0x3,
13725 1,
13726 0,
13727 p4pfs::Eofr,
13728 p4pfs::Eofr,
13729 P4Pfs_SPEC,
13730 crate::common::RW,
13731 >::from_register(self, 0)
13732 }
13733
13734 #[doc = "IRQ Input Enable"]
13735 #[inline(always)]
13736 pub fn isel(
13737 self,
13738 ) -> crate::common::RegisterField<
13739 14,
13740 0x1,
13741 1,
13742 0,
13743 p4pfs::Isel,
13744 p4pfs::Isel,
13745 P4Pfs_SPEC,
13746 crate::common::RW,
13747 > {
13748 crate::common::RegisterField::<
13749 14,
13750 0x1,
13751 1,
13752 0,
13753 p4pfs::Isel,
13754 p4pfs::Isel,
13755 P4Pfs_SPEC,
13756 crate::common::RW,
13757 >::from_register(self, 0)
13758 }
13759
13760 #[doc = "Analog Input Enable"]
13761 #[inline(always)]
13762 pub fn asel(
13763 self,
13764 ) -> crate::common::RegisterField<
13765 15,
13766 0x1,
13767 1,
13768 0,
13769 p4pfs::Asel,
13770 p4pfs::Asel,
13771 P4Pfs_SPEC,
13772 crate::common::RW,
13773 > {
13774 crate::common::RegisterField::<
13775 15,
13776 0x1,
13777 1,
13778 0,
13779 p4pfs::Asel,
13780 p4pfs::Asel,
13781 P4Pfs_SPEC,
13782 crate::common::RW,
13783 >::from_register(self, 0)
13784 }
13785
13786 #[doc = "Port Mode Control"]
13787 #[inline(always)]
13788 pub fn pmr(
13789 self,
13790 ) -> crate::common::RegisterField<
13791 16,
13792 0x1,
13793 1,
13794 0,
13795 p4pfs::Pmr,
13796 p4pfs::Pmr,
13797 P4Pfs_SPEC,
13798 crate::common::RW,
13799 > {
13800 crate::common::RegisterField::<
13801 16,
13802 0x1,
13803 1,
13804 0,
13805 p4pfs::Pmr,
13806 p4pfs::Pmr,
13807 P4Pfs_SPEC,
13808 crate::common::RW,
13809 >::from_register(self, 0)
13810 }
13811
13812 #[doc = "Peripheral Select"]
13813 #[inline(always)]
13814 pub fn psel(
13815 self,
13816 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P4Pfs_SPEC, crate::common::RW> {
13817 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P4Pfs_SPEC,crate::common::RW>::from_register(self,0)
13818 }
13819}
13820impl ::core::default::Default for P4Pfs {
13821 #[inline(always)]
13822 fn default() -> P4Pfs {
13823 <crate::RegValueT<P4Pfs_SPEC> as RegisterValue<_>>::new(0)
13824 }
13825}
13826pub mod p4pfs {
13827
13828 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13829 pub struct Podr_SPEC;
13830 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
13831 impl Podr {
13832 #[doc = "Low output"]
13833 pub const _0: Self = Self::new(0);
13834
13835 #[doc = "High output"]
13836 pub const _1: Self = Self::new(1);
13837 }
13838 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13839 pub struct Pidr_SPEC;
13840 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
13841 impl Pidr {
13842 #[doc = "Low level"]
13843 pub const _0: Self = Self::new(0);
13844
13845 #[doc = "High level"]
13846 pub const _1: Self = Self::new(1);
13847 }
13848 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13849 pub struct Pdr_SPEC;
13850 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
13851 impl Pdr {
13852 #[doc = "Input (functions as an input pin)"]
13853 pub const _0: Self = Self::new(0);
13854
13855 #[doc = "Output (functions as an output pin)"]
13856 pub const _1: Self = Self::new(1);
13857 }
13858 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13859 pub struct Pcr_SPEC;
13860 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
13861 impl Pcr {
13862 #[doc = "Disable input pull-up"]
13863 pub const _0: Self = Self::new(0);
13864
13865 #[doc = "Enable input pull-up"]
13866 pub const _1: Self = Self::new(1);
13867 }
13868 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13869 pub struct Ncodr_SPEC;
13870 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
13871 impl Ncodr {
13872 #[doc = "CMOS output"]
13873 pub const _0: Self = Self::new(0);
13874
13875 #[doc = "NMOS open-drain output"]
13876 pub const _1: Self = Self::new(1);
13877 }
13878 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13879 pub struct Dscr_SPEC;
13880 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
13881 impl Dscr {
13882 #[doc = "Low drive"]
13883 pub const _00: Self = Self::new(0);
13884
13885 #[doc = "Middle drive"]
13886 pub const _01: Self = Self::new(1);
13887
13888 #[doc = "High-speed high-drive"]
13889 pub const _10: Self = Self::new(2);
13890
13891 #[doc = "High drive"]
13892 pub const _11: Self = Self::new(3);
13893 }
13894 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13895 pub struct Eofr_SPEC;
13896 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
13897 impl Eofr {
13898 #[doc = "Don\'t care"]
13899 pub const _00: Self = Self::new(0);
13900
13901 #[doc = "Detect rising edge"]
13902 pub const _01: Self = Self::new(1);
13903
13904 #[doc = "Detect falling edge"]
13905 pub const _10: Self = Self::new(2);
13906
13907 #[doc = "Detect both edges"]
13908 pub const _11: Self = Self::new(3);
13909 }
13910 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13911 pub struct Isel_SPEC;
13912 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
13913 impl Isel {
13914 #[doc = "Not used as an IRQn input pin"]
13915 pub const _0: Self = Self::new(0);
13916
13917 #[doc = "Used as an IRQn input pin"]
13918 pub const _1: Self = Self::new(1);
13919 }
13920 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13921 pub struct Asel_SPEC;
13922 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
13923 impl Asel {
13924 #[doc = "Not used as an analog pin"]
13925 pub const _0: Self = Self::new(0);
13926
13927 #[doc = "Used as an analog pin"]
13928 pub const _1: Self = Self::new(1);
13929 }
13930 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13931 pub struct Pmr_SPEC;
13932 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
13933 impl Pmr {
13934 #[doc = "Used as a general I/O pin"]
13935 pub const _0: Self = Self::new(0);
13936
13937 #[doc = "Used as an I/O port for peripheral functions"]
13938 pub const _1: Self = Self::new(1);
13939 }
13940}
13941#[doc(hidden)]
13942#[derive(Copy, Clone, Eq, PartialEq)]
13943pub struct P4PfsHa_SPEC;
13944impl crate::sealed::RegSpec for P4PfsHa_SPEC {
13945 type DataType = u16;
13946}
13947
13948#[doc = "Port 4%s Pin Function Select Register"]
13949pub type P4PfsHa = crate::RegValueT<P4PfsHa_SPEC>;
13950
13951impl P4PfsHa {
13952 #[doc = "Port Mode Control"]
13953 #[inline(always)]
13954 pub fn pmr(
13955 self,
13956 ) -> crate::common::RegisterField<
13957 0,
13958 0x1,
13959 1,
13960 0,
13961 p4pfs_ha::Pmr,
13962 p4pfs_ha::Pmr,
13963 P4PfsHa_SPEC,
13964 crate::common::RW,
13965 > {
13966 crate::common::RegisterField::<
13967 0,
13968 0x1,
13969 1,
13970 0,
13971 p4pfs_ha::Pmr,
13972 p4pfs_ha::Pmr,
13973 P4PfsHa_SPEC,
13974 crate::common::RW,
13975 >::from_register(self, 0)
13976 }
13977
13978 #[doc = "Peripheral Select"]
13979 #[inline(always)]
13980 pub fn psel(
13981 self,
13982 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P4PfsHa_SPEC, crate::common::RW> {
13983 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P4PfsHa_SPEC,crate::common::RW>::from_register(self,0)
13984 }
13985}
13986impl ::core::default::Default for P4PfsHa {
13987 #[inline(always)]
13988 fn default() -> P4PfsHa {
13989 <crate::RegValueT<P4PfsHa_SPEC> as RegisterValue<_>>::new(0)
13990 }
13991}
13992pub mod p4pfs_ha {
13993
13994 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
13995 pub struct Pmr_SPEC;
13996 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
13997 impl Pmr {
13998 #[doc = "Used as a general I/O pin"]
13999 pub const _0: Self = Self::new(0);
14000
14001 #[doc = "Used as an I/O port for peripheral functions"]
14002 pub const _1: Self = Self::new(1);
14003 }
14004}
14005#[doc(hidden)]
14006#[derive(Copy, Clone, Eq, PartialEq)]
14007pub struct P4PfsBy_SPEC;
14008impl crate::sealed::RegSpec for P4PfsBy_SPEC {
14009 type DataType = u8;
14010}
14011
14012#[doc = "Port 4%s Pin Function Select Register"]
14013pub type P4PfsBy = crate::RegValueT<P4PfsBy_SPEC>;
14014
14015impl P4PfsBy {
14016 #[doc = "Peripheral Select"]
14017 #[inline(always)]
14018 pub fn psel(
14019 self,
14020 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P4PfsBy_SPEC, crate::common::RW> {
14021 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P4PfsBy_SPEC,crate::common::RW>::from_register(self,0)
14022 }
14023}
14024impl ::core::default::Default for P4PfsBy {
14025 #[inline(always)]
14026 fn default() -> P4PfsBy {
14027 <crate::RegValueT<P4PfsBy_SPEC> as RegisterValue<_>>::new(0)
14028 }
14029}
14030
14031#[doc(hidden)]
14032#[derive(Copy, Clone, Eq, PartialEq)]
14033pub struct P50Pfs_SPEC;
14034impl crate::sealed::RegSpec for P50Pfs_SPEC {
14035 type DataType = u32;
14036}
14037
14038#[doc = "Port 50%s Pin Function Select Register"]
14039pub type P50Pfs = crate::RegValueT<P50Pfs_SPEC>;
14040
14041impl P50Pfs {
14042 #[doc = "Port Output Data"]
14043 #[inline(always)]
14044 pub fn podr(
14045 self,
14046 ) -> crate::common::RegisterField<
14047 0,
14048 0x1,
14049 1,
14050 0,
14051 p50pfs::Podr,
14052 p50pfs::Podr,
14053 P50Pfs_SPEC,
14054 crate::common::RW,
14055 > {
14056 crate::common::RegisterField::<
14057 0,
14058 0x1,
14059 1,
14060 0,
14061 p50pfs::Podr,
14062 p50pfs::Podr,
14063 P50Pfs_SPEC,
14064 crate::common::RW,
14065 >::from_register(self, 0)
14066 }
14067
14068 #[doc = "Pmn State"]
14069 #[inline(always)]
14070 pub fn pidr(
14071 self,
14072 ) -> crate::common::RegisterField<
14073 1,
14074 0x1,
14075 1,
14076 0,
14077 p50pfs::Pidr,
14078 p50pfs::Pidr,
14079 P50Pfs_SPEC,
14080 crate::common::R,
14081 > {
14082 crate::common::RegisterField::<
14083 1,
14084 0x1,
14085 1,
14086 0,
14087 p50pfs::Pidr,
14088 p50pfs::Pidr,
14089 P50Pfs_SPEC,
14090 crate::common::R,
14091 >::from_register(self, 0)
14092 }
14093
14094 #[doc = "Port Direction"]
14095 #[inline(always)]
14096 pub fn pdr(
14097 self,
14098 ) -> crate::common::RegisterField<
14099 2,
14100 0x1,
14101 1,
14102 0,
14103 p50pfs::Pdr,
14104 p50pfs::Pdr,
14105 P50Pfs_SPEC,
14106 crate::common::RW,
14107 > {
14108 crate::common::RegisterField::<
14109 2,
14110 0x1,
14111 1,
14112 0,
14113 p50pfs::Pdr,
14114 p50pfs::Pdr,
14115 P50Pfs_SPEC,
14116 crate::common::RW,
14117 >::from_register(self, 0)
14118 }
14119
14120 #[doc = "Pull-up Control"]
14121 #[inline(always)]
14122 pub fn pcr(
14123 self,
14124 ) -> crate::common::RegisterField<
14125 4,
14126 0x1,
14127 1,
14128 0,
14129 p50pfs::Pcr,
14130 p50pfs::Pcr,
14131 P50Pfs_SPEC,
14132 crate::common::RW,
14133 > {
14134 crate::common::RegisterField::<
14135 4,
14136 0x1,
14137 1,
14138 0,
14139 p50pfs::Pcr,
14140 p50pfs::Pcr,
14141 P50Pfs_SPEC,
14142 crate::common::RW,
14143 >::from_register(self, 0)
14144 }
14145
14146 #[doc = "N-Channel Open-Drain Control"]
14147 #[inline(always)]
14148 pub fn ncodr(
14149 self,
14150 ) -> crate::common::RegisterField<
14151 6,
14152 0x1,
14153 1,
14154 0,
14155 p50pfs::Ncodr,
14156 p50pfs::Ncodr,
14157 P50Pfs_SPEC,
14158 crate::common::RW,
14159 > {
14160 crate::common::RegisterField::<
14161 6,
14162 0x1,
14163 1,
14164 0,
14165 p50pfs::Ncodr,
14166 p50pfs::Ncodr,
14167 P50Pfs_SPEC,
14168 crate::common::RW,
14169 >::from_register(self, 0)
14170 }
14171
14172 #[doc = "Port Drive Capability"]
14173 #[inline(always)]
14174 pub fn dscr(
14175 self,
14176 ) -> crate::common::RegisterField<
14177 10,
14178 0x3,
14179 1,
14180 0,
14181 p50pfs::Dscr,
14182 p50pfs::Dscr,
14183 P50Pfs_SPEC,
14184 crate::common::RW,
14185 > {
14186 crate::common::RegisterField::<
14187 10,
14188 0x3,
14189 1,
14190 0,
14191 p50pfs::Dscr,
14192 p50pfs::Dscr,
14193 P50Pfs_SPEC,
14194 crate::common::RW,
14195 >::from_register(self, 0)
14196 }
14197
14198 #[doc = "Event on Falling/Event on Rising"]
14199 #[inline(always)]
14200 pub fn eofr(
14201 self,
14202 ) -> crate::common::RegisterField<
14203 12,
14204 0x3,
14205 1,
14206 0,
14207 p50pfs::Eofr,
14208 p50pfs::Eofr,
14209 P50Pfs_SPEC,
14210 crate::common::RW,
14211 > {
14212 crate::common::RegisterField::<
14213 12,
14214 0x3,
14215 1,
14216 0,
14217 p50pfs::Eofr,
14218 p50pfs::Eofr,
14219 P50Pfs_SPEC,
14220 crate::common::RW,
14221 >::from_register(self, 0)
14222 }
14223
14224 #[doc = "IRQ Input Enable"]
14225 #[inline(always)]
14226 pub fn isel(
14227 self,
14228 ) -> crate::common::RegisterField<
14229 14,
14230 0x1,
14231 1,
14232 0,
14233 p50pfs::Isel,
14234 p50pfs::Isel,
14235 P50Pfs_SPEC,
14236 crate::common::RW,
14237 > {
14238 crate::common::RegisterField::<
14239 14,
14240 0x1,
14241 1,
14242 0,
14243 p50pfs::Isel,
14244 p50pfs::Isel,
14245 P50Pfs_SPEC,
14246 crate::common::RW,
14247 >::from_register(self, 0)
14248 }
14249
14250 #[doc = "Analog Input Enable"]
14251 #[inline(always)]
14252 pub fn asel(
14253 self,
14254 ) -> crate::common::RegisterField<
14255 15,
14256 0x1,
14257 1,
14258 0,
14259 p50pfs::Asel,
14260 p50pfs::Asel,
14261 P50Pfs_SPEC,
14262 crate::common::RW,
14263 > {
14264 crate::common::RegisterField::<
14265 15,
14266 0x1,
14267 1,
14268 0,
14269 p50pfs::Asel,
14270 p50pfs::Asel,
14271 P50Pfs_SPEC,
14272 crate::common::RW,
14273 >::from_register(self, 0)
14274 }
14275
14276 #[doc = "Port Mode Control"]
14277 #[inline(always)]
14278 pub fn pmr(
14279 self,
14280 ) -> crate::common::RegisterField<
14281 16,
14282 0x1,
14283 1,
14284 0,
14285 p50pfs::Pmr,
14286 p50pfs::Pmr,
14287 P50Pfs_SPEC,
14288 crate::common::RW,
14289 > {
14290 crate::common::RegisterField::<
14291 16,
14292 0x1,
14293 1,
14294 0,
14295 p50pfs::Pmr,
14296 p50pfs::Pmr,
14297 P50Pfs_SPEC,
14298 crate::common::RW,
14299 >::from_register(self, 0)
14300 }
14301
14302 #[doc = "Peripheral Select"]
14303 #[inline(always)]
14304 pub fn psel(
14305 self,
14306 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P50Pfs_SPEC, crate::common::RW> {
14307 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P50Pfs_SPEC,crate::common::RW>::from_register(self,0)
14308 }
14309}
14310impl ::core::default::Default for P50Pfs {
14311 #[inline(always)]
14312 fn default() -> P50Pfs {
14313 <crate::RegValueT<P50Pfs_SPEC> as RegisterValue<_>>::new(0)
14314 }
14315}
14316pub mod p50pfs {
14317
14318 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14319 pub struct Podr_SPEC;
14320 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
14321 impl Podr {
14322 #[doc = "Low output"]
14323 pub const _0: Self = Self::new(0);
14324
14325 #[doc = "High output"]
14326 pub const _1: Self = Self::new(1);
14327 }
14328 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14329 pub struct Pidr_SPEC;
14330 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
14331 impl Pidr {
14332 #[doc = "Low level"]
14333 pub const _0: Self = Self::new(0);
14334
14335 #[doc = "High level"]
14336 pub const _1: Self = Self::new(1);
14337 }
14338 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14339 pub struct Pdr_SPEC;
14340 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
14341 impl Pdr {
14342 #[doc = "Input (functions as an input pin)"]
14343 pub const _0: Self = Self::new(0);
14344
14345 #[doc = "Output (functions as an output pin)"]
14346 pub const _1: Self = Self::new(1);
14347 }
14348 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14349 pub struct Pcr_SPEC;
14350 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
14351 impl Pcr {
14352 #[doc = "Disable input pull-up"]
14353 pub const _0: Self = Self::new(0);
14354
14355 #[doc = "Enable input pull-up"]
14356 pub const _1: Self = Self::new(1);
14357 }
14358 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14359 pub struct Ncodr_SPEC;
14360 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
14361 impl Ncodr {
14362 #[doc = "CMOS output"]
14363 pub const _0: Self = Self::new(0);
14364
14365 #[doc = "NMOS open-drain output"]
14366 pub const _1: Self = Self::new(1);
14367 }
14368 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14369 pub struct Dscr_SPEC;
14370 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
14371 impl Dscr {
14372 #[doc = "Low drive"]
14373 pub const _00: Self = Self::new(0);
14374
14375 #[doc = "Middle drive"]
14376 pub const _01: Self = Self::new(1);
14377
14378 #[doc = "High-speed high-drive"]
14379 pub const _10: Self = Self::new(2);
14380
14381 #[doc = "High drive"]
14382 pub const _11: Self = Self::new(3);
14383 }
14384 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14385 pub struct Eofr_SPEC;
14386 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
14387 impl Eofr {
14388 #[doc = "Don\'t care"]
14389 pub const _00: Self = Self::new(0);
14390
14391 #[doc = "Detect rising edge"]
14392 pub const _01: Self = Self::new(1);
14393
14394 #[doc = "Detect falling edge"]
14395 pub const _10: Self = Self::new(2);
14396
14397 #[doc = "Detect both edges"]
14398 pub const _11: Self = Self::new(3);
14399 }
14400 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14401 pub struct Isel_SPEC;
14402 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
14403 impl Isel {
14404 #[doc = "Not used as an IRQn input pin"]
14405 pub const _0: Self = Self::new(0);
14406
14407 #[doc = "Used as an IRQn input pin"]
14408 pub const _1: Self = Self::new(1);
14409 }
14410 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14411 pub struct Asel_SPEC;
14412 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
14413 impl Asel {
14414 #[doc = "Not used as an analog pin"]
14415 pub const _0: Self = Self::new(0);
14416
14417 #[doc = "Used as an analog pin"]
14418 pub const _1: Self = Self::new(1);
14419 }
14420 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14421 pub struct Pmr_SPEC;
14422 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
14423 impl Pmr {
14424 #[doc = "Used as a general I/O pin"]
14425 pub const _0: Self = Self::new(0);
14426
14427 #[doc = "Used as an I/O port for peripheral functions"]
14428 pub const _1: Self = Self::new(1);
14429 }
14430}
14431#[doc(hidden)]
14432#[derive(Copy, Clone, Eq, PartialEq)]
14433pub struct P50PfsHa_SPEC;
14434impl crate::sealed::RegSpec for P50PfsHa_SPEC {
14435 type DataType = u16;
14436}
14437
14438#[doc = "Port 50%s Pin Function Select Register"]
14439pub type P50PfsHa = crate::RegValueT<P50PfsHa_SPEC>;
14440
14441impl P50PfsHa {
14442 #[doc = "Port Mode Control"]
14443 #[inline(always)]
14444 pub fn pmr(
14445 self,
14446 ) -> crate::common::RegisterField<
14447 0,
14448 0x1,
14449 1,
14450 0,
14451 p50pfs_ha::Pmr,
14452 p50pfs_ha::Pmr,
14453 P50PfsHa_SPEC,
14454 crate::common::RW,
14455 > {
14456 crate::common::RegisterField::<
14457 0,
14458 0x1,
14459 1,
14460 0,
14461 p50pfs_ha::Pmr,
14462 p50pfs_ha::Pmr,
14463 P50PfsHa_SPEC,
14464 crate::common::RW,
14465 >::from_register(self, 0)
14466 }
14467
14468 #[doc = "Peripheral Select"]
14469 #[inline(always)]
14470 pub fn psel(
14471 self,
14472 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P50PfsHa_SPEC, crate::common::RW> {
14473 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P50PfsHa_SPEC,crate::common::RW>::from_register(self,0)
14474 }
14475}
14476impl ::core::default::Default for P50PfsHa {
14477 #[inline(always)]
14478 fn default() -> P50PfsHa {
14479 <crate::RegValueT<P50PfsHa_SPEC> as RegisterValue<_>>::new(0)
14480 }
14481}
14482pub mod p50pfs_ha {
14483
14484 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14485 pub struct Pmr_SPEC;
14486 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
14487 impl Pmr {
14488 #[doc = "Used as a general I/O pin"]
14489 pub const _0: Self = Self::new(0);
14490
14491 #[doc = "Used as an I/O port for peripheral functions"]
14492 pub const _1: Self = Self::new(1);
14493 }
14494}
14495#[doc(hidden)]
14496#[derive(Copy, Clone, Eq, PartialEq)]
14497pub struct P50PfsBy_SPEC;
14498impl crate::sealed::RegSpec for P50PfsBy_SPEC {
14499 type DataType = u8;
14500}
14501
14502#[doc = "Port 50%s Pin Function Select Register"]
14503pub type P50PfsBy = crate::RegValueT<P50PfsBy_SPEC>;
14504
14505impl P50PfsBy {
14506 #[doc = "Peripheral Select"]
14507 #[inline(always)]
14508 pub fn psel(
14509 self,
14510 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P50PfsBy_SPEC, crate::common::RW> {
14511 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P50PfsBy_SPEC,crate::common::RW>::from_register(self,0)
14512 }
14513}
14514impl ::core::default::Default for P50PfsBy {
14515 #[inline(always)]
14516 fn default() -> P50PfsBy {
14517 <crate::RegValueT<P50PfsBy_SPEC> as RegisterValue<_>>::new(0)
14518 }
14519}
14520
14521#[doc(hidden)]
14522#[derive(Copy, Clone, Eq, PartialEq)]
14523pub struct P5Pfs_SPEC;
14524impl crate::sealed::RegSpec for P5Pfs_SPEC {
14525 type DataType = u32;
14526}
14527
14528#[doc = "Port 5%s Pin Function Select Register"]
14529pub type P5Pfs = crate::RegValueT<P5Pfs_SPEC>;
14530
14531impl P5Pfs {
14532 #[doc = "Port Output Data"]
14533 #[inline(always)]
14534 pub fn podr(
14535 self,
14536 ) -> crate::common::RegisterField<
14537 0,
14538 0x1,
14539 1,
14540 0,
14541 p5pfs::Podr,
14542 p5pfs::Podr,
14543 P5Pfs_SPEC,
14544 crate::common::RW,
14545 > {
14546 crate::common::RegisterField::<
14547 0,
14548 0x1,
14549 1,
14550 0,
14551 p5pfs::Podr,
14552 p5pfs::Podr,
14553 P5Pfs_SPEC,
14554 crate::common::RW,
14555 >::from_register(self, 0)
14556 }
14557
14558 #[doc = "Pmn State"]
14559 #[inline(always)]
14560 pub fn pidr(
14561 self,
14562 ) -> crate::common::RegisterField<
14563 1,
14564 0x1,
14565 1,
14566 0,
14567 p5pfs::Pidr,
14568 p5pfs::Pidr,
14569 P5Pfs_SPEC,
14570 crate::common::R,
14571 > {
14572 crate::common::RegisterField::<
14573 1,
14574 0x1,
14575 1,
14576 0,
14577 p5pfs::Pidr,
14578 p5pfs::Pidr,
14579 P5Pfs_SPEC,
14580 crate::common::R,
14581 >::from_register(self, 0)
14582 }
14583
14584 #[doc = "Port Direction"]
14585 #[inline(always)]
14586 pub fn pdr(
14587 self,
14588 ) -> crate::common::RegisterField<
14589 2,
14590 0x1,
14591 1,
14592 0,
14593 p5pfs::Pdr,
14594 p5pfs::Pdr,
14595 P5Pfs_SPEC,
14596 crate::common::RW,
14597 > {
14598 crate::common::RegisterField::<
14599 2,
14600 0x1,
14601 1,
14602 0,
14603 p5pfs::Pdr,
14604 p5pfs::Pdr,
14605 P5Pfs_SPEC,
14606 crate::common::RW,
14607 >::from_register(self, 0)
14608 }
14609
14610 #[doc = "Pull-up Control"]
14611 #[inline(always)]
14612 pub fn pcr(
14613 self,
14614 ) -> crate::common::RegisterField<
14615 4,
14616 0x1,
14617 1,
14618 0,
14619 p5pfs::Pcr,
14620 p5pfs::Pcr,
14621 P5Pfs_SPEC,
14622 crate::common::RW,
14623 > {
14624 crate::common::RegisterField::<
14625 4,
14626 0x1,
14627 1,
14628 0,
14629 p5pfs::Pcr,
14630 p5pfs::Pcr,
14631 P5Pfs_SPEC,
14632 crate::common::RW,
14633 >::from_register(self, 0)
14634 }
14635
14636 #[doc = "N-Channel Open-Drain Control"]
14637 #[inline(always)]
14638 pub fn ncodr(
14639 self,
14640 ) -> crate::common::RegisterField<
14641 6,
14642 0x1,
14643 1,
14644 0,
14645 p5pfs::Ncodr,
14646 p5pfs::Ncodr,
14647 P5Pfs_SPEC,
14648 crate::common::RW,
14649 > {
14650 crate::common::RegisterField::<
14651 6,
14652 0x1,
14653 1,
14654 0,
14655 p5pfs::Ncodr,
14656 p5pfs::Ncodr,
14657 P5Pfs_SPEC,
14658 crate::common::RW,
14659 >::from_register(self, 0)
14660 }
14661
14662 #[doc = "Port Drive Capability"]
14663 #[inline(always)]
14664 pub fn dscr(
14665 self,
14666 ) -> crate::common::RegisterField<
14667 10,
14668 0x3,
14669 1,
14670 0,
14671 p5pfs::Dscr,
14672 p5pfs::Dscr,
14673 P5Pfs_SPEC,
14674 crate::common::RW,
14675 > {
14676 crate::common::RegisterField::<
14677 10,
14678 0x3,
14679 1,
14680 0,
14681 p5pfs::Dscr,
14682 p5pfs::Dscr,
14683 P5Pfs_SPEC,
14684 crate::common::RW,
14685 >::from_register(self, 0)
14686 }
14687
14688 #[doc = "Event on Falling/Event on Rising"]
14689 #[inline(always)]
14690 pub fn eofr(
14691 self,
14692 ) -> crate::common::RegisterField<
14693 12,
14694 0x3,
14695 1,
14696 0,
14697 p5pfs::Eofr,
14698 p5pfs::Eofr,
14699 P5Pfs_SPEC,
14700 crate::common::RW,
14701 > {
14702 crate::common::RegisterField::<
14703 12,
14704 0x3,
14705 1,
14706 0,
14707 p5pfs::Eofr,
14708 p5pfs::Eofr,
14709 P5Pfs_SPEC,
14710 crate::common::RW,
14711 >::from_register(self, 0)
14712 }
14713
14714 #[doc = "IRQ Input Enable"]
14715 #[inline(always)]
14716 pub fn isel(
14717 self,
14718 ) -> crate::common::RegisterField<
14719 14,
14720 0x1,
14721 1,
14722 0,
14723 p5pfs::Isel,
14724 p5pfs::Isel,
14725 P5Pfs_SPEC,
14726 crate::common::RW,
14727 > {
14728 crate::common::RegisterField::<
14729 14,
14730 0x1,
14731 1,
14732 0,
14733 p5pfs::Isel,
14734 p5pfs::Isel,
14735 P5Pfs_SPEC,
14736 crate::common::RW,
14737 >::from_register(self, 0)
14738 }
14739
14740 #[doc = "Analog Input Enable"]
14741 #[inline(always)]
14742 pub fn asel(
14743 self,
14744 ) -> crate::common::RegisterField<
14745 15,
14746 0x1,
14747 1,
14748 0,
14749 p5pfs::Asel,
14750 p5pfs::Asel,
14751 P5Pfs_SPEC,
14752 crate::common::RW,
14753 > {
14754 crate::common::RegisterField::<
14755 15,
14756 0x1,
14757 1,
14758 0,
14759 p5pfs::Asel,
14760 p5pfs::Asel,
14761 P5Pfs_SPEC,
14762 crate::common::RW,
14763 >::from_register(self, 0)
14764 }
14765
14766 #[doc = "Port Mode Control"]
14767 #[inline(always)]
14768 pub fn pmr(
14769 self,
14770 ) -> crate::common::RegisterField<
14771 16,
14772 0x1,
14773 1,
14774 0,
14775 p5pfs::Pmr,
14776 p5pfs::Pmr,
14777 P5Pfs_SPEC,
14778 crate::common::RW,
14779 > {
14780 crate::common::RegisterField::<
14781 16,
14782 0x1,
14783 1,
14784 0,
14785 p5pfs::Pmr,
14786 p5pfs::Pmr,
14787 P5Pfs_SPEC,
14788 crate::common::RW,
14789 >::from_register(self, 0)
14790 }
14791
14792 #[doc = "Peripheral Select"]
14793 #[inline(always)]
14794 pub fn psel(
14795 self,
14796 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P5Pfs_SPEC, crate::common::RW> {
14797 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P5Pfs_SPEC,crate::common::RW>::from_register(self,0)
14798 }
14799}
14800impl ::core::default::Default for P5Pfs {
14801 #[inline(always)]
14802 fn default() -> P5Pfs {
14803 <crate::RegValueT<P5Pfs_SPEC> as RegisterValue<_>>::new(0)
14804 }
14805}
14806pub mod p5pfs {
14807
14808 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14809 pub struct Podr_SPEC;
14810 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
14811 impl Podr {
14812 #[doc = "Low output"]
14813 pub const _0: Self = Self::new(0);
14814
14815 #[doc = "High output"]
14816 pub const _1: Self = Self::new(1);
14817 }
14818 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14819 pub struct Pidr_SPEC;
14820 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
14821 impl Pidr {
14822 #[doc = "Low level"]
14823 pub const _0: Self = Self::new(0);
14824
14825 #[doc = "High level"]
14826 pub const _1: Self = Self::new(1);
14827 }
14828 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14829 pub struct Pdr_SPEC;
14830 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
14831 impl Pdr {
14832 #[doc = "Input (functions as an input pin)"]
14833 pub const _0: Self = Self::new(0);
14834
14835 #[doc = "Output (functions as an output pin)"]
14836 pub const _1: Self = Self::new(1);
14837 }
14838 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14839 pub struct Pcr_SPEC;
14840 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
14841 impl Pcr {
14842 #[doc = "Disable input pull-up"]
14843 pub const _0: Self = Self::new(0);
14844
14845 #[doc = "Enable input pull-up"]
14846 pub const _1: Self = Self::new(1);
14847 }
14848 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14849 pub struct Ncodr_SPEC;
14850 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
14851 impl Ncodr {
14852 #[doc = "CMOS output"]
14853 pub const _0: Self = Self::new(0);
14854
14855 #[doc = "NMOS open-drain output"]
14856 pub const _1: Self = Self::new(1);
14857 }
14858 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14859 pub struct Dscr_SPEC;
14860 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
14861 impl Dscr {
14862 #[doc = "Low drive"]
14863 pub const _00: Self = Self::new(0);
14864
14865 #[doc = "Middle drive"]
14866 pub const _01: Self = Self::new(1);
14867
14868 #[doc = "High-speed high-drive"]
14869 pub const _10: Self = Self::new(2);
14870
14871 #[doc = "High drive"]
14872 pub const _11: Self = Self::new(3);
14873 }
14874 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14875 pub struct Eofr_SPEC;
14876 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
14877 impl Eofr {
14878 #[doc = "Don\'t care"]
14879 pub const _00: Self = Self::new(0);
14880
14881 #[doc = "Detect rising edge"]
14882 pub const _01: Self = Self::new(1);
14883
14884 #[doc = "Detect falling edge"]
14885 pub const _10: Self = Self::new(2);
14886
14887 #[doc = "Detect both edges"]
14888 pub const _11: Self = Self::new(3);
14889 }
14890 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14891 pub struct Isel_SPEC;
14892 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
14893 impl Isel {
14894 #[doc = "Not used as an IRQn input pin"]
14895 pub const _0: Self = Self::new(0);
14896
14897 #[doc = "Used as an IRQn input pin"]
14898 pub const _1: Self = Self::new(1);
14899 }
14900 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14901 pub struct Asel_SPEC;
14902 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
14903 impl Asel {
14904 #[doc = "Not used as an analog pin"]
14905 pub const _0: Self = Self::new(0);
14906
14907 #[doc = "Used as an analog pin"]
14908 pub const _1: Self = Self::new(1);
14909 }
14910 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14911 pub struct Pmr_SPEC;
14912 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
14913 impl Pmr {
14914 #[doc = "Used as a general I/O pin"]
14915 pub const _0: Self = Self::new(0);
14916
14917 #[doc = "Used as an I/O port for peripheral functions"]
14918 pub const _1: Self = Self::new(1);
14919 }
14920}
14921#[doc(hidden)]
14922#[derive(Copy, Clone, Eq, PartialEq)]
14923pub struct P5PfsHa_SPEC;
14924impl crate::sealed::RegSpec for P5PfsHa_SPEC {
14925 type DataType = u16;
14926}
14927
14928#[doc = "Port 5%s Pin Function Select Register"]
14929pub type P5PfsHa = crate::RegValueT<P5PfsHa_SPEC>;
14930
14931impl P5PfsHa {
14932 #[doc = "Port Mode Control"]
14933 #[inline(always)]
14934 pub fn pmr(
14935 self,
14936 ) -> crate::common::RegisterField<
14937 0,
14938 0x1,
14939 1,
14940 0,
14941 p5pfs_ha::Pmr,
14942 p5pfs_ha::Pmr,
14943 P5PfsHa_SPEC,
14944 crate::common::RW,
14945 > {
14946 crate::common::RegisterField::<
14947 0,
14948 0x1,
14949 1,
14950 0,
14951 p5pfs_ha::Pmr,
14952 p5pfs_ha::Pmr,
14953 P5PfsHa_SPEC,
14954 crate::common::RW,
14955 >::from_register(self, 0)
14956 }
14957
14958 #[doc = "Peripheral Select"]
14959 #[inline(always)]
14960 pub fn psel(
14961 self,
14962 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P5PfsHa_SPEC, crate::common::RW> {
14963 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P5PfsHa_SPEC,crate::common::RW>::from_register(self,0)
14964 }
14965}
14966impl ::core::default::Default for P5PfsHa {
14967 #[inline(always)]
14968 fn default() -> P5PfsHa {
14969 <crate::RegValueT<P5PfsHa_SPEC> as RegisterValue<_>>::new(0)
14970 }
14971}
14972pub mod p5pfs_ha {
14973
14974 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
14975 pub struct Pmr_SPEC;
14976 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
14977 impl Pmr {
14978 #[doc = "Used as a general I/O pin"]
14979 pub const _0: Self = Self::new(0);
14980
14981 #[doc = "Used as an I/O port for peripheral functions"]
14982 pub const _1: Self = Self::new(1);
14983 }
14984}
14985#[doc(hidden)]
14986#[derive(Copy, Clone, Eq, PartialEq)]
14987pub struct P5PfsBy_SPEC;
14988impl crate::sealed::RegSpec for P5PfsBy_SPEC {
14989 type DataType = u8;
14990}
14991
14992#[doc = "Port 5%s Pin Function Select Register"]
14993pub type P5PfsBy = crate::RegValueT<P5PfsBy_SPEC>;
14994
14995impl P5PfsBy {
14996 #[doc = "Peripheral Select"]
14997 #[inline(always)]
14998 pub fn psel(
14999 self,
15000 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P5PfsBy_SPEC, crate::common::RW> {
15001 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P5PfsBy_SPEC,crate::common::RW>::from_register(self,0)
15002 }
15003}
15004impl ::core::default::Default for P5PfsBy {
15005 #[inline(always)]
15006 fn default() -> P5PfsBy {
15007 <crate::RegValueT<P5PfsBy_SPEC> as RegisterValue<_>>::new(0)
15008 }
15009}
15010
15011#[doc(hidden)]
15012#[derive(Copy, Clone, Eq, PartialEq)]
15013pub struct P60Pfs_SPEC;
15014impl crate::sealed::RegSpec for P60Pfs_SPEC {
15015 type DataType = u32;
15016}
15017
15018#[doc = "Port 60%s Pin Function Select Register"]
15019pub type P60Pfs = crate::RegValueT<P60Pfs_SPEC>;
15020
15021impl P60Pfs {
15022 #[doc = "Port Output Data"]
15023 #[inline(always)]
15024 pub fn podr(
15025 self,
15026 ) -> crate::common::RegisterField<
15027 0,
15028 0x1,
15029 1,
15030 0,
15031 p60pfs::Podr,
15032 p60pfs::Podr,
15033 P60Pfs_SPEC,
15034 crate::common::RW,
15035 > {
15036 crate::common::RegisterField::<
15037 0,
15038 0x1,
15039 1,
15040 0,
15041 p60pfs::Podr,
15042 p60pfs::Podr,
15043 P60Pfs_SPEC,
15044 crate::common::RW,
15045 >::from_register(self, 0)
15046 }
15047
15048 #[doc = "Pmn State"]
15049 #[inline(always)]
15050 pub fn pidr(
15051 self,
15052 ) -> crate::common::RegisterField<
15053 1,
15054 0x1,
15055 1,
15056 0,
15057 p60pfs::Pidr,
15058 p60pfs::Pidr,
15059 P60Pfs_SPEC,
15060 crate::common::R,
15061 > {
15062 crate::common::RegisterField::<
15063 1,
15064 0x1,
15065 1,
15066 0,
15067 p60pfs::Pidr,
15068 p60pfs::Pidr,
15069 P60Pfs_SPEC,
15070 crate::common::R,
15071 >::from_register(self, 0)
15072 }
15073
15074 #[doc = "Port Direction"]
15075 #[inline(always)]
15076 pub fn pdr(
15077 self,
15078 ) -> crate::common::RegisterField<
15079 2,
15080 0x1,
15081 1,
15082 0,
15083 p60pfs::Pdr,
15084 p60pfs::Pdr,
15085 P60Pfs_SPEC,
15086 crate::common::RW,
15087 > {
15088 crate::common::RegisterField::<
15089 2,
15090 0x1,
15091 1,
15092 0,
15093 p60pfs::Pdr,
15094 p60pfs::Pdr,
15095 P60Pfs_SPEC,
15096 crate::common::RW,
15097 >::from_register(self, 0)
15098 }
15099
15100 #[doc = "Pull-up Control"]
15101 #[inline(always)]
15102 pub fn pcr(
15103 self,
15104 ) -> crate::common::RegisterField<
15105 4,
15106 0x1,
15107 1,
15108 0,
15109 p60pfs::Pcr,
15110 p60pfs::Pcr,
15111 P60Pfs_SPEC,
15112 crate::common::RW,
15113 > {
15114 crate::common::RegisterField::<
15115 4,
15116 0x1,
15117 1,
15118 0,
15119 p60pfs::Pcr,
15120 p60pfs::Pcr,
15121 P60Pfs_SPEC,
15122 crate::common::RW,
15123 >::from_register(self, 0)
15124 }
15125
15126 #[doc = "N-Channel Open-Drain Control"]
15127 #[inline(always)]
15128 pub fn ncodr(
15129 self,
15130 ) -> crate::common::RegisterField<
15131 6,
15132 0x1,
15133 1,
15134 0,
15135 p60pfs::Ncodr,
15136 p60pfs::Ncodr,
15137 P60Pfs_SPEC,
15138 crate::common::RW,
15139 > {
15140 crate::common::RegisterField::<
15141 6,
15142 0x1,
15143 1,
15144 0,
15145 p60pfs::Ncodr,
15146 p60pfs::Ncodr,
15147 P60Pfs_SPEC,
15148 crate::common::RW,
15149 >::from_register(self, 0)
15150 }
15151
15152 #[doc = "Port Drive Capability"]
15153 #[inline(always)]
15154 pub fn dscr(
15155 self,
15156 ) -> crate::common::RegisterField<
15157 10,
15158 0x3,
15159 1,
15160 0,
15161 p60pfs::Dscr,
15162 p60pfs::Dscr,
15163 P60Pfs_SPEC,
15164 crate::common::RW,
15165 > {
15166 crate::common::RegisterField::<
15167 10,
15168 0x3,
15169 1,
15170 0,
15171 p60pfs::Dscr,
15172 p60pfs::Dscr,
15173 P60Pfs_SPEC,
15174 crate::common::RW,
15175 >::from_register(self, 0)
15176 }
15177
15178 #[doc = "Event on Falling/Event on Rising"]
15179 #[inline(always)]
15180 pub fn eofr(
15181 self,
15182 ) -> crate::common::RegisterField<
15183 12,
15184 0x3,
15185 1,
15186 0,
15187 p60pfs::Eofr,
15188 p60pfs::Eofr,
15189 P60Pfs_SPEC,
15190 crate::common::RW,
15191 > {
15192 crate::common::RegisterField::<
15193 12,
15194 0x3,
15195 1,
15196 0,
15197 p60pfs::Eofr,
15198 p60pfs::Eofr,
15199 P60Pfs_SPEC,
15200 crate::common::RW,
15201 >::from_register(self, 0)
15202 }
15203
15204 #[doc = "IRQ Input Enable"]
15205 #[inline(always)]
15206 pub fn isel(
15207 self,
15208 ) -> crate::common::RegisterField<
15209 14,
15210 0x1,
15211 1,
15212 0,
15213 p60pfs::Isel,
15214 p60pfs::Isel,
15215 P60Pfs_SPEC,
15216 crate::common::RW,
15217 > {
15218 crate::common::RegisterField::<
15219 14,
15220 0x1,
15221 1,
15222 0,
15223 p60pfs::Isel,
15224 p60pfs::Isel,
15225 P60Pfs_SPEC,
15226 crate::common::RW,
15227 >::from_register(self, 0)
15228 }
15229
15230 #[doc = "Analog Input Enable"]
15231 #[inline(always)]
15232 pub fn asel(
15233 self,
15234 ) -> crate::common::RegisterField<
15235 15,
15236 0x1,
15237 1,
15238 0,
15239 p60pfs::Asel,
15240 p60pfs::Asel,
15241 P60Pfs_SPEC,
15242 crate::common::RW,
15243 > {
15244 crate::common::RegisterField::<
15245 15,
15246 0x1,
15247 1,
15248 0,
15249 p60pfs::Asel,
15250 p60pfs::Asel,
15251 P60Pfs_SPEC,
15252 crate::common::RW,
15253 >::from_register(self, 0)
15254 }
15255
15256 #[doc = "Port Mode Control"]
15257 #[inline(always)]
15258 pub fn pmr(
15259 self,
15260 ) -> crate::common::RegisterField<
15261 16,
15262 0x1,
15263 1,
15264 0,
15265 p60pfs::Pmr,
15266 p60pfs::Pmr,
15267 P60Pfs_SPEC,
15268 crate::common::RW,
15269 > {
15270 crate::common::RegisterField::<
15271 16,
15272 0x1,
15273 1,
15274 0,
15275 p60pfs::Pmr,
15276 p60pfs::Pmr,
15277 P60Pfs_SPEC,
15278 crate::common::RW,
15279 >::from_register(self, 0)
15280 }
15281
15282 #[doc = "Peripheral Select"]
15283 #[inline(always)]
15284 pub fn psel(
15285 self,
15286 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P60Pfs_SPEC, crate::common::RW> {
15287 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P60Pfs_SPEC,crate::common::RW>::from_register(self,0)
15288 }
15289}
15290impl ::core::default::Default for P60Pfs {
15291 #[inline(always)]
15292 fn default() -> P60Pfs {
15293 <crate::RegValueT<P60Pfs_SPEC> as RegisterValue<_>>::new(0)
15294 }
15295}
15296pub mod p60pfs {
15297
15298 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15299 pub struct Podr_SPEC;
15300 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
15301 impl Podr {
15302 #[doc = "Low output"]
15303 pub const _0: Self = Self::new(0);
15304
15305 #[doc = "High output"]
15306 pub const _1: Self = Self::new(1);
15307 }
15308 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15309 pub struct Pidr_SPEC;
15310 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
15311 impl Pidr {
15312 #[doc = "Low level"]
15313 pub const _0: Self = Self::new(0);
15314
15315 #[doc = "High level"]
15316 pub const _1: Self = Self::new(1);
15317 }
15318 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15319 pub struct Pdr_SPEC;
15320 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
15321 impl Pdr {
15322 #[doc = "Input (functions as an input pin)"]
15323 pub const _0: Self = Self::new(0);
15324
15325 #[doc = "Output (functions as an output pin)"]
15326 pub const _1: Self = Self::new(1);
15327 }
15328 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15329 pub struct Pcr_SPEC;
15330 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
15331 impl Pcr {
15332 #[doc = "Disable input pull-up"]
15333 pub const _0: Self = Self::new(0);
15334
15335 #[doc = "Enable input pull-up"]
15336 pub const _1: Self = Self::new(1);
15337 }
15338 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15339 pub struct Ncodr_SPEC;
15340 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
15341 impl Ncodr {
15342 #[doc = "CMOS output"]
15343 pub const _0: Self = Self::new(0);
15344
15345 #[doc = "NMOS open-drain output"]
15346 pub const _1: Self = Self::new(1);
15347 }
15348 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15349 pub struct Dscr_SPEC;
15350 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
15351 impl Dscr {
15352 #[doc = "Low drive"]
15353 pub const _00: Self = Self::new(0);
15354
15355 #[doc = "Middle drive"]
15356 pub const _01: Self = Self::new(1);
15357
15358 #[doc = "High-speed high-drive"]
15359 pub const _10: Self = Self::new(2);
15360
15361 #[doc = "High drive"]
15362 pub const _11: Self = Self::new(3);
15363 }
15364 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15365 pub struct Eofr_SPEC;
15366 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
15367 impl Eofr {
15368 #[doc = "Don\'t care"]
15369 pub const _00: Self = Self::new(0);
15370
15371 #[doc = "Detect rising edge"]
15372 pub const _01: Self = Self::new(1);
15373
15374 #[doc = "Detect falling edge"]
15375 pub const _10: Self = Self::new(2);
15376
15377 #[doc = "Detect both edges"]
15378 pub const _11: Self = Self::new(3);
15379 }
15380 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15381 pub struct Isel_SPEC;
15382 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
15383 impl Isel {
15384 #[doc = "Not used as an IRQn input pin"]
15385 pub const _0: Self = Self::new(0);
15386
15387 #[doc = "Used as an IRQn input pin"]
15388 pub const _1: Self = Self::new(1);
15389 }
15390 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15391 pub struct Asel_SPEC;
15392 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
15393 impl Asel {
15394 #[doc = "Not used as an analog pin"]
15395 pub const _0: Self = Self::new(0);
15396
15397 #[doc = "Used as an analog pin"]
15398 pub const _1: Self = Self::new(1);
15399 }
15400 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15401 pub struct Pmr_SPEC;
15402 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
15403 impl Pmr {
15404 #[doc = "Used as a general I/O pin"]
15405 pub const _0: Self = Self::new(0);
15406
15407 #[doc = "Used as an I/O port for peripheral functions"]
15408 pub const _1: Self = Self::new(1);
15409 }
15410}
15411#[doc(hidden)]
15412#[derive(Copy, Clone, Eq, PartialEq)]
15413pub struct P60PfsHa_SPEC;
15414impl crate::sealed::RegSpec for P60PfsHa_SPEC {
15415 type DataType = u16;
15416}
15417
15418#[doc = "Port 60%s Pin Function Select Register"]
15419pub type P60PfsHa = crate::RegValueT<P60PfsHa_SPEC>;
15420
15421impl P60PfsHa {
15422 #[doc = "Port Mode Control"]
15423 #[inline(always)]
15424 pub fn pmr(
15425 self,
15426 ) -> crate::common::RegisterField<
15427 0,
15428 0x1,
15429 1,
15430 0,
15431 p60pfs_ha::Pmr,
15432 p60pfs_ha::Pmr,
15433 P60PfsHa_SPEC,
15434 crate::common::RW,
15435 > {
15436 crate::common::RegisterField::<
15437 0,
15438 0x1,
15439 1,
15440 0,
15441 p60pfs_ha::Pmr,
15442 p60pfs_ha::Pmr,
15443 P60PfsHa_SPEC,
15444 crate::common::RW,
15445 >::from_register(self, 0)
15446 }
15447
15448 #[doc = "Peripheral Select"]
15449 #[inline(always)]
15450 pub fn psel(
15451 self,
15452 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P60PfsHa_SPEC, crate::common::RW> {
15453 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P60PfsHa_SPEC,crate::common::RW>::from_register(self,0)
15454 }
15455}
15456impl ::core::default::Default for P60PfsHa {
15457 #[inline(always)]
15458 fn default() -> P60PfsHa {
15459 <crate::RegValueT<P60PfsHa_SPEC> as RegisterValue<_>>::new(0)
15460 }
15461}
15462pub mod p60pfs_ha {
15463
15464 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15465 pub struct Pmr_SPEC;
15466 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
15467 impl Pmr {
15468 #[doc = "Used as a general I/O pin"]
15469 pub const _0: Self = Self::new(0);
15470
15471 #[doc = "Used as an I/O port for peripheral functions"]
15472 pub const _1: Self = Self::new(1);
15473 }
15474}
15475#[doc(hidden)]
15476#[derive(Copy, Clone, Eq, PartialEq)]
15477pub struct P60PfsBy_SPEC;
15478impl crate::sealed::RegSpec for P60PfsBy_SPEC {
15479 type DataType = u8;
15480}
15481
15482#[doc = "Port 60%s Pin Function Select Register"]
15483pub type P60PfsBy = crate::RegValueT<P60PfsBy_SPEC>;
15484
15485impl P60PfsBy {
15486 #[doc = "Peripheral Select"]
15487 #[inline(always)]
15488 pub fn psel(
15489 self,
15490 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P60PfsBy_SPEC, crate::common::RW> {
15491 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P60PfsBy_SPEC,crate::common::RW>::from_register(self,0)
15492 }
15493}
15494impl ::core::default::Default for P60PfsBy {
15495 #[inline(always)]
15496 fn default() -> P60PfsBy {
15497 <crate::RegValueT<P60PfsBy_SPEC> as RegisterValue<_>>::new(0)
15498 }
15499}
15500
15501#[doc(hidden)]
15502#[derive(Copy, Clone, Eq, PartialEq)]
15503pub struct P6Pfs_SPEC;
15504impl crate::sealed::RegSpec for P6Pfs_SPEC {
15505 type DataType = u32;
15506}
15507
15508#[doc = "Port 6%s Pin Function Select Register"]
15509pub type P6Pfs = crate::RegValueT<P6Pfs_SPEC>;
15510
15511impl P6Pfs {
15512 #[doc = "Port Output Data"]
15513 #[inline(always)]
15514 pub fn podr(
15515 self,
15516 ) -> crate::common::RegisterField<
15517 0,
15518 0x1,
15519 1,
15520 0,
15521 p6pfs::Podr,
15522 p6pfs::Podr,
15523 P6Pfs_SPEC,
15524 crate::common::RW,
15525 > {
15526 crate::common::RegisterField::<
15527 0,
15528 0x1,
15529 1,
15530 0,
15531 p6pfs::Podr,
15532 p6pfs::Podr,
15533 P6Pfs_SPEC,
15534 crate::common::RW,
15535 >::from_register(self, 0)
15536 }
15537
15538 #[doc = "Pmn State"]
15539 #[inline(always)]
15540 pub fn pidr(
15541 self,
15542 ) -> crate::common::RegisterField<
15543 1,
15544 0x1,
15545 1,
15546 0,
15547 p6pfs::Pidr,
15548 p6pfs::Pidr,
15549 P6Pfs_SPEC,
15550 crate::common::R,
15551 > {
15552 crate::common::RegisterField::<
15553 1,
15554 0x1,
15555 1,
15556 0,
15557 p6pfs::Pidr,
15558 p6pfs::Pidr,
15559 P6Pfs_SPEC,
15560 crate::common::R,
15561 >::from_register(self, 0)
15562 }
15563
15564 #[doc = "Port Direction"]
15565 #[inline(always)]
15566 pub fn pdr(
15567 self,
15568 ) -> crate::common::RegisterField<
15569 2,
15570 0x1,
15571 1,
15572 0,
15573 p6pfs::Pdr,
15574 p6pfs::Pdr,
15575 P6Pfs_SPEC,
15576 crate::common::RW,
15577 > {
15578 crate::common::RegisterField::<
15579 2,
15580 0x1,
15581 1,
15582 0,
15583 p6pfs::Pdr,
15584 p6pfs::Pdr,
15585 P6Pfs_SPEC,
15586 crate::common::RW,
15587 >::from_register(self, 0)
15588 }
15589
15590 #[doc = "Pull-up Control"]
15591 #[inline(always)]
15592 pub fn pcr(
15593 self,
15594 ) -> crate::common::RegisterField<
15595 4,
15596 0x1,
15597 1,
15598 0,
15599 p6pfs::Pcr,
15600 p6pfs::Pcr,
15601 P6Pfs_SPEC,
15602 crate::common::RW,
15603 > {
15604 crate::common::RegisterField::<
15605 4,
15606 0x1,
15607 1,
15608 0,
15609 p6pfs::Pcr,
15610 p6pfs::Pcr,
15611 P6Pfs_SPEC,
15612 crate::common::RW,
15613 >::from_register(self, 0)
15614 }
15615
15616 #[doc = "N-Channel Open-Drain Control"]
15617 #[inline(always)]
15618 pub fn ncodr(
15619 self,
15620 ) -> crate::common::RegisterField<
15621 6,
15622 0x1,
15623 1,
15624 0,
15625 p6pfs::Ncodr,
15626 p6pfs::Ncodr,
15627 P6Pfs_SPEC,
15628 crate::common::RW,
15629 > {
15630 crate::common::RegisterField::<
15631 6,
15632 0x1,
15633 1,
15634 0,
15635 p6pfs::Ncodr,
15636 p6pfs::Ncodr,
15637 P6Pfs_SPEC,
15638 crate::common::RW,
15639 >::from_register(self, 0)
15640 }
15641
15642 #[doc = "Port Drive Capability"]
15643 #[inline(always)]
15644 pub fn dscr(
15645 self,
15646 ) -> crate::common::RegisterField<
15647 10,
15648 0x3,
15649 1,
15650 0,
15651 p6pfs::Dscr,
15652 p6pfs::Dscr,
15653 P6Pfs_SPEC,
15654 crate::common::RW,
15655 > {
15656 crate::common::RegisterField::<
15657 10,
15658 0x3,
15659 1,
15660 0,
15661 p6pfs::Dscr,
15662 p6pfs::Dscr,
15663 P6Pfs_SPEC,
15664 crate::common::RW,
15665 >::from_register(self, 0)
15666 }
15667
15668 #[doc = "Event on Falling/Event on Rising"]
15669 #[inline(always)]
15670 pub fn eofr(
15671 self,
15672 ) -> crate::common::RegisterField<
15673 12,
15674 0x3,
15675 1,
15676 0,
15677 p6pfs::Eofr,
15678 p6pfs::Eofr,
15679 P6Pfs_SPEC,
15680 crate::common::RW,
15681 > {
15682 crate::common::RegisterField::<
15683 12,
15684 0x3,
15685 1,
15686 0,
15687 p6pfs::Eofr,
15688 p6pfs::Eofr,
15689 P6Pfs_SPEC,
15690 crate::common::RW,
15691 >::from_register(self, 0)
15692 }
15693
15694 #[doc = "IRQ Input Enable"]
15695 #[inline(always)]
15696 pub fn isel(
15697 self,
15698 ) -> crate::common::RegisterField<
15699 14,
15700 0x1,
15701 1,
15702 0,
15703 p6pfs::Isel,
15704 p6pfs::Isel,
15705 P6Pfs_SPEC,
15706 crate::common::RW,
15707 > {
15708 crate::common::RegisterField::<
15709 14,
15710 0x1,
15711 1,
15712 0,
15713 p6pfs::Isel,
15714 p6pfs::Isel,
15715 P6Pfs_SPEC,
15716 crate::common::RW,
15717 >::from_register(self, 0)
15718 }
15719
15720 #[doc = "Analog Input Enable"]
15721 #[inline(always)]
15722 pub fn asel(
15723 self,
15724 ) -> crate::common::RegisterField<
15725 15,
15726 0x1,
15727 1,
15728 0,
15729 p6pfs::Asel,
15730 p6pfs::Asel,
15731 P6Pfs_SPEC,
15732 crate::common::RW,
15733 > {
15734 crate::common::RegisterField::<
15735 15,
15736 0x1,
15737 1,
15738 0,
15739 p6pfs::Asel,
15740 p6pfs::Asel,
15741 P6Pfs_SPEC,
15742 crate::common::RW,
15743 >::from_register(self, 0)
15744 }
15745
15746 #[doc = "Port Mode Control"]
15747 #[inline(always)]
15748 pub fn pmr(
15749 self,
15750 ) -> crate::common::RegisterField<
15751 16,
15752 0x1,
15753 1,
15754 0,
15755 p6pfs::Pmr,
15756 p6pfs::Pmr,
15757 P6Pfs_SPEC,
15758 crate::common::RW,
15759 > {
15760 crate::common::RegisterField::<
15761 16,
15762 0x1,
15763 1,
15764 0,
15765 p6pfs::Pmr,
15766 p6pfs::Pmr,
15767 P6Pfs_SPEC,
15768 crate::common::RW,
15769 >::from_register(self, 0)
15770 }
15771
15772 #[doc = "Peripheral Select"]
15773 #[inline(always)]
15774 pub fn psel(
15775 self,
15776 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P6Pfs_SPEC, crate::common::RW> {
15777 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P6Pfs_SPEC,crate::common::RW>::from_register(self,0)
15778 }
15779}
15780impl ::core::default::Default for P6Pfs {
15781 #[inline(always)]
15782 fn default() -> P6Pfs {
15783 <crate::RegValueT<P6Pfs_SPEC> as RegisterValue<_>>::new(0)
15784 }
15785}
15786pub mod p6pfs {
15787
15788 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15789 pub struct Podr_SPEC;
15790 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
15791 impl Podr {
15792 #[doc = "Low output"]
15793 pub const _0: Self = Self::new(0);
15794
15795 #[doc = "High output"]
15796 pub const _1: Self = Self::new(1);
15797 }
15798 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15799 pub struct Pidr_SPEC;
15800 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
15801 impl Pidr {
15802 #[doc = "Low level"]
15803 pub const _0: Self = Self::new(0);
15804
15805 #[doc = "High level"]
15806 pub const _1: Self = Self::new(1);
15807 }
15808 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15809 pub struct Pdr_SPEC;
15810 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
15811 impl Pdr {
15812 #[doc = "Input (functions as an input pin)"]
15813 pub const _0: Self = Self::new(0);
15814
15815 #[doc = "Output (functions as an output pin)"]
15816 pub const _1: Self = Self::new(1);
15817 }
15818 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15819 pub struct Pcr_SPEC;
15820 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
15821 impl Pcr {
15822 #[doc = "Disable input pull-up"]
15823 pub const _0: Self = Self::new(0);
15824
15825 #[doc = "Enable input pull-up"]
15826 pub const _1: Self = Self::new(1);
15827 }
15828 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15829 pub struct Ncodr_SPEC;
15830 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
15831 impl Ncodr {
15832 #[doc = "CMOS output"]
15833 pub const _0: Self = Self::new(0);
15834
15835 #[doc = "NMOS open-drain output"]
15836 pub const _1: Self = Self::new(1);
15837 }
15838 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15839 pub struct Dscr_SPEC;
15840 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
15841 impl Dscr {
15842 #[doc = "Low drive"]
15843 pub const _00: Self = Self::new(0);
15844
15845 #[doc = "Middle drive"]
15846 pub const _01: Self = Self::new(1);
15847
15848 #[doc = "High-speed high-drive"]
15849 pub const _10: Self = Self::new(2);
15850
15851 #[doc = "High drive"]
15852 pub const _11: Self = Self::new(3);
15853 }
15854 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15855 pub struct Eofr_SPEC;
15856 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
15857 impl Eofr {
15858 #[doc = "Don\'t care"]
15859 pub const _00: Self = Self::new(0);
15860
15861 #[doc = "Detect rising edge"]
15862 pub const _01: Self = Self::new(1);
15863
15864 #[doc = "Detect falling edge"]
15865 pub const _10: Self = Self::new(2);
15866
15867 #[doc = "Detect both edges"]
15868 pub const _11: Self = Self::new(3);
15869 }
15870 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15871 pub struct Isel_SPEC;
15872 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
15873 impl Isel {
15874 #[doc = "Not used as an IRQn input pin"]
15875 pub const _0: Self = Self::new(0);
15876
15877 #[doc = "Used as an IRQn input pin"]
15878 pub const _1: Self = Self::new(1);
15879 }
15880 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15881 pub struct Asel_SPEC;
15882 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
15883 impl Asel {
15884 #[doc = "Not used as an analog pin"]
15885 pub const _0: Self = Self::new(0);
15886
15887 #[doc = "Used as an analog pin"]
15888 pub const _1: Self = Self::new(1);
15889 }
15890 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15891 pub struct Pmr_SPEC;
15892 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
15893 impl Pmr {
15894 #[doc = "Used as a general I/O pin"]
15895 pub const _0: Self = Self::new(0);
15896
15897 #[doc = "Used as an I/O port for peripheral functions"]
15898 pub const _1: Self = Self::new(1);
15899 }
15900}
15901#[doc(hidden)]
15902#[derive(Copy, Clone, Eq, PartialEq)]
15903pub struct P6PfsHa_SPEC;
15904impl crate::sealed::RegSpec for P6PfsHa_SPEC {
15905 type DataType = u16;
15906}
15907
15908#[doc = "Port 6%s Pin Function Select Register"]
15909pub type P6PfsHa = crate::RegValueT<P6PfsHa_SPEC>;
15910
15911impl P6PfsHa {
15912 #[doc = "Port Mode Control"]
15913 #[inline(always)]
15914 pub fn pmr(
15915 self,
15916 ) -> crate::common::RegisterField<
15917 0,
15918 0x1,
15919 1,
15920 0,
15921 p6pfs_ha::Pmr,
15922 p6pfs_ha::Pmr,
15923 P6PfsHa_SPEC,
15924 crate::common::RW,
15925 > {
15926 crate::common::RegisterField::<
15927 0,
15928 0x1,
15929 1,
15930 0,
15931 p6pfs_ha::Pmr,
15932 p6pfs_ha::Pmr,
15933 P6PfsHa_SPEC,
15934 crate::common::RW,
15935 >::from_register(self, 0)
15936 }
15937
15938 #[doc = "Peripheral Select"]
15939 #[inline(always)]
15940 pub fn psel(
15941 self,
15942 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P6PfsHa_SPEC, crate::common::RW> {
15943 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P6PfsHa_SPEC,crate::common::RW>::from_register(self,0)
15944 }
15945}
15946impl ::core::default::Default for P6PfsHa {
15947 #[inline(always)]
15948 fn default() -> P6PfsHa {
15949 <crate::RegValueT<P6PfsHa_SPEC> as RegisterValue<_>>::new(0)
15950 }
15951}
15952pub mod p6pfs_ha {
15953
15954 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
15955 pub struct Pmr_SPEC;
15956 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
15957 impl Pmr {
15958 #[doc = "Used as a general I/O pin"]
15959 pub const _0: Self = Self::new(0);
15960
15961 #[doc = "Used as an I/O port for peripheral functions"]
15962 pub const _1: Self = Self::new(1);
15963 }
15964}
15965#[doc(hidden)]
15966#[derive(Copy, Clone, Eq, PartialEq)]
15967pub struct P6PfsBy_SPEC;
15968impl crate::sealed::RegSpec for P6PfsBy_SPEC {
15969 type DataType = u8;
15970}
15971
15972#[doc = "Port 6%s Pin Function Select Register"]
15973pub type P6PfsBy = crate::RegValueT<P6PfsBy_SPEC>;
15974
15975impl P6PfsBy {
15976 #[doc = "Peripheral Select"]
15977 #[inline(always)]
15978 pub fn psel(
15979 self,
15980 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P6PfsBy_SPEC, crate::common::RW> {
15981 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P6PfsBy_SPEC,crate::common::RW>::from_register(self,0)
15982 }
15983}
15984impl ::core::default::Default for P6PfsBy {
15985 #[inline(always)]
15986 fn default() -> P6PfsBy {
15987 <crate::RegValueT<P6PfsBy_SPEC> as RegisterValue<_>>::new(0)
15988 }
15989}
15990
15991#[doc(hidden)]
15992#[derive(Copy, Clone, Eq, PartialEq)]
15993pub struct P70Pfs_SPEC;
15994impl crate::sealed::RegSpec for P70Pfs_SPEC {
15995 type DataType = u32;
15996}
15997
15998#[doc = "Port 70%s Pin Function Select Register"]
15999pub type P70Pfs = crate::RegValueT<P70Pfs_SPEC>;
16000
16001impl P70Pfs {
16002 #[doc = "Port Output Data"]
16003 #[inline(always)]
16004 pub fn podr(
16005 self,
16006 ) -> crate::common::RegisterField<
16007 0,
16008 0x1,
16009 1,
16010 0,
16011 p70pfs::Podr,
16012 p70pfs::Podr,
16013 P70Pfs_SPEC,
16014 crate::common::RW,
16015 > {
16016 crate::common::RegisterField::<
16017 0,
16018 0x1,
16019 1,
16020 0,
16021 p70pfs::Podr,
16022 p70pfs::Podr,
16023 P70Pfs_SPEC,
16024 crate::common::RW,
16025 >::from_register(self, 0)
16026 }
16027
16028 #[doc = "Pmn State"]
16029 #[inline(always)]
16030 pub fn pidr(
16031 self,
16032 ) -> crate::common::RegisterField<
16033 1,
16034 0x1,
16035 1,
16036 0,
16037 p70pfs::Pidr,
16038 p70pfs::Pidr,
16039 P70Pfs_SPEC,
16040 crate::common::R,
16041 > {
16042 crate::common::RegisterField::<
16043 1,
16044 0x1,
16045 1,
16046 0,
16047 p70pfs::Pidr,
16048 p70pfs::Pidr,
16049 P70Pfs_SPEC,
16050 crate::common::R,
16051 >::from_register(self, 0)
16052 }
16053
16054 #[doc = "Port Direction"]
16055 #[inline(always)]
16056 pub fn pdr(
16057 self,
16058 ) -> crate::common::RegisterField<
16059 2,
16060 0x1,
16061 1,
16062 0,
16063 p70pfs::Pdr,
16064 p70pfs::Pdr,
16065 P70Pfs_SPEC,
16066 crate::common::RW,
16067 > {
16068 crate::common::RegisterField::<
16069 2,
16070 0x1,
16071 1,
16072 0,
16073 p70pfs::Pdr,
16074 p70pfs::Pdr,
16075 P70Pfs_SPEC,
16076 crate::common::RW,
16077 >::from_register(self, 0)
16078 }
16079
16080 #[doc = "Pull-up Control"]
16081 #[inline(always)]
16082 pub fn pcr(
16083 self,
16084 ) -> crate::common::RegisterField<
16085 4,
16086 0x1,
16087 1,
16088 0,
16089 p70pfs::Pcr,
16090 p70pfs::Pcr,
16091 P70Pfs_SPEC,
16092 crate::common::RW,
16093 > {
16094 crate::common::RegisterField::<
16095 4,
16096 0x1,
16097 1,
16098 0,
16099 p70pfs::Pcr,
16100 p70pfs::Pcr,
16101 P70Pfs_SPEC,
16102 crate::common::RW,
16103 >::from_register(self, 0)
16104 }
16105
16106 #[doc = "N-Channel Open-Drain Control"]
16107 #[inline(always)]
16108 pub fn ncodr(
16109 self,
16110 ) -> crate::common::RegisterField<
16111 6,
16112 0x1,
16113 1,
16114 0,
16115 p70pfs::Ncodr,
16116 p70pfs::Ncodr,
16117 P70Pfs_SPEC,
16118 crate::common::RW,
16119 > {
16120 crate::common::RegisterField::<
16121 6,
16122 0x1,
16123 1,
16124 0,
16125 p70pfs::Ncodr,
16126 p70pfs::Ncodr,
16127 P70Pfs_SPEC,
16128 crate::common::RW,
16129 >::from_register(self, 0)
16130 }
16131
16132 #[doc = "Port Drive Capability"]
16133 #[inline(always)]
16134 pub fn dscr(
16135 self,
16136 ) -> crate::common::RegisterField<
16137 10,
16138 0x3,
16139 1,
16140 0,
16141 p70pfs::Dscr,
16142 p70pfs::Dscr,
16143 P70Pfs_SPEC,
16144 crate::common::RW,
16145 > {
16146 crate::common::RegisterField::<
16147 10,
16148 0x3,
16149 1,
16150 0,
16151 p70pfs::Dscr,
16152 p70pfs::Dscr,
16153 P70Pfs_SPEC,
16154 crate::common::RW,
16155 >::from_register(self, 0)
16156 }
16157
16158 #[doc = "Event on Falling/Event on Rising"]
16159 #[inline(always)]
16160 pub fn eofr(
16161 self,
16162 ) -> crate::common::RegisterField<
16163 12,
16164 0x3,
16165 1,
16166 0,
16167 p70pfs::Eofr,
16168 p70pfs::Eofr,
16169 P70Pfs_SPEC,
16170 crate::common::RW,
16171 > {
16172 crate::common::RegisterField::<
16173 12,
16174 0x3,
16175 1,
16176 0,
16177 p70pfs::Eofr,
16178 p70pfs::Eofr,
16179 P70Pfs_SPEC,
16180 crate::common::RW,
16181 >::from_register(self, 0)
16182 }
16183
16184 #[doc = "IRQ Input Enable"]
16185 #[inline(always)]
16186 pub fn isel(
16187 self,
16188 ) -> crate::common::RegisterField<
16189 14,
16190 0x1,
16191 1,
16192 0,
16193 p70pfs::Isel,
16194 p70pfs::Isel,
16195 P70Pfs_SPEC,
16196 crate::common::RW,
16197 > {
16198 crate::common::RegisterField::<
16199 14,
16200 0x1,
16201 1,
16202 0,
16203 p70pfs::Isel,
16204 p70pfs::Isel,
16205 P70Pfs_SPEC,
16206 crate::common::RW,
16207 >::from_register(self, 0)
16208 }
16209
16210 #[doc = "Analog Input Enable"]
16211 #[inline(always)]
16212 pub fn asel(
16213 self,
16214 ) -> crate::common::RegisterField<
16215 15,
16216 0x1,
16217 1,
16218 0,
16219 p70pfs::Asel,
16220 p70pfs::Asel,
16221 P70Pfs_SPEC,
16222 crate::common::RW,
16223 > {
16224 crate::common::RegisterField::<
16225 15,
16226 0x1,
16227 1,
16228 0,
16229 p70pfs::Asel,
16230 p70pfs::Asel,
16231 P70Pfs_SPEC,
16232 crate::common::RW,
16233 >::from_register(self, 0)
16234 }
16235
16236 #[doc = "Port Mode Control"]
16237 #[inline(always)]
16238 pub fn pmr(
16239 self,
16240 ) -> crate::common::RegisterField<
16241 16,
16242 0x1,
16243 1,
16244 0,
16245 p70pfs::Pmr,
16246 p70pfs::Pmr,
16247 P70Pfs_SPEC,
16248 crate::common::RW,
16249 > {
16250 crate::common::RegisterField::<
16251 16,
16252 0x1,
16253 1,
16254 0,
16255 p70pfs::Pmr,
16256 p70pfs::Pmr,
16257 P70Pfs_SPEC,
16258 crate::common::RW,
16259 >::from_register(self, 0)
16260 }
16261
16262 #[doc = "Peripheral Select"]
16263 #[inline(always)]
16264 pub fn psel(
16265 self,
16266 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P70Pfs_SPEC, crate::common::RW> {
16267 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P70Pfs_SPEC,crate::common::RW>::from_register(self,0)
16268 }
16269}
16270impl ::core::default::Default for P70Pfs {
16271 #[inline(always)]
16272 fn default() -> P70Pfs {
16273 <crate::RegValueT<P70Pfs_SPEC> as RegisterValue<_>>::new(0)
16274 }
16275}
16276pub mod p70pfs {
16277
16278 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16279 pub struct Podr_SPEC;
16280 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
16281 impl Podr {
16282 #[doc = "Low output"]
16283 pub const _0: Self = Self::new(0);
16284
16285 #[doc = "High output"]
16286 pub const _1: Self = Self::new(1);
16287 }
16288 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16289 pub struct Pidr_SPEC;
16290 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
16291 impl Pidr {
16292 #[doc = "Low level"]
16293 pub const _0: Self = Self::new(0);
16294
16295 #[doc = "High level"]
16296 pub const _1: Self = Self::new(1);
16297 }
16298 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16299 pub struct Pdr_SPEC;
16300 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
16301 impl Pdr {
16302 #[doc = "Input (functions as an input pin)"]
16303 pub const _0: Self = Self::new(0);
16304
16305 #[doc = "Output (functions as an output pin)"]
16306 pub const _1: Self = Self::new(1);
16307 }
16308 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16309 pub struct Pcr_SPEC;
16310 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
16311 impl Pcr {
16312 #[doc = "Disable input pull-up"]
16313 pub const _0: Self = Self::new(0);
16314
16315 #[doc = "Enable input pull-up"]
16316 pub const _1: Self = Self::new(1);
16317 }
16318 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16319 pub struct Ncodr_SPEC;
16320 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
16321 impl Ncodr {
16322 #[doc = "CMOS output"]
16323 pub const _0: Self = Self::new(0);
16324
16325 #[doc = "NMOS open-drain output"]
16326 pub const _1: Self = Self::new(1);
16327 }
16328 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16329 pub struct Dscr_SPEC;
16330 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
16331 impl Dscr {
16332 #[doc = "Low drive"]
16333 pub const _00: Self = Self::new(0);
16334
16335 #[doc = "Middle drive"]
16336 pub const _01: Self = Self::new(1);
16337
16338 #[doc = "High-speed high-drive"]
16339 pub const _10: Self = Self::new(2);
16340
16341 #[doc = "High drive"]
16342 pub const _11: Self = Self::new(3);
16343 }
16344 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16345 pub struct Eofr_SPEC;
16346 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
16347 impl Eofr {
16348 #[doc = "Don\'t care"]
16349 pub const _00: Self = Self::new(0);
16350
16351 #[doc = "Detect rising edge"]
16352 pub const _01: Self = Self::new(1);
16353
16354 #[doc = "Detect falling edge"]
16355 pub const _10: Self = Self::new(2);
16356
16357 #[doc = "Detect both edges"]
16358 pub const _11: Self = Self::new(3);
16359 }
16360 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16361 pub struct Isel_SPEC;
16362 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
16363 impl Isel {
16364 #[doc = "Not used as an IRQn input pin"]
16365 pub const _0: Self = Self::new(0);
16366
16367 #[doc = "Used as an IRQn input pin"]
16368 pub const _1: Self = Self::new(1);
16369 }
16370 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16371 pub struct Asel_SPEC;
16372 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
16373 impl Asel {
16374 #[doc = "Not used as an analog pin"]
16375 pub const _0: Self = Self::new(0);
16376
16377 #[doc = "Used as an analog pin"]
16378 pub const _1: Self = Self::new(1);
16379 }
16380 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16381 pub struct Pmr_SPEC;
16382 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
16383 impl Pmr {
16384 #[doc = "Used as a general I/O pin"]
16385 pub const _0: Self = Self::new(0);
16386
16387 #[doc = "Used as an I/O port for peripheral functions"]
16388 pub const _1: Self = Self::new(1);
16389 }
16390}
16391#[doc(hidden)]
16392#[derive(Copy, Clone, Eq, PartialEq)]
16393pub struct P70PfsHa_SPEC;
16394impl crate::sealed::RegSpec for P70PfsHa_SPEC {
16395 type DataType = u16;
16396}
16397
16398#[doc = "Port 70%s Pin Function Select Register"]
16399pub type P70PfsHa = crate::RegValueT<P70PfsHa_SPEC>;
16400
16401impl P70PfsHa {
16402 #[doc = "Port Mode Control"]
16403 #[inline(always)]
16404 pub fn pmr(
16405 self,
16406 ) -> crate::common::RegisterField<
16407 0,
16408 0x1,
16409 1,
16410 0,
16411 p70pfs_ha::Pmr,
16412 p70pfs_ha::Pmr,
16413 P70PfsHa_SPEC,
16414 crate::common::RW,
16415 > {
16416 crate::common::RegisterField::<
16417 0,
16418 0x1,
16419 1,
16420 0,
16421 p70pfs_ha::Pmr,
16422 p70pfs_ha::Pmr,
16423 P70PfsHa_SPEC,
16424 crate::common::RW,
16425 >::from_register(self, 0)
16426 }
16427
16428 #[doc = "Peripheral Select"]
16429 #[inline(always)]
16430 pub fn psel(
16431 self,
16432 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P70PfsHa_SPEC, crate::common::RW> {
16433 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P70PfsHa_SPEC,crate::common::RW>::from_register(self,0)
16434 }
16435}
16436impl ::core::default::Default for P70PfsHa {
16437 #[inline(always)]
16438 fn default() -> P70PfsHa {
16439 <crate::RegValueT<P70PfsHa_SPEC> as RegisterValue<_>>::new(0)
16440 }
16441}
16442pub mod p70pfs_ha {
16443
16444 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16445 pub struct Pmr_SPEC;
16446 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
16447 impl Pmr {
16448 #[doc = "Used as a general I/O pin"]
16449 pub const _0: Self = Self::new(0);
16450
16451 #[doc = "Used as an I/O port for peripheral functions"]
16452 pub const _1: Self = Self::new(1);
16453 }
16454}
16455#[doc(hidden)]
16456#[derive(Copy, Clone, Eq, PartialEq)]
16457pub struct P70PfsBy_SPEC;
16458impl crate::sealed::RegSpec for P70PfsBy_SPEC {
16459 type DataType = u8;
16460}
16461
16462#[doc = "Port 70%s Pin Function Select Register"]
16463pub type P70PfsBy = crate::RegValueT<P70PfsBy_SPEC>;
16464
16465impl P70PfsBy {
16466 #[doc = "Peripheral Select"]
16467 #[inline(always)]
16468 pub fn psel(
16469 self,
16470 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P70PfsBy_SPEC, crate::common::RW> {
16471 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P70PfsBy_SPEC,crate::common::RW>::from_register(self,0)
16472 }
16473}
16474impl ::core::default::Default for P70PfsBy {
16475 #[inline(always)]
16476 fn default() -> P70PfsBy {
16477 <crate::RegValueT<P70PfsBy_SPEC> as RegisterValue<_>>::new(0)
16478 }
16479}
16480
16481#[doc(hidden)]
16482#[derive(Copy, Clone, Eq, PartialEq)]
16483pub struct P7Pfs_SPEC;
16484impl crate::sealed::RegSpec for P7Pfs_SPEC {
16485 type DataType = u32;
16486}
16487
16488#[doc = "Port 7%s Pin Function Select Register"]
16489pub type P7Pfs = crate::RegValueT<P7Pfs_SPEC>;
16490
16491impl P7Pfs {
16492 #[doc = "Port Output Data"]
16493 #[inline(always)]
16494 pub fn podr(
16495 self,
16496 ) -> crate::common::RegisterField<
16497 0,
16498 0x1,
16499 1,
16500 0,
16501 p7pfs::Podr,
16502 p7pfs::Podr,
16503 P7Pfs_SPEC,
16504 crate::common::RW,
16505 > {
16506 crate::common::RegisterField::<
16507 0,
16508 0x1,
16509 1,
16510 0,
16511 p7pfs::Podr,
16512 p7pfs::Podr,
16513 P7Pfs_SPEC,
16514 crate::common::RW,
16515 >::from_register(self, 0)
16516 }
16517
16518 #[doc = "Pmn State"]
16519 #[inline(always)]
16520 pub fn pidr(
16521 self,
16522 ) -> crate::common::RegisterField<
16523 1,
16524 0x1,
16525 1,
16526 0,
16527 p7pfs::Pidr,
16528 p7pfs::Pidr,
16529 P7Pfs_SPEC,
16530 crate::common::R,
16531 > {
16532 crate::common::RegisterField::<
16533 1,
16534 0x1,
16535 1,
16536 0,
16537 p7pfs::Pidr,
16538 p7pfs::Pidr,
16539 P7Pfs_SPEC,
16540 crate::common::R,
16541 >::from_register(self, 0)
16542 }
16543
16544 #[doc = "Port Direction"]
16545 #[inline(always)]
16546 pub fn pdr(
16547 self,
16548 ) -> crate::common::RegisterField<
16549 2,
16550 0x1,
16551 1,
16552 0,
16553 p7pfs::Pdr,
16554 p7pfs::Pdr,
16555 P7Pfs_SPEC,
16556 crate::common::RW,
16557 > {
16558 crate::common::RegisterField::<
16559 2,
16560 0x1,
16561 1,
16562 0,
16563 p7pfs::Pdr,
16564 p7pfs::Pdr,
16565 P7Pfs_SPEC,
16566 crate::common::RW,
16567 >::from_register(self, 0)
16568 }
16569
16570 #[doc = "Pull-up Control"]
16571 #[inline(always)]
16572 pub fn pcr(
16573 self,
16574 ) -> crate::common::RegisterField<
16575 4,
16576 0x1,
16577 1,
16578 0,
16579 p7pfs::Pcr,
16580 p7pfs::Pcr,
16581 P7Pfs_SPEC,
16582 crate::common::RW,
16583 > {
16584 crate::common::RegisterField::<
16585 4,
16586 0x1,
16587 1,
16588 0,
16589 p7pfs::Pcr,
16590 p7pfs::Pcr,
16591 P7Pfs_SPEC,
16592 crate::common::RW,
16593 >::from_register(self, 0)
16594 }
16595
16596 #[doc = "N-Channel Open-Drain Control"]
16597 #[inline(always)]
16598 pub fn ncodr(
16599 self,
16600 ) -> crate::common::RegisterField<
16601 6,
16602 0x1,
16603 1,
16604 0,
16605 p7pfs::Ncodr,
16606 p7pfs::Ncodr,
16607 P7Pfs_SPEC,
16608 crate::common::RW,
16609 > {
16610 crate::common::RegisterField::<
16611 6,
16612 0x1,
16613 1,
16614 0,
16615 p7pfs::Ncodr,
16616 p7pfs::Ncodr,
16617 P7Pfs_SPEC,
16618 crate::common::RW,
16619 >::from_register(self, 0)
16620 }
16621
16622 #[doc = "Port Drive Capability"]
16623 #[inline(always)]
16624 pub fn dscr(
16625 self,
16626 ) -> crate::common::RegisterField<
16627 10,
16628 0x3,
16629 1,
16630 0,
16631 p7pfs::Dscr,
16632 p7pfs::Dscr,
16633 P7Pfs_SPEC,
16634 crate::common::RW,
16635 > {
16636 crate::common::RegisterField::<
16637 10,
16638 0x3,
16639 1,
16640 0,
16641 p7pfs::Dscr,
16642 p7pfs::Dscr,
16643 P7Pfs_SPEC,
16644 crate::common::RW,
16645 >::from_register(self, 0)
16646 }
16647
16648 #[doc = "Event on Falling/Event on Rising"]
16649 #[inline(always)]
16650 pub fn eofr(
16651 self,
16652 ) -> crate::common::RegisterField<
16653 12,
16654 0x3,
16655 1,
16656 0,
16657 p7pfs::Eofr,
16658 p7pfs::Eofr,
16659 P7Pfs_SPEC,
16660 crate::common::RW,
16661 > {
16662 crate::common::RegisterField::<
16663 12,
16664 0x3,
16665 1,
16666 0,
16667 p7pfs::Eofr,
16668 p7pfs::Eofr,
16669 P7Pfs_SPEC,
16670 crate::common::RW,
16671 >::from_register(self, 0)
16672 }
16673
16674 #[doc = "IRQ Input Enable"]
16675 #[inline(always)]
16676 pub fn isel(
16677 self,
16678 ) -> crate::common::RegisterField<
16679 14,
16680 0x1,
16681 1,
16682 0,
16683 p7pfs::Isel,
16684 p7pfs::Isel,
16685 P7Pfs_SPEC,
16686 crate::common::RW,
16687 > {
16688 crate::common::RegisterField::<
16689 14,
16690 0x1,
16691 1,
16692 0,
16693 p7pfs::Isel,
16694 p7pfs::Isel,
16695 P7Pfs_SPEC,
16696 crate::common::RW,
16697 >::from_register(self, 0)
16698 }
16699
16700 #[doc = "Analog Input Enable"]
16701 #[inline(always)]
16702 pub fn asel(
16703 self,
16704 ) -> crate::common::RegisterField<
16705 15,
16706 0x1,
16707 1,
16708 0,
16709 p7pfs::Asel,
16710 p7pfs::Asel,
16711 P7Pfs_SPEC,
16712 crate::common::RW,
16713 > {
16714 crate::common::RegisterField::<
16715 15,
16716 0x1,
16717 1,
16718 0,
16719 p7pfs::Asel,
16720 p7pfs::Asel,
16721 P7Pfs_SPEC,
16722 crate::common::RW,
16723 >::from_register(self, 0)
16724 }
16725
16726 #[doc = "Port Mode Control"]
16727 #[inline(always)]
16728 pub fn pmr(
16729 self,
16730 ) -> crate::common::RegisterField<
16731 16,
16732 0x1,
16733 1,
16734 0,
16735 p7pfs::Pmr,
16736 p7pfs::Pmr,
16737 P7Pfs_SPEC,
16738 crate::common::RW,
16739 > {
16740 crate::common::RegisterField::<
16741 16,
16742 0x1,
16743 1,
16744 0,
16745 p7pfs::Pmr,
16746 p7pfs::Pmr,
16747 P7Pfs_SPEC,
16748 crate::common::RW,
16749 >::from_register(self, 0)
16750 }
16751
16752 #[doc = "Peripheral Select"]
16753 #[inline(always)]
16754 pub fn psel(
16755 self,
16756 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P7Pfs_SPEC, crate::common::RW> {
16757 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P7Pfs_SPEC,crate::common::RW>::from_register(self,0)
16758 }
16759}
16760impl ::core::default::Default for P7Pfs {
16761 #[inline(always)]
16762 fn default() -> P7Pfs {
16763 <crate::RegValueT<P7Pfs_SPEC> as RegisterValue<_>>::new(0)
16764 }
16765}
16766pub mod p7pfs {
16767
16768 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16769 pub struct Podr_SPEC;
16770 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
16771 impl Podr {
16772 #[doc = "Low output"]
16773 pub const _0: Self = Self::new(0);
16774
16775 #[doc = "High output"]
16776 pub const _1: Self = Self::new(1);
16777 }
16778 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16779 pub struct Pidr_SPEC;
16780 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
16781 impl Pidr {
16782 #[doc = "Low level"]
16783 pub const _0: Self = Self::new(0);
16784
16785 #[doc = "High level"]
16786 pub const _1: Self = Self::new(1);
16787 }
16788 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16789 pub struct Pdr_SPEC;
16790 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
16791 impl Pdr {
16792 #[doc = "Input (functions as an input pin)"]
16793 pub const _0: Self = Self::new(0);
16794
16795 #[doc = "Output (functions as an output pin)"]
16796 pub const _1: Self = Self::new(1);
16797 }
16798 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16799 pub struct Pcr_SPEC;
16800 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
16801 impl Pcr {
16802 #[doc = "Disable input pull-up"]
16803 pub const _0: Self = Self::new(0);
16804
16805 #[doc = "Enable input pull-up"]
16806 pub const _1: Self = Self::new(1);
16807 }
16808 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16809 pub struct Ncodr_SPEC;
16810 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
16811 impl Ncodr {
16812 #[doc = "CMOS output"]
16813 pub const _0: Self = Self::new(0);
16814
16815 #[doc = "NMOS open-drain output"]
16816 pub const _1: Self = Self::new(1);
16817 }
16818 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16819 pub struct Dscr_SPEC;
16820 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
16821 impl Dscr {
16822 #[doc = "Low drive"]
16823 pub const _00: Self = Self::new(0);
16824
16825 #[doc = "Middle drive"]
16826 pub const _01: Self = Self::new(1);
16827
16828 #[doc = "High-speed high-drive"]
16829 pub const _10: Self = Self::new(2);
16830
16831 #[doc = "High drive"]
16832 pub const _11: Self = Self::new(3);
16833 }
16834 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16835 pub struct Eofr_SPEC;
16836 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
16837 impl Eofr {
16838 #[doc = "Don\'t care"]
16839 pub const _00: Self = Self::new(0);
16840
16841 #[doc = "Detect rising edge"]
16842 pub const _01: Self = Self::new(1);
16843
16844 #[doc = "Detect falling edge"]
16845 pub const _10: Self = Self::new(2);
16846
16847 #[doc = "Detect both edges"]
16848 pub const _11: Self = Self::new(3);
16849 }
16850 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16851 pub struct Isel_SPEC;
16852 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
16853 impl Isel {
16854 #[doc = "Not used as an IRQn input pin"]
16855 pub const _0: Self = Self::new(0);
16856
16857 #[doc = "Used as an IRQn input pin"]
16858 pub const _1: Self = Self::new(1);
16859 }
16860 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16861 pub struct Asel_SPEC;
16862 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
16863 impl Asel {
16864 #[doc = "Not used as an analog pin"]
16865 pub const _0: Self = Self::new(0);
16866
16867 #[doc = "Used as an analog pin"]
16868 pub const _1: Self = Self::new(1);
16869 }
16870 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16871 pub struct Pmr_SPEC;
16872 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
16873 impl Pmr {
16874 #[doc = "Used as a general I/O pin"]
16875 pub const _0: Self = Self::new(0);
16876
16877 #[doc = "Used as an I/O port for peripheral functions"]
16878 pub const _1: Self = Self::new(1);
16879 }
16880}
16881#[doc(hidden)]
16882#[derive(Copy, Clone, Eq, PartialEq)]
16883pub struct P7PfsHa_SPEC;
16884impl crate::sealed::RegSpec for P7PfsHa_SPEC {
16885 type DataType = u16;
16886}
16887
16888#[doc = "Port 7%s Pin Function Select Register"]
16889pub type P7PfsHa = crate::RegValueT<P7PfsHa_SPEC>;
16890
16891impl P7PfsHa {
16892 #[doc = "Port Mode Control"]
16893 #[inline(always)]
16894 pub fn pmr(
16895 self,
16896 ) -> crate::common::RegisterField<
16897 0,
16898 0x1,
16899 1,
16900 0,
16901 p7pfs_ha::Pmr,
16902 p7pfs_ha::Pmr,
16903 P7PfsHa_SPEC,
16904 crate::common::RW,
16905 > {
16906 crate::common::RegisterField::<
16907 0,
16908 0x1,
16909 1,
16910 0,
16911 p7pfs_ha::Pmr,
16912 p7pfs_ha::Pmr,
16913 P7PfsHa_SPEC,
16914 crate::common::RW,
16915 >::from_register(self, 0)
16916 }
16917
16918 #[doc = "Peripheral Select"]
16919 #[inline(always)]
16920 pub fn psel(
16921 self,
16922 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P7PfsHa_SPEC, crate::common::RW> {
16923 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P7PfsHa_SPEC,crate::common::RW>::from_register(self,0)
16924 }
16925}
16926impl ::core::default::Default for P7PfsHa {
16927 #[inline(always)]
16928 fn default() -> P7PfsHa {
16929 <crate::RegValueT<P7PfsHa_SPEC> as RegisterValue<_>>::new(0)
16930 }
16931}
16932pub mod p7pfs_ha {
16933
16934 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
16935 pub struct Pmr_SPEC;
16936 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
16937 impl Pmr {
16938 #[doc = "Used as a general I/O pin"]
16939 pub const _0: Self = Self::new(0);
16940
16941 #[doc = "Used as an I/O port for peripheral functions"]
16942 pub const _1: Self = Self::new(1);
16943 }
16944}
16945#[doc(hidden)]
16946#[derive(Copy, Clone, Eq, PartialEq)]
16947pub struct P7PfsBy_SPEC;
16948impl crate::sealed::RegSpec for P7PfsBy_SPEC {
16949 type DataType = u8;
16950}
16951
16952#[doc = "Port 7%s Pin Function Select Register"]
16953pub type P7PfsBy = crate::RegValueT<P7PfsBy_SPEC>;
16954
16955impl P7PfsBy {
16956 #[doc = "Peripheral Select"]
16957 #[inline(always)]
16958 pub fn psel(
16959 self,
16960 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P7PfsBy_SPEC, crate::common::RW> {
16961 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P7PfsBy_SPEC,crate::common::RW>::from_register(self,0)
16962 }
16963}
16964impl ::core::default::Default for P7PfsBy {
16965 #[inline(always)]
16966 fn default() -> P7PfsBy {
16967 <crate::RegValueT<P7PfsBy_SPEC> as RegisterValue<_>>::new(0)
16968 }
16969}
16970
16971#[doc(hidden)]
16972#[derive(Copy, Clone, Eq, PartialEq)]
16973pub struct P80Pfs_SPEC;
16974impl crate::sealed::RegSpec for P80Pfs_SPEC {
16975 type DataType = u32;
16976}
16977
16978#[doc = "Port 80%s Pin Function Select Register"]
16979pub type P80Pfs = crate::RegValueT<P80Pfs_SPEC>;
16980
16981impl P80Pfs {
16982 #[doc = "Port Output Data"]
16983 #[inline(always)]
16984 pub fn podr(
16985 self,
16986 ) -> crate::common::RegisterField<
16987 0,
16988 0x1,
16989 1,
16990 0,
16991 p80pfs::Podr,
16992 p80pfs::Podr,
16993 P80Pfs_SPEC,
16994 crate::common::RW,
16995 > {
16996 crate::common::RegisterField::<
16997 0,
16998 0x1,
16999 1,
17000 0,
17001 p80pfs::Podr,
17002 p80pfs::Podr,
17003 P80Pfs_SPEC,
17004 crate::common::RW,
17005 >::from_register(self, 0)
17006 }
17007
17008 #[doc = "Pmn State"]
17009 #[inline(always)]
17010 pub fn pidr(
17011 self,
17012 ) -> crate::common::RegisterField<
17013 1,
17014 0x1,
17015 1,
17016 0,
17017 p80pfs::Pidr,
17018 p80pfs::Pidr,
17019 P80Pfs_SPEC,
17020 crate::common::R,
17021 > {
17022 crate::common::RegisterField::<
17023 1,
17024 0x1,
17025 1,
17026 0,
17027 p80pfs::Pidr,
17028 p80pfs::Pidr,
17029 P80Pfs_SPEC,
17030 crate::common::R,
17031 >::from_register(self, 0)
17032 }
17033
17034 #[doc = "Port Direction"]
17035 #[inline(always)]
17036 pub fn pdr(
17037 self,
17038 ) -> crate::common::RegisterField<
17039 2,
17040 0x1,
17041 1,
17042 0,
17043 p80pfs::Pdr,
17044 p80pfs::Pdr,
17045 P80Pfs_SPEC,
17046 crate::common::RW,
17047 > {
17048 crate::common::RegisterField::<
17049 2,
17050 0x1,
17051 1,
17052 0,
17053 p80pfs::Pdr,
17054 p80pfs::Pdr,
17055 P80Pfs_SPEC,
17056 crate::common::RW,
17057 >::from_register(self, 0)
17058 }
17059
17060 #[doc = "Pull-up Control"]
17061 #[inline(always)]
17062 pub fn pcr(
17063 self,
17064 ) -> crate::common::RegisterField<
17065 4,
17066 0x1,
17067 1,
17068 0,
17069 p80pfs::Pcr,
17070 p80pfs::Pcr,
17071 P80Pfs_SPEC,
17072 crate::common::RW,
17073 > {
17074 crate::common::RegisterField::<
17075 4,
17076 0x1,
17077 1,
17078 0,
17079 p80pfs::Pcr,
17080 p80pfs::Pcr,
17081 P80Pfs_SPEC,
17082 crate::common::RW,
17083 >::from_register(self, 0)
17084 }
17085
17086 #[doc = "N-Channel Open-Drain Control"]
17087 #[inline(always)]
17088 pub fn ncodr(
17089 self,
17090 ) -> crate::common::RegisterField<
17091 6,
17092 0x1,
17093 1,
17094 0,
17095 p80pfs::Ncodr,
17096 p80pfs::Ncodr,
17097 P80Pfs_SPEC,
17098 crate::common::RW,
17099 > {
17100 crate::common::RegisterField::<
17101 6,
17102 0x1,
17103 1,
17104 0,
17105 p80pfs::Ncodr,
17106 p80pfs::Ncodr,
17107 P80Pfs_SPEC,
17108 crate::common::RW,
17109 >::from_register(self, 0)
17110 }
17111
17112 #[doc = "Port Drive Capability"]
17113 #[inline(always)]
17114 pub fn dscr(
17115 self,
17116 ) -> crate::common::RegisterField<
17117 10,
17118 0x3,
17119 1,
17120 0,
17121 p80pfs::Dscr,
17122 p80pfs::Dscr,
17123 P80Pfs_SPEC,
17124 crate::common::RW,
17125 > {
17126 crate::common::RegisterField::<
17127 10,
17128 0x3,
17129 1,
17130 0,
17131 p80pfs::Dscr,
17132 p80pfs::Dscr,
17133 P80Pfs_SPEC,
17134 crate::common::RW,
17135 >::from_register(self, 0)
17136 }
17137
17138 #[doc = "Event on Falling/Event on Rising"]
17139 #[inline(always)]
17140 pub fn eofr(
17141 self,
17142 ) -> crate::common::RegisterField<
17143 12,
17144 0x3,
17145 1,
17146 0,
17147 p80pfs::Eofr,
17148 p80pfs::Eofr,
17149 P80Pfs_SPEC,
17150 crate::common::RW,
17151 > {
17152 crate::common::RegisterField::<
17153 12,
17154 0x3,
17155 1,
17156 0,
17157 p80pfs::Eofr,
17158 p80pfs::Eofr,
17159 P80Pfs_SPEC,
17160 crate::common::RW,
17161 >::from_register(self, 0)
17162 }
17163
17164 #[doc = "IRQ Input Enable"]
17165 #[inline(always)]
17166 pub fn isel(
17167 self,
17168 ) -> crate::common::RegisterField<
17169 14,
17170 0x1,
17171 1,
17172 0,
17173 p80pfs::Isel,
17174 p80pfs::Isel,
17175 P80Pfs_SPEC,
17176 crate::common::RW,
17177 > {
17178 crate::common::RegisterField::<
17179 14,
17180 0x1,
17181 1,
17182 0,
17183 p80pfs::Isel,
17184 p80pfs::Isel,
17185 P80Pfs_SPEC,
17186 crate::common::RW,
17187 >::from_register(self, 0)
17188 }
17189
17190 #[doc = "Analog Input Enable"]
17191 #[inline(always)]
17192 pub fn asel(
17193 self,
17194 ) -> crate::common::RegisterField<
17195 15,
17196 0x1,
17197 1,
17198 0,
17199 p80pfs::Asel,
17200 p80pfs::Asel,
17201 P80Pfs_SPEC,
17202 crate::common::RW,
17203 > {
17204 crate::common::RegisterField::<
17205 15,
17206 0x1,
17207 1,
17208 0,
17209 p80pfs::Asel,
17210 p80pfs::Asel,
17211 P80Pfs_SPEC,
17212 crate::common::RW,
17213 >::from_register(self, 0)
17214 }
17215
17216 #[doc = "Port Mode Control"]
17217 #[inline(always)]
17218 pub fn pmr(
17219 self,
17220 ) -> crate::common::RegisterField<
17221 16,
17222 0x1,
17223 1,
17224 0,
17225 p80pfs::Pmr,
17226 p80pfs::Pmr,
17227 P80Pfs_SPEC,
17228 crate::common::RW,
17229 > {
17230 crate::common::RegisterField::<
17231 16,
17232 0x1,
17233 1,
17234 0,
17235 p80pfs::Pmr,
17236 p80pfs::Pmr,
17237 P80Pfs_SPEC,
17238 crate::common::RW,
17239 >::from_register(self, 0)
17240 }
17241
17242 #[doc = "Peripheral Select"]
17243 #[inline(always)]
17244 pub fn psel(
17245 self,
17246 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P80Pfs_SPEC, crate::common::RW> {
17247 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P80Pfs_SPEC,crate::common::RW>::from_register(self,0)
17248 }
17249}
17250impl ::core::default::Default for P80Pfs {
17251 #[inline(always)]
17252 fn default() -> P80Pfs {
17253 <crate::RegValueT<P80Pfs_SPEC> as RegisterValue<_>>::new(0)
17254 }
17255}
17256pub mod p80pfs {
17257
17258 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17259 pub struct Podr_SPEC;
17260 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
17261 impl Podr {
17262 #[doc = "Low output"]
17263 pub const _0: Self = Self::new(0);
17264
17265 #[doc = "High output"]
17266 pub const _1: Self = Self::new(1);
17267 }
17268 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17269 pub struct Pidr_SPEC;
17270 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
17271 impl Pidr {
17272 #[doc = "Low level"]
17273 pub const _0: Self = Self::new(0);
17274
17275 #[doc = "High level"]
17276 pub const _1: Self = Self::new(1);
17277 }
17278 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17279 pub struct Pdr_SPEC;
17280 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
17281 impl Pdr {
17282 #[doc = "Input (functions as an input pin)"]
17283 pub const _0: Self = Self::new(0);
17284
17285 #[doc = "Output (functions as an output pin)"]
17286 pub const _1: Self = Self::new(1);
17287 }
17288 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17289 pub struct Pcr_SPEC;
17290 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
17291 impl Pcr {
17292 #[doc = "Disable input pull-up"]
17293 pub const _0: Self = Self::new(0);
17294
17295 #[doc = "Enable input pull-up"]
17296 pub const _1: Self = Self::new(1);
17297 }
17298 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17299 pub struct Ncodr_SPEC;
17300 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
17301 impl Ncodr {
17302 #[doc = "CMOS output"]
17303 pub const _0: Self = Self::new(0);
17304
17305 #[doc = "NMOS open-drain output"]
17306 pub const _1: Self = Self::new(1);
17307 }
17308 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17309 pub struct Dscr_SPEC;
17310 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
17311 impl Dscr {
17312 #[doc = "Low drive"]
17313 pub const _00: Self = Self::new(0);
17314
17315 #[doc = "Middle drive"]
17316 pub const _01: Self = Self::new(1);
17317
17318 #[doc = "High-speed high-drive"]
17319 pub const _10: Self = Self::new(2);
17320
17321 #[doc = "High drive"]
17322 pub const _11: Self = Self::new(3);
17323 }
17324 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17325 pub struct Eofr_SPEC;
17326 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
17327 impl Eofr {
17328 #[doc = "Don\'t care"]
17329 pub const _00: Self = Self::new(0);
17330
17331 #[doc = "Detect rising edge"]
17332 pub const _01: Self = Self::new(1);
17333
17334 #[doc = "Detect falling edge"]
17335 pub const _10: Self = Self::new(2);
17336
17337 #[doc = "Detect both edges"]
17338 pub const _11: Self = Self::new(3);
17339 }
17340 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17341 pub struct Isel_SPEC;
17342 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
17343 impl Isel {
17344 #[doc = "Not used as an IRQn input pin"]
17345 pub const _0: Self = Self::new(0);
17346
17347 #[doc = "Used as an IRQn input pin"]
17348 pub const _1: Self = Self::new(1);
17349 }
17350 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17351 pub struct Asel_SPEC;
17352 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
17353 impl Asel {
17354 #[doc = "Not used as an analog pin"]
17355 pub const _0: Self = Self::new(0);
17356
17357 #[doc = "Used as an analog pin"]
17358 pub const _1: Self = Self::new(1);
17359 }
17360 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17361 pub struct Pmr_SPEC;
17362 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
17363 impl Pmr {
17364 #[doc = "Used as a general I/O pin"]
17365 pub const _0: Self = Self::new(0);
17366
17367 #[doc = "Used as an I/O port for peripheral functions"]
17368 pub const _1: Self = Self::new(1);
17369 }
17370}
17371#[doc(hidden)]
17372#[derive(Copy, Clone, Eq, PartialEq)]
17373pub struct P80PfsHa_SPEC;
17374impl crate::sealed::RegSpec for P80PfsHa_SPEC {
17375 type DataType = u16;
17376}
17377
17378#[doc = "Port 80%s Pin Function Select Register"]
17379pub type P80PfsHa = crate::RegValueT<P80PfsHa_SPEC>;
17380
17381impl P80PfsHa {
17382 #[doc = "Port Mode Control"]
17383 #[inline(always)]
17384 pub fn pmr(
17385 self,
17386 ) -> crate::common::RegisterField<
17387 0,
17388 0x1,
17389 1,
17390 0,
17391 p80pfs_ha::Pmr,
17392 p80pfs_ha::Pmr,
17393 P80PfsHa_SPEC,
17394 crate::common::RW,
17395 > {
17396 crate::common::RegisterField::<
17397 0,
17398 0x1,
17399 1,
17400 0,
17401 p80pfs_ha::Pmr,
17402 p80pfs_ha::Pmr,
17403 P80PfsHa_SPEC,
17404 crate::common::RW,
17405 >::from_register(self, 0)
17406 }
17407
17408 #[doc = "Peripheral Select"]
17409 #[inline(always)]
17410 pub fn psel(
17411 self,
17412 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P80PfsHa_SPEC, crate::common::RW> {
17413 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P80PfsHa_SPEC,crate::common::RW>::from_register(self,0)
17414 }
17415}
17416impl ::core::default::Default for P80PfsHa {
17417 #[inline(always)]
17418 fn default() -> P80PfsHa {
17419 <crate::RegValueT<P80PfsHa_SPEC> as RegisterValue<_>>::new(0)
17420 }
17421}
17422pub mod p80pfs_ha {
17423
17424 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17425 pub struct Pmr_SPEC;
17426 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
17427 impl Pmr {
17428 #[doc = "Used as a general I/O pin"]
17429 pub const _0: Self = Self::new(0);
17430
17431 #[doc = "Used as an I/O port for peripheral functions"]
17432 pub const _1: Self = Self::new(1);
17433 }
17434}
17435#[doc(hidden)]
17436#[derive(Copy, Clone, Eq, PartialEq)]
17437pub struct P80PfsBy_SPEC;
17438impl crate::sealed::RegSpec for P80PfsBy_SPEC {
17439 type DataType = u8;
17440}
17441
17442#[doc = "Port 80%s Pin Function Select Register"]
17443pub type P80PfsBy = crate::RegValueT<P80PfsBy_SPEC>;
17444
17445impl P80PfsBy {
17446 #[doc = "Peripheral Select"]
17447 #[inline(always)]
17448 pub fn psel(
17449 self,
17450 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P80PfsBy_SPEC, crate::common::RW> {
17451 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P80PfsBy_SPEC,crate::common::RW>::from_register(self,0)
17452 }
17453}
17454impl ::core::default::Default for P80PfsBy {
17455 #[inline(always)]
17456 fn default() -> P80PfsBy {
17457 <crate::RegValueT<P80PfsBy_SPEC> as RegisterValue<_>>::new(0)
17458 }
17459}
17460
17461#[doc(hidden)]
17462#[derive(Copy, Clone, Eq, PartialEq)]
17463pub struct P8Pfs_SPEC;
17464impl crate::sealed::RegSpec for P8Pfs_SPEC {
17465 type DataType = u32;
17466}
17467
17468#[doc = "Port 8%s Pin Function Select Register"]
17469pub type P8Pfs = crate::RegValueT<P8Pfs_SPEC>;
17470
17471impl P8Pfs {
17472 #[doc = "Port Output Data"]
17473 #[inline(always)]
17474 pub fn podr(
17475 self,
17476 ) -> crate::common::RegisterField<
17477 0,
17478 0x1,
17479 1,
17480 0,
17481 p8pfs::Podr,
17482 p8pfs::Podr,
17483 P8Pfs_SPEC,
17484 crate::common::RW,
17485 > {
17486 crate::common::RegisterField::<
17487 0,
17488 0x1,
17489 1,
17490 0,
17491 p8pfs::Podr,
17492 p8pfs::Podr,
17493 P8Pfs_SPEC,
17494 crate::common::RW,
17495 >::from_register(self, 0)
17496 }
17497
17498 #[doc = "Pmn State"]
17499 #[inline(always)]
17500 pub fn pidr(
17501 self,
17502 ) -> crate::common::RegisterField<
17503 1,
17504 0x1,
17505 1,
17506 0,
17507 p8pfs::Pidr,
17508 p8pfs::Pidr,
17509 P8Pfs_SPEC,
17510 crate::common::R,
17511 > {
17512 crate::common::RegisterField::<
17513 1,
17514 0x1,
17515 1,
17516 0,
17517 p8pfs::Pidr,
17518 p8pfs::Pidr,
17519 P8Pfs_SPEC,
17520 crate::common::R,
17521 >::from_register(self, 0)
17522 }
17523
17524 #[doc = "Port Direction"]
17525 #[inline(always)]
17526 pub fn pdr(
17527 self,
17528 ) -> crate::common::RegisterField<
17529 2,
17530 0x1,
17531 1,
17532 0,
17533 p8pfs::Pdr,
17534 p8pfs::Pdr,
17535 P8Pfs_SPEC,
17536 crate::common::RW,
17537 > {
17538 crate::common::RegisterField::<
17539 2,
17540 0x1,
17541 1,
17542 0,
17543 p8pfs::Pdr,
17544 p8pfs::Pdr,
17545 P8Pfs_SPEC,
17546 crate::common::RW,
17547 >::from_register(self, 0)
17548 }
17549
17550 #[doc = "Pull-up Control"]
17551 #[inline(always)]
17552 pub fn pcr(
17553 self,
17554 ) -> crate::common::RegisterField<
17555 4,
17556 0x1,
17557 1,
17558 0,
17559 p8pfs::Pcr,
17560 p8pfs::Pcr,
17561 P8Pfs_SPEC,
17562 crate::common::RW,
17563 > {
17564 crate::common::RegisterField::<
17565 4,
17566 0x1,
17567 1,
17568 0,
17569 p8pfs::Pcr,
17570 p8pfs::Pcr,
17571 P8Pfs_SPEC,
17572 crate::common::RW,
17573 >::from_register(self, 0)
17574 }
17575
17576 #[doc = "N-Channel Open-Drain Control"]
17577 #[inline(always)]
17578 pub fn ncodr(
17579 self,
17580 ) -> crate::common::RegisterField<
17581 6,
17582 0x1,
17583 1,
17584 0,
17585 p8pfs::Ncodr,
17586 p8pfs::Ncodr,
17587 P8Pfs_SPEC,
17588 crate::common::RW,
17589 > {
17590 crate::common::RegisterField::<
17591 6,
17592 0x1,
17593 1,
17594 0,
17595 p8pfs::Ncodr,
17596 p8pfs::Ncodr,
17597 P8Pfs_SPEC,
17598 crate::common::RW,
17599 >::from_register(self, 0)
17600 }
17601
17602 #[doc = "Port Drive Capability"]
17603 #[inline(always)]
17604 pub fn dscr(
17605 self,
17606 ) -> crate::common::RegisterField<
17607 10,
17608 0x3,
17609 1,
17610 0,
17611 p8pfs::Dscr,
17612 p8pfs::Dscr,
17613 P8Pfs_SPEC,
17614 crate::common::RW,
17615 > {
17616 crate::common::RegisterField::<
17617 10,
17618 0x3,
17619 1,
17620 0,
17621 p8pfs::Dscr,
17622 p8pfs::Dscr,
17623 P8Pfs_SPEC,
17624 crate::common::RW,
17625 >::from_register(self, 0)
17626 }
17627
17628 #[doc = "Event on Falling/Event on Rising"]
17629 #[inline(always)]
17630 pub fn eofr(
17631 self,
17632 ) -> crate::common::RegisterField<
17633 12,
17634 0x3,
17635 1,
17636 0,
17637 p8pfs::Eofr,
17638 p8pfs::Eofr,
17639 P8Pfs_SPEC,
17640 crate::common::RW,
17641 > {
17642 crate::common::RegisterField::<
17643 12,
17644 0x3,
17645 1,
17646 0,
17647 p8pfs::Eofr,
17648 p8pfs::Eofr,
17649 P8Pfs_SPEC,
17650 crate::common::RW,
17651 >::from_register(self, 0)
17652 }
17653
17654 #[doc = "IRQ Input Enable"]
17655 #[inline(always)]
17656 pub fn isel(
17657 self,
17658 ) -> crate::common::RegisterField<
17659 14,
17660 0x1,
17661 1,
17662 0,
17663 p8pfs::Isel,
17664 p8pfs::Isel,
17665 P8Pfs_SPEC,
17666 crate::common::RW,
17667 > {
17668 crate::common::RegisterField::<
17669 14,
17670 0x1,
17671 1,
17672 0,
17673 p8pfs::Isel,
17674 p8pfs::Isel,
17675 P8Pfs_SPEC,
17676 crate::common::RW,
17677 >::from_register(self, 0)
17678 }
17679
17680 #[doc = "Analog Input Enable"]
17681 #[inline(always)]
17682 pub fn asel(
17683 self,
17684 ) -> crate::common::RegisterField<
17685 15,
17686 0x1,
17687 1,
17688 0,
17689 p8pfs::Asel,
17690 p8pfs::Asel,
17691 P8Pfs_SPEC,
17692 crate::common::RW,
17693 > {
17694 crate::common::RegisterField::<
17695 15,
17696 0x1,
17697 1,
17698 0,
17699 p8pfs::Asel,
17700 p8pfs::Asel,
17701 P8Pfs_SPEC,
17702 crate::common::RW,
17703 >::from_register(self, 0)
17704 }
17705
17706 #[doc = "Port Mode Control"]
17707 #[inline(always)]
17708 pub fn pmr(
17709 self,
17710 ) -> crate::common::RegisterField<
17711 16,
17712 0x1,
17713 1,
17714 0,
17715 p8pfs::Pmr,
17716 p8pfs::Pmr,
17717 P8Pfs_SPEC,
17718 crate::common::RW,
17719 > {
17720 crate::common::RegisterField::<
17721 16,
17722 0x1,
17723 1,
17724 0,
17725 p8pfs::Pmr,
17726 p8pfs::Pmr,
17727 P8Pfs_SPEC,
17728 crate::common::RW,
17729 >::from_register(self, 0)
17730 }
17731
17732 #[doc = "Peripheral Select"]
17733 #[inline(always)]
17734 pub fn psel(
17735 self,
17736 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P8Pfs_SPEC, crate::common::RW> {
17737 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P8Pfs_SPEC,crate::common::RW>::from_register(self,0)
17738 }
17739}
17740impl ::core::default::Default for P8Pfs {
17741 #[inline(always)]
17742 fn default() -> P8Pfs {
17743 <crate::RegValueT<P8Pfs_SPEC> as RegisterValue<_>>::new(318832640)
17744 }
17745}
17746pub mod p8pfs {
17747
17748 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17749 pub struct Podr_SPEC;
17750 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
17751 impl Podr {
17752 #[doc = "Low output"]
17753 pub const _0: Self = Self::new(0);
17754
17755 #[doc = "High output"]
17756 pub const _1: Self = Self::new(1);
17757 }
17758 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17759 pub struct Pidr_SPEC;
17760 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
17761 impl Pidr {
17762 #[doc = "Low level"]
17763 pub const _0: Self = Self::new(0);
17764
17765 #[doc = "High level"]
17766 pub const _1: Self = Self::new(1);
17767 }
17768 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17769 pub struct Pdr_SPEC;
17770 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
17771 impl Pdr {
17772 #[doc = "Input (functions as an input pin)"]
17773 pub const _0: Self = Self::new(0);
17774
17775 #[doc = "Output (functions as an output pin)"]
17776 pub const _1: Self = Self::new(1);
17777 }
17778 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17779 pub struct Pcr_SPEC;
17780 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
17781 impl Pcr {
17782 #[doc = "Disable input pull-up"]
17783 pub const _0: Self = Self::new(0);
17784
17785 #[doc = "Enable input pull-up"]
17786 pub const _1: Self = Self::new(1);
17787 }
17788 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17789 pub struct Ncodr_SPEC;
17790 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
17791 impl Ncodr {
17792 #[doc = "CMOS output"]
17793 pub const _0: Self = Self::new(0);
17794
17795 #[doc = "NMOS open-drain output"]
17796 pub const _1: Self = Self::new(1);
17797 }
17798 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17799 pub struct Dscr_SPEC;
17800 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
17801 impl Dscr {
17802 #[doc = "Low drive"]
17803 pub const _00: Self = Self::new(0);
17804
17805 #[doc = "Middle drive"]
17806 pub const _01: Self = Self::new(1);
17807
17808 #[doc = "High-speed high-drive"]
17809 pub const _10: Self = Self::new(2);
17810
17811 #[doc = "High drive"]
17812 pub const _11: Self = Self::new(3);
17813 }
17814 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17815 pub struct Eofr_SPEC;
17816 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
17817 impl Eofr {
17818 #[doc = "Don\'t care"]
17819 pub const _00: Self = Self::new(0);
17820
17821 #[doc = "Detect rising edge"]
17822 pub const _01: Self = Self::new(1);
17823
17824 #[doc = "Detect falling edge"]
17825 pub const _10: Self = Self::new(2);
17826
17827 #[doc = "Detect both edges"]
17828 pub const _11: Self = Self::new(3);
17829 }
17830 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17831 pub struct Isel_SPEC;
17832 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
17833 impl Isel {
17834 #[doc = "Not used as an IRQn input pin"]
17835 pub const _0: Self = Self::new(0);
17836
17837 #[doc = "Used as an IRQn input pin"]
17838 pub const _1: Self = Self::new(1);
17839 }
17840 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17841 pub struct Asel_SPEC;
17842 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
17843 impl Asel {
17844 #[doc = "Not used as an analog pin"]
17845 pub const _0: Self = Self::new(0);
17846
17847 #[doc = "Used as an analog pin"]
17848 pub const _1: Self = Self::new(1);
17849 }
17850 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17851 pub struct Pmr_SPEC;
17852 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
17853 impl Pmr {
17854 #[doc = "Used as a general I/O pin"]
17855 pub const _0: Self = Self::new(0);
17856
17857 #[doc = "Used as an I/O port for peripheral functions"]
17858 pub const _1: Self = Self::new(1);
17859 }
17860}
17861#[doc(hidden)]
17862#[derive(Copy, Clone, Eq, PartialEq)]
17863pub struct P8PfsHa_SPEC;
17864impl crate::sealed::RegSpec for P8PfsHa_SPEC {
17865 type DataType = u16;
17866}
17867
17868#[doc = "Port 8%s Pin Function Select Register"]
17869pub type P8PfsHa = crate::RegValueT<P8PfsHa_SPEC>;
17870
17871impl P8PfsHa {
17872 #[doc = "Port Mode Control"]
17873 #[inline(always)]
17874 pub fn pmr(
17875 self,
17876 ) -> crate::common::RegisterField<
17877 0,
17878 0x1,
17879 1,
17880 0,
17881 p8pfs_ha::Pmr,
17882 p8pfs_ha::Pmr,
17883 P8PfsHa_SPEC,
17884 crate::common::RW,
17885 > {
17886 crate::common::RegisterField::<
17887 0,
17888 0x1,
17889 1,
17890 0,
17891 p8pfs_ha::Pmr,
17892 p8pfs_ha::Pmr,
17893 P8PfsHa_SPEC,
17894 crate::common::RW,
17895 >::from_register(self, 0)
17896 }
17897
17898 #[doc = "Peripheral Select"]
17899 #[inline(always)]
17900 pub fn psel(
17901 self,
17902 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P8PfsHa_SPEC, crate::common::RW> {
17903 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P8PfsHa_SPEC,crate::common::RW>::from_register(self,0)
17904 }
17905}
17906impl ::core::default::Default for P8PfsHa {
17907 #[inline(always)]
17908 fn default() -> P8PfsHa {
17909 <crate::RegValueT<P8PfsHa_SPEC> as RegisterValue<_>>::new(4865)
17910 }
17911}
17912pub mod p8pfs_ha {
17913
17914 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
17915 pub struct Pmr_SPEC;
17916 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
17917 impl Pmr {
17918 #[doc = "Used as a general I/O pin"]
17919 pub const _0: Self = Self::new(0);
17920
17921 #[doc = "Used as an I/O port for peripheral functions"]
17922 pub const _1: Self = Self::new(1);
17923 }
17924}
17925#[doc(hidden)]
17926#[derive(Copy, Clone, Eq, PartialEq)]
17927pub struct P8PfsBy_SPEC;
17928impl crate::sealed::RegSpec for P8PfsBy_SPEC {
17929 type DataType = u8;
17930}
17931
17932#[doc = "Port 8%s Pin Function Select Register"]
17933pub type P8PfsBy = crate::RegValueT<P8PfsBy_SPEC>;
17934
17935impl P8PfsBy {
17936 #[doc = "Peripheral Select"]
17937 #[inline(always)]
17938 pub fn psel(
17939 self,
17940 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P8PfsBy_SPEC, crate::common::RW> {
17941 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P8PfsBy_SPEC,crate::common::RW>::from_register(self,0)
17942 }
17943}
17944impl ::core::default::Default for P8PfsBy {
17945 #[inline(always)]
17946 fn default() -> P8PfsBy {
17947 <crate::RegValueT<P8PfsBy_SPEC> as RegisterValue<_>>::new(19)
17948 }
17949}
17950
17951#[doc(hidden)]
17952#[derive(Copy, Clone, Eq, PartialEq)]
17953pub struct P90Pfs_SPEC;
17954impl crate::sealed::RegSpec for P90Pfs_SPEC {
17955 type DataType = u32;
17956}
17957
17958#[doc = "Port 90%s Pin Function Select Register"]
17959pub type P90Pfs = crate::RegValueT<P90Pfs_SPEC>;
17960
17961impl P90Pfs {
17962 #[doc = "Port Output Data"]
17963 #[inline(always)]
17964 pub fn podr(
17965 self,
17966 ) -> crate::common::RegisterField<
17967 0,
17968 0x1,
17969 1,
17970 0,
17971 p90pfs::Podr,
17972 p90pfs::Podr,
17973 P90Pfs_SPEC,
17974 crate::common::RW,
17975 > {
17976 crate::common::RegisterField::<
17977 0,
17978 0x1,
17979 1,
17980 0,
17981 p90pfs::Podr,
17982 p90pfs::Podr,
17983 P90Pfs_SPEC,
17984 crate::common::RW,
17985 >::from_register(self, 0)
17986 }
17987
17988 #[doc = "Pmn State"]
17989 #[inline(always)]
17990 pub fn pidr(
17991 self,
17992 ) -> crate::common::RegisterField<
17993 1,
17994 0x1,
17995 1,
17996 0,
17997 p90pfs::Pidr,
17998 p90pfs::Pidr,
17999 P90Pfs_SPEC,
18000 crate::common::R,
18001 > {
18002 crate::common::RegisterField::<
18003 1,
18004 0x1,
18005 1,
18006 0,
18007 p90pfs::Pidr,
18008 p90pfs::Pidr,
18009 P90Pfs_SPEC,
18010 crate::common::R,
18011 >::from_register(self, 0)
18012 }
18013
18014 #[doc = "Port Direction"]
18015 #[inline(always)]
18016 pub fn pdr(
18017 self,
18018 ) -> crate::common::RegisterField<
18019 2,
18020 0x1,
18021 1,
18022 0,
18023 p90pfs::Pdr,
18024 p90pfs::Pdr,
18025 P90Pfs_SPEC,
18026 crate::common::RW,
18027 > {
18028 crate::common::RegisterField::<
18029 2,
18030 0x1,
18031 1,
18032 0,
18033 p90pfs::Pdr,
18034 p90pfs::Pdr,
18035 P90Pfs_SPEC,
18036 crate::common::RW,
18037 >::from_register(self, 0)
18038 }
18039
18040 #[doc = "Pull-up Control"]
18041 #[inline(always)]
18042 pub fn pcr(
18043 self,
18044 ) -> crate::common::RegisterField<
18045 4,
18046 0x1,
18047 1,
18048 0,
18049 p90pfs::Pcr,
18050 p90pfs::Pcr,
18051 P90Pfs_SPEC,
18052 crate::common::RW,
18053 > {
18054 crate::common::RegisterField::<
18055 4,
18056 0x1,
18057 1,
18058 0,
18059 p90pfs::Pcr,
18060 p90pfs::Pcr,
18061 P90Pfs_SPEC,
18062 crate::common::RW,
18063 >::from_register(self, 0)
18064 }
18065
18066 #[doc = "N-Channel Open-Drain Control"]
18067 #[inline(always)]
18068 pub fn ncodr(
18069 self,
18070 ) -> crate::common::RegisterField<
18071 6,
18072 0x1,
18073 1,
18074 0,
18075 p90pfs::Ncodr,
18076 p90pfs::Ncodr,
18077 P90Pfs_SPEC,
18078 crate::common::RW,
18079 > {
18080 crate::common::RegisterField::<
18081 6,
18082 0x1,
18083 1,
18084 0,
18085 p90pfs::Ncodr,
18086 p90pfs::Ncodr,
18087 P90Pfs_SPEC,
18088 crate::common::RW,
18089 >::from_register(self, 0)
18090 }
18091
18092 #[doc = "Port Drive Capability"]
18093 #[inline(always)]
18094 pub fn dscr(
18095 self,
18096 ) -> crate::common::RegisterField<
18097 10,
18098 0x3,
18099 1,
18100 0,
18101 p90pfs::Dscr,
18102 p90pfs::Dscr,
18103 P90Pfs_SPEC,
18104 crate::common::RW,
18105 > {
18106 crate::common::RegisterField::<
18107 10,
18108 0x3,
18109 1,
18110 0,
18111 p90pfs::Dscr,
18112 p90pfs::Dscr,
18113 P90Pfs_SPEC,
18114 crate::common::RW,
18115 >::from_register(self, 0)
18116 }
18117
18118 #[doc = "Event on Falling/Event on Rising"]
18119 #[inline(always)]
18120 pub fn eofr(
18121 self,
18122 ) -> crate::common::RegisterField<
18123 12,
18124 0x3,
18125 1,
18126 0,
18127 p90pfs::Eofr,
18128 p90pfs::Eofr,
18129 P90Pfs_SPEC,
18130 crate::common::RW,
18131 > {
18132 crate::common::RegisterField::<
18133 12,
18134 0x3,
18135 1,
18136 0,
18137 p90pfs::Eofr,
18138 p90pfs::Eofr,
18139 P90Pfs_SPEC,
18140 crate::common::RW,
18141 >::from_register(self, 0)
18142 }
18143
18144 #[doc = "IRQ Input Enable"]
18145 #[inline(always)]
18146 pub fn isel(
18147 self,
18148 ) -> crate::common::RegisterField<
18149 14,
18150 0x1,
18151 1,
18152 0,
18153 p90pfs::Isel,
18154 p90pfs::Isel,
18155 P90Pfs_SPEC,
18156 crate::common::RW,
18157 > {
18158 crate::common::RegisterField::<
18159 14,
18160 0x1,
18161 1,
18162 0,
18163 p90pfs::Isel,
18164 p90pfs::Isel,
18165 P90Pfs_SPEC,
18166 crate::common::RW,
18167 >::from_register(self, 0)
18168 }
18169
18170 #[doc = "Analog Input Enable"]
18171 #[inline(always)]
18172 pub fn asel(
18173 self,
18174 ) -> crate::common::RegisterField<
18175 15,
18176 0x1,
18177 1,
18178 0,
18179 p90pfs::Asel,
18180 p90pfs::Asel,
18181 P90Pfs_SPEC,
18182 crate::common::RW,
18183 > {
18184 crate::common::RegisterField::<
18185 15,
18186 0x1,
18187 1,
18188 0,
18189 p90pfs::Asel,
18190 p90pfs::Asel,
18191 P90Pfs_SPEC,
18192 crate::common::RW,
18193 >::from_register(self, 0)
18194 }
18195
18196 #[doc = "Port Mode Control"]
18197 #[inline(always)]
18198 pub fn pmr(
18199 self,
18200 ) -> crate::common::RegisterField<
18201 16,
18202 0x1,
18203 1,
18204 0,
18205 p90pfs::Pmr,
18206 p90pfs::Pmr,
18207 P90Pfs_SPEC,
18208 crate::common::RW,
18209 > {
18210 crate::common::RegisterField::<
18211 16,
18212 0x1,
18213 1,
18214 0,
18215 p90pfs::Pmr,
18216 p90pfs::Pmr,
18217 P90Pfs_SPEC,
18218 crate::common::RW,
18219 >::from_register(self, 0)
18220 }
18221
18222 #[doc = "Peripheral Select"]
18223 #[inline(always)]
18224 pub fn psel(
18225 self,
18226 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P90Pfs_SPEC, crate::common::RW> {
18227 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P90Pfs_SPEC,crate::common::RW>::from_register(self,0)
18228 }
18229}
18230impl ::core::default::Default for P90Pfs {
18231 #[inline(always)]
18232 fn default() -> P90Pfs {
18233 <crate::RegValueT<P90Pfs_SPEC> as RegisterValue<_>>::new(0)
18234 }
18235}
18236pub mod p90pfs {
18237
18238 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18239 pub struct Podr_SPEC;
18240 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
18241 impl Podr {
18242 #[doc = "Low output"]
18243 pub const _0: Self = Self::new(0);
18244
18245 #[doc = "High output"]
18246 pub const _1: Self = Self::new(1);
18247 }
18248 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18249 pub struct Pidr_SPEC;
18250 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
18251 impl Pidr {
18252 #[doc = "Low level"]
18253 pub const _0: Self = Self::new(0);
18254
18255 #[doc = "High level"]
18256 pub const _1: Self = Self::new(1);
18257 }
18258 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18259 pub struct Pdr_SPEC;
18260 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
18261 impl Pdr {
18262 #[doc = "Input (functions as an input pin)"]
18263 pub const _0: Self = Self::new(0);
18264
18265 #[doc = "Output (functions as an output pin)"]
18266 pub const _1: Self = Self::new(1);
18267 }
18268 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18269 pub struct Pcr_SPEC;
18270 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
18271 impl Pcr {
18272 #[doc = "Disable input pull-up"]
18273 pub const _0: Self = Self::new(0);
18274
18275 #[doc = "Enable input pull-up"]
18276 pub const _1: Self = Self::new(1);
18277 }
18278 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18279 pub struct Ncodr_SPEC;
18280 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
18281 impl Ncodr {
18282 #[doc = "CMOS output"]
18283 pub const _0: Self = Self::new(0);
18284
18285 #[doc = "NMOS open-drain output"]
18286 pub const _1: Self = Self::new(1);
18287 }
18288 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18289 pub struct Dscr_SPEC;
18290 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
18291 impl Dscr {
18292 #[doc = "Low drive"]
18293 pub const _00: Self = Self::new(0);
18294
18295 #[doc = "Middle drive"]
18296 pub const _01: Self = Self::new(1);
18297
18298 #[doc = "High-speed high-drive"]
18299 pub const _10: Self = Self::new(2);
18300
18301 #[doc = "High drive"]
18302 pub const _11: Self = Self::new(3);
18303 }
18304 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18305 pub struct Eofr_SPEC;
18306 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
18307 impl Eofr {
18308 #[doc = "Don\'t care"]
18309 pub const _00: Self = Self::new(0);
18310
18311 #[doc = "Detect rising edge"]
18312 pub const _01: Self = Self::new(1);
18313
18314 #[doc = "Detect falling edge"]
18315 pub const _10: Self = Self::new(2);
18316
18317 #[doc = "Detect both edges"]
18318 pub const _11: Self = Self::new(3);
18319 }
18320 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18321 pub struct Isel_SPEC;
18322 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
18323 impl Isel {
18324 #[doc = "Not used as an IRQn input pin"]
18325 pub const _0: Self = Self::new(0);
18326
18327 #[doc = "Used as an IRQn input pin"]
18328 pub const _1: Self = Self::new(1);
18329 }
18330 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18331 pub struct Asel_SPEC;
18332 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
18333 impl Asel {
18334 #[doc = "Not used as an analog pin"]
18335 pub const _0: Self = Self::new(0);
18336
18337 #[doc = "Used as an analog pin"]
18338 pub const _1: Self = Self::new(1);
18339 }
18340 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18341 pub struct Pmr_SPEC;
18342 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
18343 impl Pmr {
18344 #[doc = "Used as a general I/O pin"]
18345 pub const _0: Self = Self::new(0);
18346
18347 #[doc = "Used as an I/O port for peripheral functions"]
18348 pub const _1: Self = Self::new(1);
18349 }
18350}
18351#[doc(hidden)]
18352#[derive(Copy, Clone, Eq, PartialEq)]
18353pub struct P90PfsHa_SPEC;
18354impl crate::sealed::RegSpec for P90PfsHa_SPEC {
18355 type DataType = u16;
18356}
18357
18358#[doc = "Port 90%s Pin Function Select Register"]
18359pub type P90PfsHa = crate::RegValueT<P90PfsHa_SPEC>;
18360
18361impl P90PfsHa {
18362 #[doc = "Port Mode Control"]
18363 #[inline(always)]
18364 pub fn pmr(
18365 self,
18366 ) -> crate::common::RegisterField<
18367 0,
18368 0x1,
18369 1,
18370 0,
18371 p90pfs_ha::Pmr,
18372 p90pfs_ha::Pmr,
18373 P90PfsHa_SPEC,
18374 crate::common::RW,
18375 > {
18376 crate::common::RegisterField::<
18377 0,
18378 0x1,
18379 1,
18380 0,
18381 p90pfs_ha::Pmr,
18382 p90pfs_ha::Pmr,
18383 P90PfsHa_SPEC,
18384 crate::common::RW,
18385 >::from_register(self, 0)
18386 }
18387
18388 #[doc = "Peripheral Select"]
18389 #[inline(always)]
18390 pub fn psel(
18391 self,
18392 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P90PfsHa_SPEC, crate::common::RW> {
18393 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P90PfsHa_SPEC,crate::common::RW>::from_register(self,0)
18394 }
18395}
18396impl ::core::default::Default for P90PfsHa {
18397 #[inline(always)]
18398 fn default() -> P90PfsHa {
18399 <crate::RegValueT<P90PfsHa_SPEC> as RegisterValue<_>>::new(0)
18400 }
18401}
18402pub mod p90pfs_ha {
18403
18404 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18405 pub struct Pmr_SPEC;
18406 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
18407 impl Pmr {
18408 #[doc = "Used as a general I/O pin"]
18409 pub const _0: Self = Self::new(0);
18410
18411 #[doc = "Used as an I/O port for peripheral functions"]
18412 pub const _1: Self = Self::new(1);
18413 }
18414}
18415#[doc(hidden)]
18416#[derive(Copy, Clone, Eq, PartialEq)]
18417pub struct P90PfsBy_SPEC;
18418impl crate::sealed::RegSpec for P90PfsBy_SPEC {
18419 type DataType = u8;
18420}
18421
18422#[doc = "Port 90%s Pin Function Select Register"]
18423pub type P90PfsBy = crate::RegValueT<P90PfsBy_SPEC>;
18424
18425impl P90PfsBy {
18426 #[doc = "Peripheral Select"]
18427 #[inline(always)]
18428 pub fn psel(
18429 self,
18430 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P90PfsBy_SPEC, crate::common::RW> {
18431 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P90PfsBy_SPEC,crate::common::RW>::from_register(self,0)
18432 }
18433}
18434impl ::core::default::Default for P90PfsBy {
18435 #[inline(always)]
18436 fn default() -> P90PfsBy {
18437 <crate::RegValueT<P90PfsBy_SPEC> as RegisterValue<_>>::new(0)
18438 }
18439}
18440
18441#[doc(hidden)]
18442#[derive(Copy, Clone, Eq, PartialEq)]
18443pub struct P9Pfs_SPEC;
18444impl crate::sealed::RegSpec for P9Pfs_SPEC {
18445 type DataType = u32;
18446}
18447
18448#[doc = "Port 9%s Pin Function Select Register"]
18449pub type P9Pfs = crate::RegValueT<P9Pfs_SPEC>;
18450
18451impl P9Pfs {
18452 #[doc = "Port Output Data"]
18453 #[inline(always)]
18454 pub fn podr(
18455 self,
18456 ) -> crate::common::RegisterField<
18457 0,
18458 0x1,
18459 1,
18460 0,
18461 p9pfs::Podr,
18462 p9pfs::Podr,
18463 P9Pfs_SPEC,
18464 crate::common::RW,
18465 > {
18466 crate::common::RegisterField::<
18467 0,
18468 0x1,
18469 1,
18470 0,
18471 p9pfs::Podr,
18472 p9pfs::Podr,
18473 P9Pfs_SPEC,
18474 crate::common::RW,
18475 >::from_register(self, 0)
18476 }
18477
18478 #[doc = "Pmn State"]
18479 #[inline(always)]
18480 pub fn pidr(
18481 self,
18482 ) -> crate::common::RegisterField<
18483 1,
18484 0x1,
18485 1,
18486 0,
18487 p9pfs::Pidr,
18488 p9pfs::Pidr,
18489 P9Pfs_SPEC,
18490 crate::common::R,
18491 > {
18492 crate::common::RegisterField::<
18493 1,
18494 0x1,
18495 1,
18496 0,
18497 p9pfs::Pidr,
18498 p9pfs::Pidr,
18499 P9Pfs_SPEC,
18500 crate::common::R,
18501 >::from_register(self, 0)
18502 }
18503
18504 #[doc = "Port Direction"]
18505 #[inline(always)]
18506 pub fn pdr(
18507 self,
18508 ) -> crate::common::RegisterField<
18509 2,
18510 0x1,
18511 1,
18512 0,
18513 p9pfs::Pdr,
18514 p9pfs::Pdr,
18515 P9Pfs_SPEC,
18516 crate::common::RW,
18517 > {
18518 crate::common::RegisterField::<
18519 2,
18520 0x1,
18521 1,
18522 0,
18523 p9pfs::Pdr,
18524 p9pfs::Pdr,
18525 P9Pfs_SPEC,
18526 crate::common::RW,
18527 >::from_register(self, 0)
18528 }
18529
18530 #[doc = "Pull-up Control"]
18531 #[inline(always)]
18532 pub fn pcr(
18533 self,
18534 ) -> crate::common::RegisterField<
18535 4,
18536 0x1,
18537 1,
18538 0,
18539 p9pfs::Pcr,
18540 p9pfs::Pcr,
18541 P9Pfs_SPEC,
18542 crate::common::RW,
18543 > {
18544 crate::common::RegisterField::<
18545 4,
18546 0x1,
18547 1,
18548 0,
18549 p9pfs::Pcr,
18550 p9pfs::Pcr,
18551 P9Pfs_SPEC,
18552 crate::common::RW,
18553 >::from_register(self, 0)
18554 }
18555
18556 #[doc = "N-Channel Open-Drain Control"]
18557 #[inline(always)]
18558 pub fn ncodr(
18559 self,
18560 ) -> crate::common::RegisterField<
18561 6,
18562 0x1,
18563 1,
18564 0,
18565 p9pfs::Ncodr,
18566 p9pfs::Ncodr,
18567 P9Pfs_SPEC,
18568 crate::common::RW,
18569 > {
18570 crate::common::RegisterField::<
18571 6,
18572 0x1,
18573 1,
18574 0,
18575 p9pfs::Ncodr,
18576 p9pfs::Ncodr,
18577 P9Pfs_SPEC,
18578 crate::common::RW,
18579 >::from_register(self, 0)
18580 }
18581
18582 #[doc = "Port Drive Capability"]
18583 #[inline(always)]
18584 pub fn dscr(
18585 self,
18586 ) -> crate::common::RegisterField<
18587 10,
18588 0x3,
18589 1,
18590 0,
18591 p9pfs::Dscr,
18592 p9pfs::Dscr,
18593 P9Pfs_SPEC,
18594 crate::common::RW,
18595 > {
18596 crate::common::RegisterField::<
18597 10,
18598 0x3,
18599 1,
18600 0,
18601 p9pfs::Dscr,
18602 p9pfs::Dscr,
18603 P9Pfs_SPEC,
18604 crate::common::RW,
18605 >::from_register(self, 0)
18606 }
18607
18608 #[doc = "Event on Falling/Event on Rising"]
18609 #[inline(always)]
18610 pub fn eofr(
18611 self,
18612 ) -> crate::common::RegisterField<
18613 12,
18614 0x3,
18615 1,
18616 0,
18617 p9pfs::Eofr,
18618 p9pfs::Eofr,
18619 P9Pfs_SPEC,
18620 crate::common::RW,
18621 > {
18622 crate::common::RegisterField::<
18623 12,
18624 0x3,
18625 1,
18626 0,
18627 p9pfs::Eofr,
18628 p9pfs::Eofr,
18629 P9Pfs_SPEC,
18630 crate::common::RW,
18631 >::from_register(self, 0)
18632 }
18633
18634 #[doc = "IRQ Input Enable"]
18635 #[inline(always)]
18636 pub fn isel(
18637 self,
18638 ) -> crate::common::RegisterField<
18639 14,
18640 0x1,
18641 1,
18642 0,
18643 p9pfs::Isel,
18644 p9pfs::Isel,
18645 P9Pfs_SPEC,
18646 crate::common::RW,
18647 > {
18648 crate::common::RegisterField::<
18649 14,
18650 0x1,
18651 1,
18652 0,
18653 p9pfs::Isel,
18654 p9pfs::Isel,
18655 P9Pfs_SPEC,
18656 crate::common::RW,
18657 >::from_register(self, 0)
18658 }
18659
18660 #[doc = "Analog Input Enable"]
18661 #[inline(always)]
18662 pub fn asel(
18663 self,
18664 ) -> crate::common::RegisterField<
18665 15,
18666 0x1,
18667 1,
18668 0,
18669 p9pfs::Asel,
18670 p9pfs::Asel,
18671 P9Pfs_SPEC,
18672 crate::common::RW,
18673 > {
18674 crate::common::RegisterField::<
18675 15,
18676 0x1,
18677 1,
18678 0,
18679 p9pfs::Asel,
18680 p9pfs::Asel,
18681 P9Pfs_SPEC,
18682 crate::common::RW,
18683 >::from_register(self, 0)
18684 }
18685
18686 #[doc = "Port Mode Control"]
18687 #[inline(always)]
18688 pub fn pmr(
18689 self,
18690 ) -> crate::common::RegisterField<
18691 16,
18692 0x1,
18693 1,
18694 0,
18695 p9pfs::Pmr,
18696 p9pfs::Pmr,
18697 P9Pfs_SPEC,
18698 crate::common::RW,
18699 > {
18700 crate::common::RegisterField::<
18701 16,
18702 0x1,
18703 1,
18704 0,
18705 p9pfs::Pmr,
18706 p9pfs::Pmr,
18707 P9Pfs_SPEC,
18708 crate::common::RW,
18709 >::from_register(self, 0)
18710 }
18711
18712 #[doc = "Peripheral Select"]
18713 #[inline(always)]
18714 pub fn psel(
18715 self,
18716 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, P9Pfs_SPEC, crate::common::RW> {
18717 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,P9Pfs_SPEC,crate::common::RW>::from_register(self,0)
18718 }
18719}
18720impl ::core::default::Default for P9Pfs {
18721 #[inline(always)]
18722 fn default() -> P9Pfs {
18723 <crate::RegValueT<P9Pfs_SPEC> as RegisterValue<_>>::new(0)
18724 }
18725}
18726pub mod p9pfs {
18727
18728 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18729 pub struct Podr_SPEC;
18730 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
18731 impl Podr {
18732 #[doc = "Low output"]
18733 pub const _0: Self = Self::new(0);
18734
18735 #[doc = "High output"]
18736 pub const _1: Self = Self::new(1);
18737 }
18738 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18739 pub struct Pidr_SPEC;
18740 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
18741 impl Pidr {
18742 #[doc = "Low level"]
18743 pub const _0: Self = Self::new(0);
18744
18745 #[doc = "High level"]
18746 pub const _1: Self = Self::new(1);
18747 }
18748 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18749 pub struct Pdr_SPEC;
18750 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
18751 impl Pdr {
18752 #[doc = "Input (functions as an input pin)"]
18753 pub const _0: Self = Self::new(0);
18754
18755 #[doc = "Output (functions as an output pin)"]
18756 pub const _1: Self = Self::new(1);
18757 }
18758 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18759 pub struct Pcr_SPEC;
18760 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
18761 impl Pcr {
18762 #[doc = "Disable input pull-up"]
18763 pub const _0: Self = Self::new(0);
18764
18765 #[doc = "Enable input pull-up"]
18766 pub const _1: Self = Self::new(1);
18767 }
18768 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18769 pub struct Ncodr_SPEC;
18770 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
18771 impl Ncodr {
18772 #[doc = "CMOS output"]
18773 pub const _0: Self = Self::new(0);
18774
18775 #[doc = "NMOS open-drain output"]
18776 pub const _1: Self = Self::new(1);
18777 }
18778 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18779 pub struct Dscr_SPEC;
18780 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
18781 impl Dscr {
18782 #[doc = "Low drive"]
18783 pub const _00: Self = Self::new(0);
18784
18785 #[doc = "Middle drive"]
18786 pub const _01: Self = Self::new(1);
18787
18788 #[doc = "High-speed high-drive"]
18789 pub const _10: Self = Self::new(2);
18790
18791 #[doc = "High drive"]
18792 pub const _11: Self = Self::new(3);
18793 }
18794 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18795 pub struct Eofr_SPEC;
18796 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
18797 impl Eofr {
18798 #[doc = "Don\'t care"]
18799 pub const _00: Self = Self::new(0);
18800
18801 #[doc = "Detect rising edge"]
18802 pub const _01: Self = Self::new(1);
18803
18804 #[doc = "Detect falling edge"]
18805 pub const _10: Self = Self::new(2);
18806
18807 #[doc = "Detect both edges"]
18808 pub const _11: Self = Self::new(3);
18809 }
18810 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18811 pub struct Isel_SPEC;
18812 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
18813 impl Isel {
18814 #[doc = "Not used as an IRQn input pin"]
18815 pub const _0: Self = Self::new(0);
18816
18817 #[doc = "Used as an IRQn input pin"]
18818 pub const _1: Self = Self::new(1);
18819 }
18820 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18821 pub struct Asel_SPEC;
18822 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
18823 impl Asel {
18824 #[doc = "Not used as an analog pin"]
18825 pub const _0: Self = Self::new(0);
18826
18827 #[doc = "Used as an analog pin"]
18828 pub const _1: Self = Self::new(1);
18829 }
18830 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18831 pub struct Pmr_SPEC;
18832 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
18833 impl Pmr {
18834 #[doc = "Used as a general I/O pin"]
18835 pub const _0: Self = Self::new(0);
18836
18837 #[doc = "Used as an I/O port for peripheral functions"]
18838 pub const _1: Self = Self::new(1);
18839 }
18840}
18841#[doc(hidden)]
18842#[derive(Copy, Clone, Eq, PartialEq)]
18843pub struct P9PfsHa_SPEC;
18844impl crate::sealed::RegSpec for P9PfsHa_SPEC {
18845 type DataType = u16;
18846}
18847
18848#[doc = "Port 9%s Pin Function Select Register"]
18849pub type P9PfsHa = crate::RegValueT<P9PfsHa_SPEC>;
18850
18851impl P9PfsHa {
18852 #[doc = "Port Mode Control"]
18853 #[inline(always)]
18854 pub fn pmr(
18855 self,
18856 ) -> crate::common::RegisterField<
18857 0,
18858 0x1,
18859 1,
18860 0,
18861 p9pfs_ha::Pmr,
18862 p9pfs_ha::Pmr,
18863 P9PfsHa_SPEC,
18864 crate::common::RW,
18865 > {
18866 crate::common::RegisterField::<
18867 0,
18868 0x1,
18869 1,
18870 0,
18871 p9pfs_ha::Pmr,
18872 p9pfs_ha::Pmr,
18873 P9PfsHa_SPEC,
18874 crate::common::RW,
18875 >::from_register(self, 0)
18876 }
18877
18878 #[doc = "Peripheral Select"]
18879 #[inline(always)]
18880 pub fn psel(
18881 self,
18882 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, P9PfsHa_SPEC, crate::common::RW> {
18883 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,P9PfsHa_SPEC,crate::common::RW>::from_register(self,0)
18884 }
18885}
18886impl ::core::default::Default for P9PfsHa {
18887 #[inline(always)]
18888 fn default() -> P9PfsHa {
18889 <crate::RegValueT<P9PfsHa_SPEC> as RegisterValue<_>>::new(0)
18890 }
18891}
18892pub mod p9pfs_ha {
18893
18894 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
18895 pub struct Pmr_SPEC;
18896 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
18897 impl Pmr {
18898 #[doc = "Used as a general I/O pin"]
18899 pub const _0: Self = Self::new(0);
18900
18901 #[doc = "Used as an I/O port for peripheral functions"]
18902 pub const _1: Self = Self::new(1);
18903 }
18904}
18905#[doc(hidden)]
18906#[derive(Copy, Clone, Eq, PartialEq)]
18907pub struct P9PfsBy_SPEC;
18908impl crate::sealed::RegSpec for P9PfsBy_SPEC {
18909 type DataType = u8;
18910}
18911
18912#[doc = "Port 9%s Pin Function Select Register"]
18913pub type P9PfsBy = crate::RegValueT<P9PfsBy_SPEC>;
18914
18915impl P9PfsBy {
18916 #[doc = "Peripheral Select"]
18917 #[inline(always)]
18918 pub fn psel(
18919 self,
18920 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, P9PfsBy_SPEC, crate::common::RW> {
18921 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,P9PfsBy_SPEC,crate::common::RW>::from_register(self,0)
18922 }
18923}
18924impl ::core::default::Default for P9PfsBy {
18925 #[inline(always)]
18926 fn default() -> P9PfsBy {
18927 <crate::RegValueT<P9PfsBy_SPEC> as RegisterValue<_>>::new(0)
18928 }
18929}
18930
18931#[doc(hidden)]
18932#[derive(Copy, Clone, Eq, PartialEq)]
18933pub struct Pa0Pfs_SPEC;
18934impl crate::sealed::RegSpec for Pa0Pfs_SPEC {
18935 type DataType = u32;
18936}
18937
18938#[doc = "Port A0%s Pin Function Select Register"]
18939pub type Pa0Pfs = crate::RegValueT<Pa0Pfs_SPEC>;
18940
18941impl Pa0Pfs {
18942 #[doc = "Port Output Data"]
18943 #[inline(always)]
18944 pub fn podr(
18945 self,
18946 ) -> crate::common::RegisterField<
18947 0,
18948 0x1,
18949 1,
18950 0,
18951 pa0pfs::Podr,
18952 pa0pfs::Podr,
18953 Pa0Pfs_SPEC,
18954 crate::common::RW,
18955 > {
18956 crate::common::RegisterField::<
18957 0,
18958 0x1,
18959 1,
18960 0,
18961 pa0pfs::Podr,
18962 pa0pfs::Podr,
18963 Pa0Pfs_SPEC,
18964 crate::common::RW,
18965 >::from_register(self, 0)
18966 }
18967
18968 #[doc = "Pmn State"]
18969 #[inline(always)]
18970 pub fn pidr(
18971 self,
18972 ) -> crate::common::RegisterField<
18973 1,
18974 0x1,
18975 1,
18976 0,
18977 pa0pfs::Pidr,
18978 pa0pfs::Pidr,
18979 Pa0Pfs_SPEC,
18980 crate::common::R,
18981 > {
18982 crate::common::RegisterField::<
18983 1,
18984 0x1,
18985 1,
18986 0,
18987 pa0pfs::Pidr,
18988 pa0pfs::Pidr,
18989 Pa0Pfs_SPEC,
18990 crate::common::R,
18991 >::from_register(self, 0)
18992 }
18993
18994 #[doc = "Port Direction"]
18995 #[inline(always)]
18996 pub fn pdr(
18997 self,
18998 ) -> crate::common::RegisterField<
18999 2,
19000 0x1,
19001 1,
19002 0,
19003 pa0pfs::Pdr,
19004 pa0pfs::Pdr,
19005 Pa0Pfs_SPEC,
19006 crate::common::RW,
19007 > {
19008 crate::common::RegisterField::<
19009 2,
19010 0x1,
19011 1,
19012 0,
19013 pa0pfs::Pdr,
19014 pa0pfs::Pdr,
19015 Pa0Pfs_SPEC,
19016 crate::common::RW,
19017 >::from_register(self, 0)
19018 }
19019
19020 #[doc = "Pull-up Control"]
19021 #[inline(always)]
19022 pub fn pcr(
19023 self,
19024 ) -> crate::common::RegisterField<
19025 4,
19026 0x1,
19027 1,
19028 0,
19029 pa0pfs::Pcr,
19030 pa0pfs::Pcr,
19031 Pa0Pfs_SPEC,
19032 crate::common::RW,
19033 > {
19034 crate::common::RegisterField::<
19035 4,
19036 0x1,
19037 1,
19038 0,
19039 pa0pfs::Pcr,
19040 pa0pfs::Pcr,
19041 Pa0Pfs_SPEC,
19042 crate::common::RW,
19043 >::from_register(self, 0)
19044 }
19045
19046 #[doc = "N-Channel Open-Drain Control"]
19047 #[inline(always)]
19048 pub fn ncodr(
19049 self,
19050 ) -> crate::common::RegisterField<
19051 6,
19052 0x1,
19053 1,
19054 0,
19055 pa0pfs::Ncodr,
19056 pa0pfs::Ncodr,
19057 Pa0Pfs_SPEC,
19058 crate::common::RW,
19059 > {
19060 crate::common::RegisterField::<
19061 6,
19062 0x1,
19063 1,
19064 0,
19065 pa0pfs::Ncodr,
19066 pa0pfs::Ncodr,
19067 Pa0Pfs_SPEC,
19068 crate::common::RW,
19069 >::from_register(self, 0)
19070 }
19071
19072 #[doc = "Port Drive Capability"]
19073 #[inline(always)]
19074 pub fn dscr(
19075 self,
19076 ) -> crate::common::RegisterField<
19077 10,
19078 0x3,
19079 1,
19080 0,
19081 pa0pfs::Dscr,
19082 pa0pfs::Dscr,
19083 Pa0Pfs_SPEC,
19084 crate::common::RW,
19085 > {
19086 crate::common::RegisterField::<
19087 10,
19088 0x3,
19089 1,
19090 0,
19091 pa0pfs::Dscr,
19092 pa0pfs::Dscr,
19093 Pa0Pfs_SPEC,
19094 crate::common::RW,
19095 >::from_register(self, 0)
19096 }
19097
19098 #[doc = "Event on Falling/Event on Rising"]
19099 #[inline(always)]
19100 pub fn eofr(
19101 self,
19102 ) -> crate::common::RegisterField<
19103 12,
19104 0x3,
19105 1,
19106 0,
19107 pa0pfs::Eofr,
19108 pa0pfs::Eofr,
19109 Pa0Pfs_SPEC,
19110 crate::common::RW,
19111 > {
19112 crate::common::RegisterField::<
19113 12,
19114 0x3,
19115 1,
19116 0,
19117 pa0pfs::Eofr,
19118 pa0pfs::Eofr,
19119 Pa0Pfs_SPEC,
19120 crate::common::RW,
19121 >::from_register(self, 0)
19122 }
19123
19124 #[doc = "IRQ Input Enable"]
19125 #[inline(always)]
19126 pub fn isel(
19127 self,
19128 ) -> crate::common::RegisterField<
19129 14,
19130 0x1,
19131 1,
19132 0,
19133 pa0pfs::Isel,
19134 pa0pfs::Isel,
19135 Pa0Pfs_SPEC,
19136 crate::common::RW,
19137 > {
19138 crate::common::RegisterField::<
19139 14,
19140 0x1,
19141 1,
19142 0,
19143 pa0pfs::Isel,
19144 pa0pfs::Isel,
19145 Pa0Pfs_SPEC,
19146 crate::common::RW,
19147 >::from_register(self, 0)
19148 }
19149
19150 #[doc = "Analog Input Enable"]
19151 #[inline(always)]
19152 pub fn asel(
19153 self,
19154 ) -> crate::common::RegisterField<
19155 15,
19156 0x1,
19157 1,
19158 0,
19159 pa0pfs::Asel,
19160 pa0pfs::Asel,
19161 Pa0Pfs_SPEC,
19162 crate::common::RW,
19163 > {
19164 crate::common::RegisterField::<
19165 15,
19166 0x1,
19167 1,
19168 0,
19169 pa0pfs::Asel,
19170 pa0pfs::Asel,
19171 Pa0Pfs_SPEC,
19172 crate::common::RW,
19173 >::from_register(self, 0)
19174 }
19175
19176 #[doc = "Port Mode Control"]
19177 #[inline(always)]
19178 pub fn pmr(
19179 self,
19180 ) -> crate::common::RegisterField<
19181 16,
19182 0x1,
19183 1,
19184 0,
19185 pa0pfs::Pmr,
19186 pa0pfs::Pmr,
19187 Pa0Pfs_SPEC,
19188 crate::common::RW,
19189 > {
19190 crate::common::RegisterField::<
19191 16,
19192 0x1,
19193 1,
19194 0,
19195 pa0pfs::Pmr,
19196 pa0pfs::Pmr,
19197 Pa0Pfs_SPEC,
19198 crate::common::RW,
19199 >::from_register(self, 0)
19200 }
19201
19202 #[doc = "Peripheral Select"]
19203 #[inline(always)]
19204 pub fn psel(
19205 self,
19206 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, Pa0Pfs_SPEC, crate::common::RW> {
19207 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,Pa0Pfs_SPEC,crate::common::RW>::from_register(self,0)
19208 }
19209}
19210impl ::core::default::Default for Pa0Pfs {
19211 #[inline(always)]
19212 fn default() -> Pa0Pfs {
19213 <crate::RegValueT<Pa0Pfs_SPEC> as RegisterValue<_>>::new(0)
19214 }
19215}
19216pub mod pa0pfs {
19217
19218 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19219 pub struct Podr_SPEC;
19220 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
19221 impl Podr {
19222 #[doc = "Low output"]
19223 pub const _0: Self = Self::new(0);
19224
19225 #[doc = "High output"]
19226 pub const _1: Self = Self::new(1);
19227 }
19228 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19229 pub struct Pidr_SPEC;
19230 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
19231 impl Pidr {
19232 #[doc = "Low level"]
19233 pub const _0: Self = Self::new(0);
19234
19235 #[doc = "High level"]
19236 pub const _1: Self = Self::new(1);
19237 }
19238 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19239 pub struct Pdr_SPEC;
19240 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
19241 impl Pdr {
19242 #[doc = "Input (functions as an input pin)"]
19243 pub const _0: Self = Self::new(0);
19244
19245 #[doc = "Output (functions as an output pin)"]
19246 pub const _1: Self = Self::new(1);
19247 }
19248 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19249 pub struct Pcr_SPEC;
19250 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
19251 impl Pcr {
19252 #[doc = "Disable input pull-up"]
19253 pub const _0: Self = Self::new(0);
19254
19255 #[doc = "Enable input pull-up"]
19256 pub const _1: Self = Self::new(1);
19257 }
19258 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19259 pub struct Ncodr_SPEC;
19260 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
19261 impl Ncodr {
19262 #[doc = "CMOS output"]
19263 pub const _0: Self = Self::new(0);
19264
19265 #[doc = "NMOS open-drain output"]
19266 pub const _1: Self = Self::new(1);
19267 }
19268 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19269 pub struct Dscr_SPEC;
19270 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
19271 impl Dscr {
19272 #[doc = "Low drive"]
19273 pub const _00: Self = Self::new(0);
19274
19275 #[doc = "Middle drive"]
19276 pub const _01: Self = Self::new(1);
19277
19278 #[doc = "High-speed high-drive"]
19279 pub const _10: Self = Self::new(2);
19280
19281 #[doc = "High drive"]
19282 pub const _11: Self = Self::new(3);
19283 }
19284 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19285 pub struct Eofr_SPEC;
19286 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
19287 impl Eofr {
19288 #[doc = "Don\'t care"]
19289 pub const _00: Self = Self::new(0);
19290
19291 #[doc = "Detect rising edge"]
19292 pub const _01: Self = Self::new(1);
19293
19294 #[doc = "Detect falling edge"]
19295 pub const _10: Self = Self::new(2);
19296
19297 #[doc = "Detect both edges"]
19298 pub const _11: Self = Self::new(3);
19299 }
19300 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19301 pub struct Isel_SPEC;
19302 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
19303 impl Isel {
19304 #[doc = "Not used as an IRQn input pin"]
19305 pub const _0: Self = Self::new(0);
19306
19307 #[doc = "Used as an IRQn input pin"]
19308 pub const _1: Self = Self::new(1);
19309 }
19310 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19311 pub struct Asel_SPEC;
19312 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
19313 impl Asel {
19314 #[doc = "Not used as an analog pin"]
19315 pub const _0: Self = Self::new(0);
19316
19317 #[doc = "Used as an analog pin"]
19318 pub const _1: Self = Self::new(1);
19319 }
19320 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19321 pub struct Pmr_SPEC;
19322 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
19323 impl Pmr {
19324 #[doc = "Used as a general I/O pin"]
19325 pub const _0: Self = Self::new(0);
19326
19327 #[doc = "Used as an I/O port for peripheral functions"]
19328 pub const _1: Self = Self::new(1);
19329 }
19330}
19331#[doc(hidden)]
19332#[derive(Copy, Clone, Eq, PartialEq)]
19333pub struct Pa0PfsHa_SPEC;
19334impl crate::sealed::RegSpec for Pa0PfsHa_SPEC {
19335 type DataType = u16;
19336}
19337
19338#[doc = "Port A0%s Pin Function Select Register"]
19339pub type Pa0PfsHa = crate::RegValueT<Pa0PfsHa_SPEC>;
19340
19341impl Pa0PfsHa {
19342 #[doc = "Port Mode Control"]
19343 #[inline(always)]
19344 pub fn pmr(
19345 self,
19346 ) -> crate::common::RegisterField<
19347 0,
19348 0x1,
19349 1,
19350 0,
19351 pa0pfs_ha::Pmr,
19352 pa0pfs_ha::Pmr,
19353 Pa0PfsHa_SPEC,
19354 crate::common::RW,
19355 > {
19356 crate::common::RegisterField::<
19357 0,
19358 0x1,
19359 1,
19360 0,
19361 pa0pfs_ha::Pmr,
19362 pa0pfs_ha::Pmr,
19363 Pa0PfsHa_SPEC,
19364 crate::common::RW,
19365 >::from_register(self, 0)
19366 }
19367
19368 #[doc = "Peripheral Select"]
19369 #[inline(always)]
19370 pub fn psel(
19371 self,
19372 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, Pa0PfsHa_SPEC, crate::common::RW> {
19373 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,Pa0PfsHa_SPEC,crate::common::RW>::from_register(self,0)
19374 }
19375}
19376impl ::core::default::Default for Pa0PfsHa {
19377 #[inline(always)]
19378 fn default() -> Pa0PfsHa {
19379 <crate::RegValueT<Pa0PfsHa_SPEC> as RegisterValue<_>>::new(0)
19380 }
19381}
19382pub mod pa0pfs_ha {
19383
19384 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19385 pub struct Pmr_SPEC;
19386 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
19387 impl Pmr {
19388 #[doc = "Used as a general I/O pin"]
19389 pub const _0: Self = Self::new(0);
19390
19391 #[doc = "Used as an I/O port for peripheral functions"]
19392 pub const _1: Self = Self::new(1);
19393 }
19394}
19395#[doc(hidden)]
19396#[derive(Copy, Clone, Eq, PartialEq)]
19397pub struct Pa0PfsBy_SPEC;
19398impl crate::sealed::RegSpec for Pa0PfsBy_SPEC {
19399 type DataType = u8;
19400}
19401
19402#[doc = "Port A0%s Pin Function Select Register"]
19403pub type Pa0PfsBy = crate::RegValueT<Pa0PfsBy_SPEC>;
19404
19405impl Pa0PfsBy {
19406 #[doc = "Peripheral Select"]
19407 #[inline(always)]
19408 pub fn psel(
19409 self,
19410 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Pa0PfsBy_SPEC, crate::common::RW> {
19411 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Pa0PfsBy_SPEC,crate::common::RW>::from_register(self,0)
19412 }
19413}
19414impl ::core::default::Default for Pa0PfsBy {
19415 #[inline(always)]
19416 fn default() -> Pa0PfsBy {
19417 <crate::RegValueT<Pa0PfsBy_SPEC> as RegisterValue<_>>::new(0)
19418 }
19419}
19420
19421#[doc(hidden)]
19422#[derive(Copy, Clone, Eq, PartialEq)]
19423pub struct Papfs_SPEC;
19424impl crate::sealed::RegSpec for Papfs_SPEC {
19425 type DataType = u32;
19426}
19427
19428#[doc = "Port An Pin Function Select Register"]
19429pub type Papfs = crate::RegValueT<Papfs_SPEC>;
19430
19431impl Papfs {
19432 #[doc = "Port Output Data"]
19433 #[inline(always)]
19434 pub fn podr(
19435 self,
19436 ) -> crate::common::RegisterField<
19437 0,
19438 0x1,
19439 1,
19440 0,
19441 papfs::Podr,
19442 papfs::Podr,
19443 Papfs_SPEC,
19444 crate::common::RW,
19445 > {
19446 crate::common::RegisterField::<
19447 0,
19448 0x1,
19449 1,
19450 0,
19451 papfs::Podr,
19452 papfs::Podr,
19453 Papfs_SPEC,
19454 crate::common::RW,
19455 >::from_register(self, 0)
19456 }
19457
19458 #[doc = "Pmn State"]
19459 #[inline(always)]
19460 pub fn pidr(
19461 self,
19462 ) -> crate::common::RegisterField<
19463 1,
19464 0x1,
19465 1,
19466 0,
19467 papfs::Pidr,
19468 papfs::Pidr,
19469 Papfs_SPEC,
19470 crate::common::R,
19471 > {
19472 crate::common::RegisterField::<
19473 1,
19474 0x1,
19475 1,
19476 0,
19477 papfs::Pidr,
19478 papfs::Pidr,
19479 Papfs_SPEC,
19480 crate::common::R,
19481 >::from_register(self, 0)
19482 }
19483
19484 #[doc = "Port Direction"]
19485 #[inline(always)]
19486 pub fn pdr(
19487 self,
19488 ) -> crate::common::RegisterField<
19489 2,
19490 0x1,
19491 1,
19492 0,
19493 papfs::Pdr,
19494 papfs::Pdr,
19495 Papfs_SPEC,
19496 crate::common::RW,
19497 > {
19498 crate::common::RegisterField::<
19499 2,
19500 0x1,
19501 1,
19502 0,
19503 papfs::Pdr,
19504 papfs::Pdr,
19505 Papfs_SPEC,
19506 crate::common::RW,
19507 >::from_register(self, 0)
19508 }
19509
19510 #[doc = "Pull-up Control"]
19511 #[inline(always)]
19512 pub fn pcr(
19513 self,
19514 ) -> crate::common::RegisterField<
19515 4,
19516 0x1,
19517 1,
19518 0,
19519 papfs::Pcr,
19520 papfs::Pcr,
19521 Papfs_SPEC,
19522 crate::common::RW,
19523 > {
19524 crate::common::RegisterField::<
19525 4,
19526 0x1,
19527 1,
19528 0,
19529 papfs::Pcr,
19530 papfs::Pcr,
19531 Papfs_SPEC,
19532 crate::common::RW,
19533 >::from_register(self, 0)
19534 }
19535
19536 #[doc = "N-Channel Open-Drain Control"]
19537 #[inline(always)]
19538 pub fn ncodr(
19539 self,
19540 ) -> crate::common::RegisterField<
19541 6,
19542 0x1,
19543 1,
19544 0,
19545 papfs::Ncodr,
19546 papfs::Ncodr,
19547 Papfs_SPEC,
19548 crate::common::RW,
19549 > {
19550 crate::common::RegisterField::<
19551 6,
19552 0x1,
19553 1,
19554 0,
19555 papfs::Ncodr,
19556 papfs::Ncodr,
19557 Papfs_SPEC,
19558 crate::common::RW,
19559 >::from_register(self, 0)
19560 }
19561
19562 #[doc = "Port Drive Capability"]
19563 #[inline(always)]
19564 pub fn dscr(
19565 self,
19566 ) -> crate::common::RegisterField<
19567 10,
19568 0x3,
19569 1,
19570 0,
19571 papfs::Dscr,
19572 papfs::Dscr,
19573 Papfs_SPEC,
19574 crate::common::RW,
19575 > {
19576 crate::common::RegisterField::<
19577 10,
19578 0x3,
19579 1,
19580 0,
19581 papfs::Dscr,
19582 papfs::Dscr,
19583 Papfs_SPEC,
19584 crate::common::RW,
19585 >::from_register(self, 0)
19586 }
19587
19588 #[doc = "Event on Falling/Event on Rising"]
19589 #[inline(always)]
19590 pub fn eofr(
19591 self,
19592 ) -> crate::common::RegisterField<
19593 12,
19594 0x3,
19595 1,
19596 0,
19597 papfs::Eofr,
19598 papfs::Eofr,
19599 Papfs_SPEC,
19600 crate::common::RW,
19601 > {
19602 crate::common::RegisterField::<
19603 12,
19604 0x3,
19605 1,
19606 0,
19607 papfs::Eofr,
19608 papfs::Eofr,
19609 Papfs_SPEC,
19610 crate::common::RW,
19611 >::from_register(self, 0)
19612 }
19613
19614 #[doc = "IRQ Input Enable"]
19615 #[inline(always)]
19616 pub fn isel(
19617 self,
19618 ) -> crate::common::RegisterField<
19619 14,
19620 0x1,
19621 1,
19622 0,
19623 papfs::Isel,
19624 papfs::Isel,
19625 Papfs_SPEC,
19626 crate::common::RW,
19627 > {
19628 crate::common::RegisterField::<
19629 14,
19630 0x1,
19631 1,
19632 0,
19633 papfs::Isel,
19634 papfs::Isel,
19635 Papfs_SPEC,
19636 crate::common::RW,
19637 >::from_register(self, 0)
19638 }
19639
19640 #[doc = "Analog Input Enable"]
19641 #[inline(always)]
19642 pub fn asel(
19643 self,
19644 ) -> crate::common::RegisterField<
19645 15,
19646 0x1,
19647 1,
19648 0,
19649 papfs::Asel,
19650 papfs::Asel,
19651 Papfs_SPEC,
19652 crate::common::RW,
19653 > {
19654 crate::common::RegisterField::<
19655 15,
19656 0x1,
19657 1,
19658 0,
19659 papfs::Asel,
19660 papfs::Asel,
19661 Papfs_SPEC,
19662 crate::common::RW,
19663 >::from_register(self, 0)
19664 }
19665
19666 #[doc = "Port Mode Control"]
19667 #[inline(always)]
19668 pub fn pmr(
19669 self,
19670 ) -> crate::common::RegisterField<
19671 16,
19672 0x1,
19673 1,
19674 0,
19675 papfs::Pmr,
19676 papfs::Pmr,
19677 Papfs_SPEC,
19678 crate::common::RW,
19679 > {
19680 crate::common::RegisterField::<
19681 16,
19682 0x1,
19683 1,
19684 0,
19685 papfs::Pmr,
19686 papfs::Pmr,
19687 Papfs_SPEC,
19688 crate::common::RW,
19689 >::from_register(self, 0)
19690 }
19691
19692 #[doc = "Peripheral Select"]
19693 #[inline(always)]
19694 pub fn psel(
19695 self,
19696 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, Papfs_SPEC, crate::common::RW> {
19697 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,Papfs_SPEC,crate::common::RW>::from_register(self,0)
19698 }
19699}
19700impl ::core::default::Default for Papfs {
19701 #[inline(always)]
19702 fn default() -> Papfs {
19703 <crate::RegValueT<Papfs_SPEC> as RegisterValue<_>>::new(0)
19704 }
19705}
19706pub mod papfs {
19707
19708 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19709 pub struct Podr_SPEC;
19710 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
19711 impl Podr {
19712 #[doc = "Low output"]
19713 pub const _0: Self = Self::new(0);
19714
19715 #[doc = "High output"]
19716 pub const _1: Self = Self::new(1);
19717 }
19718 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19719 pub struct Pidr_SPEC;
19720 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
19721 impl Pidr {
19722 #[doc = "Low level"]
19723 pub const _0: Self = Self::new(0);
19724
19725 #[doc = "High level"]
19726 pub const _1: Self = Self::new(1);
19727 }
19728 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19729 pub struct Pdr_SPEC;
19730 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
19731 impl Pdr {
19732 #[doc = "Input (functions as an input pin)"]
19733 pub const _0: Self = Self::new(0);
19734
19735 #[doc = "Output (functions as an output pin)"]
19736 pub const _1: Self = Self::new(1);
19737 }
19738 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19739 pub struct Pcr_SPEC;
19740 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
19741 impl Pcr {
19742 #[doc = "Disable input pull-up"]
19743 pub const _0: Self = Self::new(0);
19744
19745 #[doc = "Enable input pull-up"]
19746 pub const _1: Self = Self::new(1);
19747 }
19748 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19749 pub struct Ncodr_SPEC;
19750 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
19751 impl Ncodr {
19752 #[doc = "CMOS output"]
19753 pub const _0: Self = Self::new(0);
19754
19755 #[doc = "NMOS open-drain output"]
19756 pub const _1: Self = Self::new(1);
19757 }
19758 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19759 pub struct Dscr_SPEC;
19760 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
19761 impl Dscr {
19762 #[doc = "Low drive"]
19763 pub const _00: Self = Self::new(0);
19764
19765 #[doc = "Middle drive"]
19766 pub const _01: Self = Self::new(1);
19767
19768 #[doc = "High-speed high-drive"]
19769 pub const _10: Self = Self::new(2);
19770
19771 #[doc = "High drive"]
19772 pub const _11: Self = Self::new(3);
19773 }
19774 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19775 pub struct Eofr_SPEC;
19776 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
19777 impl Eofr {
19778 #[doc = "Don\'t care"]
19779 pub const _00: Self = Self::new(0);
19780
19781 #[doc = "Detect rising edge"]
19782 pub const _01: Self = Self::new(1);
19783
19784 #[doc = "Detect falling edge"]
19785 pub const _10: Self = Self::new(2);
19786
19787 #[doc = "Detect both edges"]
19788 pub const _11: Self = Self::new(3);
19789 }
19790 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19791 pub struct Isel_SPEC;
19792 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
19793 impl Isel {
19794 #[doc = "Not used as an IRQn input pin"]
19795 pub const _0: Self = Self::new(0);
19796
19797 #[doc = "Used as an IRQn input pin"]
19798 pub const _1: Self = Self::new(1);
19799 }
19800 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19801 pub struct Asel_SPEC;
19802 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
19803 impl Asel {
19804 #[doc = "Not used as an analog pin"]
19805 pub const _0: Self = Self::new(0);
19806
19807 #[doc = "Used as an analog pin"]
19808 pub const _1: Self = Self::new(1);
19809 }
19810 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19811 pub struct Pmr_SPEC;
19812 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
19813 impl Pmr {
19814 #[doc = "Used as a general I/O pin"]
19815 pub const _0: Self = Self::new(0);
19816
19817 #[doc = "Used as an I/O port for peripheral functions"]
19818 pub const _1: Self = Self::new(1);
19819 }
19820}
19821#[doc(hidden)]
19822#[derive(Copy, Clone, Eq, PartialEq)]
19823pub struct PapfsHa_SPEC;
19824impl crate::sealed::RegSpec for PapfsHa_SPEC {
19825 type DataType = u16;
19826}
19827
19828#[doc = "Port An Pin Function Select Register"]
19829pub type PapfsHa = crate::RegValueT<PapfsHa_SPEC>;
19830
19831impl PapfsHa {
19832 #[doc = "Port Mode Control"]
19833 #[inline(always)]
19834 pub fn pmr(
19835 self,
19836 ) -> crate::common::RegisterField<
19837 0,
19838 0x1,
19839 1,
19840 0,
19841 papfs_ha::Pmr,
19842 papfs_ha::Pmr,
19843 PapfsHa_SPEC,
19844 crate::common::RW,
19845 > {
19846 crate::common::RegisterField::<
19847 0,
19848 0x1,
19849 1,
19850 0,
19851 papfs_ha::Pmr,
19852 papfs_ha::Pmr,
19853 PapfsHa_SPEC,
19854 crate::common::RW,
19855 >::from_register(self, 0)
19856 }
19857
19858 #[doc = "Peripheral Select"]
19859 #[inline(always)]
19860 pub fn psel(
19861 self,
19862 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, PapfsHa_SPEC, crate::common::RW> {
19863 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,PapfsHa_SPEC,crate::common::RW>::from_register(self,0)
19864 }
19865}
19866impl ::core::default::Default for PapfsHa {
19867 #[inline(always)]
19868 fn default() -> PapfsHa {
19869 <crate::RegValueT<PapfsHa_SPEC> as RegisterValue<_>>::new(0)
19870 }
19871}
19872pub mod papfs_ha {
19873
19874 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
19875 pub struct Pmr_SPEC;
19876 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
19877 impl Pmr {
19878 #[doc = "Used as a general I/O pin"]
19879 pub const _0: Self = Self::new(0);
19880
19881 #[doc = "Used as an I/O port for peripheral functions"]
19882 pub const _1: Self = Self::new(1);
19883 }
19884}
19885#[doc(hidden)]
19886#[derive(Copy, Clone, Eq, PartialEq)]
19887pub struct PapfsBy_SPEC;
19888impl crate::sealed::RegSpec for PapfsBy_SPEC {
19889 type DataType = u8;
19890}
19891
19892#[doc = "Port An Pin Function Select Register"]
19893pub type PapfsBy = crate::RegValueT<PapfsBy_SPEC>;
19894
19895impl PapfsBy {
19896 #[doc = "Peripheral Select"]
19897 #[inline(always)]
19898 pub fn psel(
19899 self,
19900 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, PapfsBy_SPEC, crate::common::RW> {
19901 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,PapfsBy_SPEC,crate::common::RW>::from_register(self,0)
19902 }
19903}
19904impl ::core::default::Default for PapfsBy {
19905 #[inline(always)]
19906 fn default() -> PapfsBy {
19907 <crate::RegValueT<PapfsBy_SPEC> as RegisterValue<_>>::new(0)
19908 }
19909}
19910
19911#[doc(hidden)]
19912#[derive(Copy, Clone, Eq, PartialEq)]
19913pub struct Pb0Pfs_SPEC;
19914impl crate::sealed::RegSpec for Pb0Pfs_SPEC {
19915 type DataType = u32;
19916}
19917
19918#[doc = "Port B0%s Pin Function Select Register"]
19919pub type Pb0Pfs = crate::RegValueT<Pb0Pfs_SPEC>;
19920
19921impl Pb0Pfs {
19922 #[doc = "Port Output Data"]
19923 #[inline(always)]
19924 pub fn podr(
19925 self,
19926 ) -> crate::common::RegisterField<
19927 0,
19928 0x1,
19929 1,
19930 0,
19931 pb0pfs::Podr,
19932 pb0pfs::Podr,
19933 Pb0Pfs_SPEC,
19934 crate::common::RW,
19935 > {
19936 crate::common::RegisterField::<
19937 0,
19938 0x1,
19939 1,
19940 0,
19941 pb0pfs::Podr,
19942 pb0pfs::Podr,
19943 Pb0Pfs_SPEC,
19944 crate::common::RW,
19945 >::from_register(self, 0)
19946 }
19947
19948 #[doc = "Pmn State"]
19949 #[inline(always)]
19950 pub fn pidr(
19951 self,
19952 ) -> crate::common::RegisterField<
19953 1,
19954 0x1,
19955 1,
19956 0,
19957 pb0pfs::Pidr,
19958 pb0pfs::Pidr,
19959 Pb0Pfs_SPEC,
19960 crate::common::R,
19961 > {
19962 crate::common::RegisterField::<
19963 1,
19964 0x1,
19965 1,
19966 0,
19967 pb0pfs::Pidr,
19968 pb0pfs::Pidr,
19969 Pb0Pfs_SPEC,
19970 crate::common::R,
19971 >::from_register(self, 0)
19972 }
19973
19974 #[doc = "Port Direction"]
19975 #[inline(always)]
19976 pub fn pdr(
19977 self,
19978 ) -> crate::common::RegisterField<
19979 2,
19980 0x1,
19981 1,
19982 0,
19983 pb0pfs::Pdr,
19984 pb0pfs::Pdr,
19985 Pb0Pfs_SPEC,
19986 crate::common::RW,
19987 > {
19988 crate::common::RegisterField::<
19989 2,
19990 0x1,
19991 1,
19992 0,
19993 pb0pfs::Pdr,
19994 pb0pfs::Pdr,
19995 Pb0Pfs_SPEC,
19996 crate::common::RW,
19997 >::from_register(self, 0)
19998 }
19999
20000 #[doc = "Pull-up Control"]
20001 #[inline(always)]
20002 pub fn pcr(
20003 self,
20004 ) -> crate::common::RegisterField<
20005 4,
20006 0x1,
20007 1,
20008 0,
20009 pb0pfs::Pcr,
20010 pb0pfs::Pcr,
20011 Pb0Pfs_SPEC,
20012 crate::common::RW,
20013 > {
20014 crate::common::RegisterField::<
20015 4,
20016 0x1,
20017 1,
20018 0,
20019 pb0pfs::Pcr,
20020 pb0pfs::Pcr,
20021 Pb0Pfs_SPEC,
20022 crate::common::RW,
20023 >::from_register(self, 0)
20024 }
20025
20026 #[doc = "N-Channel Open-Drain Control"]
20027 #[inline(always)]
20028 pub fn ncodr(
20029 self,
20030 ) -> crate::common::RegisterField<
20031 6,
20032 0x1,
20033 1,
20034 0,
20035 pb0pfs::Ncodr,
20036 pb0pfs::Ncodr,
20037 Pb0Pfs_SPEC,
20038 crate::common::RW,
20039 > {
20040 crate::common::RegisterField::<
20041 6,
20042 0x1,
20043 1,
20044 0,
20045 pb0pfs::Ncodr,
20046 pb0pfs::Ncodr,
20047 Pb0Pfs_SPEC,
20048 crate::common::RW,
20049 >::from_register(self, 0)
20050 }
20051
20052 #[doc = "Port Drive Capability"]
20053 #[inline(always)]
20054 pub fn dscr(
20055 self,
20056 ) -> crate::common::RegisterField<
20057 10,
20058 0x3,
20059 1,
20060 0,
20061 pb0pfs::Dscr,
20062 pb0pfs::Dscr,
20063 Pb0Pfs_SPEC,
20064 crate::common::RW,
20065 > {
20066 crate::common::RegisterField::<
20067 10,
20068 0x3,
20069 1,
20070 0,
20071 pb0pfs::Dscr,
20072 pb0pfs::Dscr,
20073 Pb0Pfs_SPEC,
20074 crate::common::RW,
20075 >::from_register(self, 0)
20076 }
20077
20078 #[doc = "Event on Falling/Event on Rising"]
20079 #[inline(always)]
20080 pub fn eofr(
20081 self,
20082 ) -> crate::common::RegisterField<
20083 12,
20084 0x3,
20085 1,
20086 0,
20087 pb0pfs::Eofr,
20088 pb0pfs::Eofr,
20089 Pb0Pfs_SPEC,
20090 crate::common::RW,
20091 > {
20092 crate::common::RegisterField::<
20093 12,
20094 0x3,
20095 1,
20096 0,
20097 pb0pfs::Eofr,
20098 pb0pfs::Eofr,
20099 Pb0Pfs_SPEC,
20100 crate::common::RW,
20101 >::from_register(self, 0)
20102 }
20103
20104 #[doc = "IRQ Input Enable"]
20105 #[inline(always)]
20106 pub fn isel(
20107 self,
20108 ) -> crate::common::RegisterField<
20109 14,
20110 0x1,
20111 1,
20112 0,
20113 pb0pfs::Isel,
20114 pb0pfs::Isel,
20115 Pb0Pfs_SPEC,
20116 crate::common::RW,
20117 > {
20118 crate::common::RegisterField::<
20119 14,
20120 0x1,
20121 1,
20122 0,
20123 pb0pfs::Isel,
20124 pb0pfs::Isel,
20125 Pb0Pfs_SPEC,
20126 crate::common::RW,
20127 >::from_register(self, 0)
20128 }
20129
20130 #[doc = "Analog Input Enable"]
20131 #[inline(always)]
20132 pub fn asel(
20133 self,
20134 ) -> crate::common::RegisterField<
20135 15,
20136 0x1,
20137 1,
20138 0,
20139 pb0pfs::Asel,
20140 pb0pfs::Asel,
20141 Pb0Pfs_SPEC,
20142 crate::common::RW,
20143 > {
20144 crate::common::RegisterField::<
20145 15,
20146 0x1,
20147 1,
20148 0,
20149 pb0pfs::Asel,
20150 pb0pfs::Asel,
20151 Pb0Pfs_SPEC,
20152 crate::common::RW,
20153 >::from_register(self, 0)
20154 }
20155
20156 #[doc = "Port Mode Control"]
20157 #[inline(always)]
20158 pub fn pmr(
20159 self,
20160 ) -> crate::common::RegisterField<
20161 16,
20162 0x1,
20163 1,
20164 0,
20165 pb0pfs::Pmr,
20166 pb0pfs::Pmr,
20167 Pb0Pfs_SPEC,
20168 crate::common::RW,
20169 > {
20170 crate::common::RegisterField::<
20171 16,
20172 0x1,
20173 1,
20174 0,
20175 pb0pfs::Pmr,
20176 pb0pfs::Pmr,
20177 Pb0Pfs_SPEC,
20178 crate::common::RW,
20179 >::from_register(self, 0)
20180 }
20181
20182 #[doc = "Peripheral Select"]
20183 #[inline(always)]
20184 pub fn psel(
20185 self,
20186 ) -> crate::common::RegisterField<24, 0x1f, 1, 0, u8, u8, Pb0Pfs_SPEC, crate::common::RW> {
20187 crate::common::RegisterField::<24,0x1f,1,0,u8,u8,Pb0Pfs_SPEC,crate::common::RW>::from_register(self,0)
20188 }
20189}
20190impl ::core::default::Default for Pb0Pfs {
20191 #[inline(always)]
20192 fn default() -> Pb0Pfs {
20193 <crate::RegValueT<Pb0Pfs_SPEC> as RegisterValue<_>>::new(0)
20194 }
20195}
20196pub mod pb0pfs {
20197
20198 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20199 pub struct Podr_SPEC;
20200 pub type Podr = crate::EnumBitfieldStruct<u8, Podr_SPEC>;
20201 impl Podr {
20202 #[doc = "Low output"]
20203 pub const _0: Self = Self::new(0);
20204
20205 #[doc = "High output"]
20206 pub const _1: Self = Self::new(1);
20207 }
20208 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20209 pub struct Pidr_SPEC;
20210 pub type Pidr = crate::EnumBitfieldStruct<u8, Pidr_SPEC>;
20211 impl Pidr {
20212 #[doc = "Low level"]
20213 pub const _0: Self = Self::new(0);
20214
20215 #[doc = "High level"]
20216 pub const _1: Self = Self::new(1);
20217 }
20218 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20219 pub struct Pdr_SPEC;
20220 pub type Pdr = crate::EnumBitfieldStruct<u8, Pdr_SPEC>;
20221 impl Pdr {
20222 #[doc = "Input (functions as an input pin)"]
20223 pub const _0: Self = Self::new(0);
20224
20225 #[doc = "Output (functions as an output pin)"]
20226 pub const _1: Self = Self::new(1);
20227 }
20228 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20229 pub struct Pcr_SPEC;
20230 pub type Pcr = crate::EnumBitfieldStruct<u8, Pcr_SPEC>;
20231 impl Pcr {
20232 #[doc = "Disable input pull-up"]
20233 pub const _0: Self = Self::new(0);
20234
20235 #[doc = "Enable input pull-up"]
20236 pub const _1: Self = Self::new(1);
20237 }
20238 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20239 pub struct Ncodr_SPEC;
20240 pub type Ncodr = crate::EnumBitfieldStruct<u8, Ncodr_SPEC>;
20241 impl Ncodr {
20242 #[doc = "CMOS output"]
20243 pub const _0: Self = Self::new(0);
20244
20245 #[doc = "NMOS open-drain output"]
20246 pub const _1: Self = Self::new(1);
20247 }
20248 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20249 pub struct Dscr_SPEC;
20250 pub type Dscr = crate::EnumBitfieldStruct<u8, Dscr_SPEC>;
20251 impl Dscr {
20252 #[doc = "Low drive"]
20253 pub const _00: Self = Self::new(0);
20254
20255 #[doc = "Middle drive"]
20256 pub const _01: Self = Self::new(1);
20257
20258 #[doc = "High-speed high-drive"]
20259 pub const _10: Self = Self::new(2);
20260
20261 #[doc = "High drive"]
20262 pub const _11: Self = Self::new(3);
20263 }
20264 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20265 pub struct Eofr_SPEC;
20266 pub type Eofr = crate::EnumBitfieldStruct<u8, Eofr_SPEC>;
20267 impl Eofr {
20268 #[doc = "Don\'t care"]
20269 pub const _00: Self = Self::new(0);
20270
20271 #[doc = "Detect rising edge"]
20272 pub const _01: Self = Self::new(1);
20273
20274 #[doc = "Detect falling edge"]
20275 pub const _10: Self = Self::new(2);
20276
20277 #[doc = "Detect both edges"]
20278 pub const _11: Self = Self::new(3);
20279 }
20280 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20281 pub struct Isel_SPEC;
20282 pub type Isel = crate::EnumBitfieldStruct<u8, Isel_SPEC>;
20283 impl Isel {
20284 #[doc = "Not used as an IRQn input pin"]
20285 pub const _0: Self = Self::new(0);
20286
20287 #[doc = "Used as an IRQn input pin"]
20288 pub const _1: Self = Self::new(1);
20289 }
20290 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20291 pub struct Asel_SPEC;
20292 pub type Asel = crate::EnumBitfieldStruct<u8, Asel_SPEC>;
20293 impl Asel {
20294 #[doc = "Not used as an analog pin"]
20295 pub const _0: Self = Self::new(0);
20296
20297 #[doc = "Used as an analog pin"]
20298 pub const _1: Self = Self::new(1);
20299 }
20300 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20301 pub struct Pmr_SPEC;
20302 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
20303 impl Pmr {
20304 #[doc = "Used as a general I/O pin"]
20305 pub const _0: Self = Self::new(0);
20306
20307 #[doc = "Used as an I/O port for peripheral functions"]
20308 pub const _1: Self = Self::new(1);
20309 }
20310}
20311#[doc(hidden)]
20312#[derive(Copy, Clone, Eq, PartialEq)]
20313pub struct Pb0PfsHa_SPEC;
20314impl crate::sealed::RegSpec for Pb0PfsHa_SPEC {
20315 type DataType = u16;
20316}
20317
20318#[doc = "Port B0%s Pin Function Select Register"]
20319pub type Pb0PfsHa = crate::RegValueT<Pb0PfsHa_SPEC>;
20320
20321impl Pb0PfsHa {
20322 #[doc = "Port Mode Control"]
20323 #[inline(always)]
20324 pub fn pmr(
20325 self,
20326 ) -> crate::common::RegisterField<
20327 0,
20328 0x1,
20329 1,
20330 0,
20331 pb0pfs_ha::Pmr,
20332 pb0pfs_ha::Pmr,
20333 Pb0PfsHa_SPEC,
20334 crate::common::RW,
20335 > {
20336 crate::common::RegisterField::<
20337 0,
20338 0x1,
20339 1,
20340 0,
20341 pb0pfs_ha::Pmr,
20342 pb0pfs_ha::Pmr,
20343 Pb0PfsHa_SPEC,
20344 crate::common::RW,
20345 >::from_register(self, 0)
20346 }
20347
20348 #[doc = "Peripheral Select"]
20349 #[inline(always)]
20350 pub fn psel(
20351 self,
20352 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, Pb0PfsHa_SPEC, crate::common::RW> {
20353 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,Pb0PfsHa_SPEC,crate::common::RW>::from_register(self,0)
20354 }
20355}
20356impl ::core::default::Default for Pb0PfsHa {
20357 #[inline(always)]
20358 fn default() -> Pb0PfsHa {
20359 <crate::RegValueT<Pb0PfsHa_SPEC> as RegisterValue<_>>::new(0)
20360 }
20361}
20362pub mod pb0pfs_ha {
20363
20364 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20365 pub struct Pmr_SPEC;
20366 pub type Pmr = crate::EnumBitfieldStruct<u8, Pmr_SPEC>;
20367 impl Pmr {
20368 #[doc = "Used as a general I/O pin"]
20369 pub const _0: Self = Self::new(0);
20370
20371 #[doc = "Used as an I/O port for peripheral functions"]
20372 pub const _1: Self = Self::new(1);
20373 }
20374}
20375#[doc(hidden)]
20376#[derive(Copy, Clone, Eq, PartialEq)]
20377pub struct Pb0PfsBy_SPEC;
20378impl crate::sealed::RegSpec for Pb0PfsBy_SPEC {
20379 type DataType = u8;
20380}
20381
20382#[doc = "Port B0%s Pin Function Select Register"]
20383pub type Pb0PfsBy = crate::RegValueT<Pb0PfsBy_SPEC>;
20384
20385impl Pb0PfsBy {
20386 #[doc = "Peripheral Select"]
20387 #[inline(always)]
20388 pub fn psel(
20389 self,
20390 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Pb0PfsBy_SPEC, crate::common::RW> {
20391 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Pb0PfsBy_SPEC,crate::common::RW>::from_register(self,0)
20392 }
20393}
20394impl ::core::default::Default for Pb0PfsBy {
20395 #[inline(always)]
20396 fn default() -> Pb0PfsBy {
20397 <crate::RegValueT<Pb0PfsBy_SPEC> as RegisterValue<_>>::new(0)
20398 }
20399}
20400
20401#[doc(hidden)]
20402#[derive(Copy, Clone, Eq, PartialEq)]
20403pub struct PwprS_SPEC;
20404impl crate::sealed::RegSpec for PwprS_SPEC {
20405 type DataType = u8;
20406}
20407
20408#[doc = "Write-Protect Register for Secure"]
20409pub type PwprS = crate::RegValueT<PwprS_SPEC>;
20410
20411impl PwprS {
20412 #[doc = "PmnPFS Register Write Enable"]
20413 #[inline(always)]
20414 pub fn pfswe(
20415 self,
20416 ) -> crate::common::RegisterField<
20417 6,
20418 0x1,
20419 1,
20420 0,
20421 pwpr_s::Pfswe,
20422 pwpr_s::Pfswe,
20423 PwprS_SPEC,
20424 crate::common::RW,
20425 > {
20426 crate::common::RegisterField::<
20427 6,
20428 0x1,
20429 1,
20430 0,
20431 pwpr_s::Pfswe,
20432 pwpr_s::Pfswe,
20433 PwprS_SPEC,
20434 crate::common::RW,
20435 >::from_register(self, 0)
20436 }
20437
20438 #[doc = "PFSWE Bit Write Disable"]
20439 #[inline(always)]
20440 pub fn b0wi(
20441 self,
20442 ) -> crate::common::RegisterField<
20443 7,
20444 0x1,
20445 1,
20446 0,
20447 pwpr_s::B0Wi,
20448 pwpr_s::B0Wi,
20449 PwprS_SPEC,
20450 crate::common::RW,
20451 > {
20452 crate::common::RegisterField::<
20453 7,
20454 0x1,
20455 1,
20456 0,
20457 pwpr_s::B0Wi,
20458 pwpr_s::B0Wi,
20459 PwprS_SPEC,
20460 crate::common::RW,
20461 >::from_register(self, 0)
20462 }
20463}
20464impl ::core::default::Default for PwprS {
20465 #[inline(always)]
20466 fn default() -> PwprS {
20467 <crate::RegValueT<PwprS_SPEC> as RegisterValue<_>>::new(128)
20468 }
20469}
20470pub mod pwpr_s {
20471
20472 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20473 pub struct Pfswe_SPEC;
20474 pub type Pfswe = crate::EnumBitfieldStruct<u8, Pfswe_SPEC>;
20475 impl Pfswe {
20476 #[doc = "Disable writes to the PmnPFS register"]
20477 pub const _0: Self = Self::new(0);
20478
20479 #[doc = "Enable writes to the PmnPFS register"]
20480 pub const _1: Self = Self::new(1);
20481 }
20482 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20483 pub struct B0Wi_SPEC;
20484 pub type B0Wi = crate::EnumBitfieldStruct<u8, B0Wi_SPEC>;
20485 impl B0Wi {
20486 #[doc = "Enable writes the PFSWE bit"]
20487 pub const _0: Self = Self::new(0);
20488
20489 #[doc = "Disable writes to the PFSWE bit"]
20490 pub const _1: Self = Self::new(1);
20491 }
20492}
20493#[doc(hidden)]
20494#[derive(Copy, Clone, Eq, PartialEq)]
20495pub struct Psar_SPEC;
20496impl crate::sealed::RegSpec for Psar_SPEC {
20497 type DataType = u16;
20498}
20499
20500#[doc = "Port Security Attribution register"]
20501pub type Psar = crate::RegValueT<Psar_SPEC>;
20502
20503impl Psar {
20504 #[doc = "Pmn Security Attribution"]
20505 #[inline(always)]
20506 pub fn pmnsa(
20507 self,
20508 ) -> crate::common::RegisterField<
20509 0,
20510 0xffff,
20511 1,
20512 0,
20513 psar::Pmnsa,
20514 psar::Pmnsa,
20515 Psar_SPEC,
20516 crate::common::RW,
20517 > {
20518 crate::common::RegisterField::<
20519 0,
20520 0xffff,
20521 1,
20522 0,
20523 psar::Pmnsa,
20524 psar::Pmnsa,
20525 Psar_SPEC,
20526 crate::common::RW,
20527 >::from_register(self, 0)
20528 }
20529}
20530impl ::core::default::Default for Psar {
20531 #[inline(always)]
20532 fn default() -> Psar {
20533 <crate::RegValueT<Psar_SPEC> as RegisterValue<_>>::new(0)
20534 }
20535}
20536pub mod psar {
20537
20538 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
20539 pub struct Pmnsa_SPEC;
20540 pub type Pmnsa = crate::EnumBitfieldStruct<u8, Pmnsa_SPEC>;
20541 impl Pmnsa {
20542 #[doc = "Secure"]
20543 pub const _0: Self = Self::new(0);
20544
20545 #[doc = "Non Secure"]
20546 pub const _1: Self = Self::new(1);
20547 }
20548}