1#[doc = "Reader of register EXTIPINSELL"]
2pub type R = crate::R<u32, super::EXTIPINSELL>;
3#[doc = "Writer for register EXTIPINSELL"]
4pub type W = crate::W<u32, super::EXTIPINSELL>;
5#[doc = "Register EXTIPINSELL `reset()`'s with value 0x3210_3210"]
6impl crate::ResetValue for super::EXTIPINSELL {
7 type Type = u32;
8 #[inline(always)]
9 fn reset_value() -> Self::Type {
10 0x3210_3210
11 }
12}
13#[doc = "External Interrupt 0 Pin Select\n\nValue on reset: 0"]
14#[derive(Clone, Copy, Debug, PartialEq)]
15#[repr(u8)]
16pub enum EXTIPINSEL0_A {
17 #[doc = "0: Pin 0"]
18 PIN0 = 0,
19 #[doc = "1: Pin 1"]
20 PIN1 = 1,
21 #[doc = "2: Pin 2"]
22 PIN2 = 2,
23 #[doc = "3: Pin 3"]
24 PIN3 = 3,
25}
26impl From<EXTIPINSEL0_A> for u8 {
27 #[inline(always)]
28 fn from(variant: EXTIPINSEL0_A) -> Self {
29 variant as _
30 }
31}
32#[doc = "Reader of field `EXTIPINSEL0`"]
33pub type EXTIPINSEL0_R = crate::R<u8, EXTIPINSEL0_A>;
34impl EXTIPINSEL0_R {
35 #[doc = r"Get enumerated values variant"]
36 #[inline(always)]
37 pub fn variant(&self) -> EXTIPINSEL0_A {
38 match self.bits {
39 0 => EXTIPINSEL0_A::PIN0,
40 1 => EXTIPINSEL0_A::PIN1,
41 2 => EXTIPINSEL0_A::PIN2,
42 3 => EXTIPINSEL0_A::PIN3,
43 _ => unreachable!(),
44 }
45 }
46 #[doc = "Checks if the value of the field is `PIN0`"]
47 #[inline(always)]
48 pub fn is_pin0(&self) -> bool {
49 *self == EXTIPINSEL0_A::PIN0
50 }
51 #[doc = "Checks if the value of the field is `PIN1`"]
52 #[inline(always)]
53 pub fn is_pin1(&self) -> bool {
54 *self == EXTIPINSEL0_A::PIN1
55 }
56 #[doc = "Checks if the value of the field is `PIN2`"]
57 #[inline(always)]
58 pub fn is_pin2(&self) -> bool {
59 *self == EXTIPINSEL0_A::PIN2
60 }
61 #[doc = "Checks if the value of the field is `PIN3`"]
62 #[inline(always)]
63 pub fn is_pin3(&self) -> bool {
64 *self == EXTIPINSEL0_A::PIN3
65 }
66}
67#[doc = "Write proxy for field `EXTIPINSEL0`"]
68pub struct EXTIPINSEL0_W<'a> {
69 w: &'a mut W,
70}
71impl<'a> EXTIPINSEL0_W<'a> {
72 #[doc = r"Writes `variant` to the field"]
73 #[inline(always)]
74 pub fn variant(self, variant: EXTIPINSEL0_A) -> &'a mut W {
75 {
76 self.bits(variant.into())
77 }
78 }
79 #[doc = "Pin 0"]
80 #[inline(always)]
81 pub fn pin0(self) -> &'a mut W {
82 self.variant(EXTIPINSEL0_A::PIN0)
83 }
84 #[doc = "Pin 1"]
85 #[inline(always)]
86 pub fn pin1(self) -> &'a mut W {
87 self.variant(EXTIPINSEL0_A::PIN1)
88 }
89 #[doc = "Pin 2"]
90 #[inline(always)]
91 pub fn pin2(self) -> &'a mut W {
92 self.variant(EXTIPINSEL0_A::PIN2)
93 }
94 #[doc = "Pin 3"]
95 #[inline(always)]
96 pub fn pin3(self) -> &'a mut W {
97 self.variant(EXTIPINSEL0_A::PIN3)
98 }
99 #[doc = r"Writes raw bits to the field"]
100 #[inline(always)]
101 pub fn bits(self, value: u8) -> &'a mut W {
102 self.w.bits = (self.w.bits & !0x03) | ((value as u32) & 0x03);
103 self.w
104 }
105}
106#[doc = "External Interrupt 1 Pin Select\n\nValue on reset: 1"]
107#[derive(Clone, Copy, Debug, PartialEq)]
108#[repr(u8)]
109pub enum EXTIPINSEL1_A {
110 #[doc = "0: Pin 0"]
111 PIN0 = 0,
112 #[doc = "1: Pin 1"]
113 PIN1 = 1,
114 #[doc = "2: Pin 2"]
115 PIN2 = 2,
116 #[doc = "3: Pin 3"]
117 PIN3 = 3,
118}
119impl From<EXTIPINSEL1_A> for u8 {
120 #[inline(always)]
121 fn from(variant: EXTIPINSEL1_A) -> Self {
122 variant as _
123 }
124}
125#[doc = "Reader of field `EXTIPINSEL1`"]
126pub type EXTIPINSEL1_R = crate::R<u8, EXTIPINSEL1_A>;
127impl EXTIPINSEL1_R {
128 #[doc = r"Get enumerated values variant"]
129 #[inline(always)]
130 pub fn variant(&self) -> EXTIPINSEL1_A {
131 match self.bits {
132 0 => EXTIPINSEL1_A::PIN0,
133 1 => EXTIPINSEL1_A::PIN1,
134 2 => EXTIPINSEL1_A::PIN2,
135 3 => EXTIPINSEL1_A::PIN3,
136 _ => unreachable!(),
137 }
138 }
139 #[doc = "Checks if the value of the field is `PIN0`"]
140 #[inline(always)]
141 pub fn is_pin0(&self) -> bool {
142 *self == EXTIPINSEL1_A::PIN0
143 }
144 #[doc = "Checks if the value of the field is `PIN1`"]
145 #[inline(always)]
146 pub fn is_pin1(&self) -> bool {
147 *self == EXTIPINSEL1_A::PIN1
148 }
149 #[doc = "Checks if the value of the field is `PIN2`"]
150 #[inline(always)]
151 pub fn is_pin2(&self) -> bool {
152 *self == EXTIPINSEL1_A::PIN2
153 }
154 #[doc = "Checks if the value of the field is `PIN3`"]
155 #[inline(always)]
156 pub fn is_pin3(&self) -> bool {
157 *self == EXTIPINSEL1_A::PIN3
158 }
159}
160#[doc = "Write proxy for field `EXTIPINSEL1`"]
161pub struct EXTIPINSEL1_W<'a> {
162 w: &'a mut W,
163}
164impl<'a> EXTIPINSEL1_W<'a> {
165 #[doc = r"Writes `variant` to the field"]
166 #[inline(always)]
167 pub fn variant(self, variant: EXTIPINSEL1_A) -> &'a mut W {
168 {
169 self.bits(variant.into())
170 }
171 }
172 #[doc = "Pin 0"]
173 #[inline(always)]
174 pub fn pin0(self) -> &'a mut W {
175 self.variant(EXTIPINSEL1_A::PIN0)
176 }
177 #[doc = "Pin 1"]
178 #[inline(always)]
179 pub fn pin1(self) -> &'a mut W {
180 self.variant(EXTIPINSEL1_A::PIN1)
181 }
182 #[doc = "Pin 2"]
183 #[inline(always)]
184 pub fn pin2(self) -> &'a mut W {
185 self.variant(EXTIPINSEL1_A::PIN2)
186 }
187 #[doc = "Pin 3"]
188 #[inline(always)]
189 pub fn pin3(self) -> &'a mut W {
190 self.variant(EXTIPINSEL1_A::PIN3)
191 }
192 #[doc = r"Writes raw bits to the field"]
193 #[inline(always)]
194 pub fn bits(self, value: u8) -> &'a mut W {
195 self.w.bits = (self.w.bits & !(0x03 << 4)) | (((value as u32) & 0x03) << 4);
196 self.w
197 }
198}
199#[doc = "External Interrupt 2 Pin Select\n\nValue on reset: 2"]
200#[derive(Clone, Copy, Debug, PartialEq)]
201#[repr(u8)]
202pub enum EXTIPINSEL2_A {
203 #[doc = "0: Pin 0"]
204 PIN0 = 0,
205 #[doc = "1: Pin 1"]
206 PIN1 = 1,
207 #[doc = "2: Pin 2"]
208 PIN2 = 2,
209 #[doc = "3: Pin 3"]
210 PIN3 = 3,
211}
212impl From<EXTIPINSEL2_A> for u8 {
213 #[inline(always)]
214 fn from(variant: EXTIPINSEL2_A) -> Self {
215 variant as _
216 }
217}
218#[doc = "Reader of field `EXTIPINSEL2`"]
219pub type EXTIPINSEL2_R = crate::R<u8, EXTIPINSEL2_A>;
220impl EXTIPINSEL2_R {
221 #[doc = r"Get enumerated values variant"]
222 #[inline(always)]
223 pub fn variant(&self) -> EXTIPINSEL2_A {
224 match self.bits {
225 0 => EXTIPINSEL2_A::PIN0,
226 1 => EXTIPINSEL2_A::PIN1,
227 2 => EXTIPINSEL2_A::PIN2,
228 3 => EXTIPINSEL2_A::PIN3,
229 _ => unreachable!(),
230 }
231 }
232 #[doc = "Checks if the value of the field is `PIN0`"]
233 #[inline(always)]
234 pub fn is_pin0(&self) -> bool {
235 *self == EXTIPINSEL2_A::PIN0
236 }
237 #[doc = "Checks if the value of the field is `PIN1`"]
238 #[inline(always)]
239 pub fn is_pin1(&self) -> bool {
240 *self == EXTIPINSEL2_A::PIN1
241 }
242 #[doc = "Checks if the value of the field is `PIN2`"]
243 #[inline(always)]
244 pub fn is_pin2(&self) -> bool {
245 *self == EXTIPINSEL2_A::PIN2
246 }
247 #[doc = "Checks if the value of the field is `PIN3`"]
248 #[inline(always)]
249 pub fn is_pin3(&self) -> bool {
250 *self == EXTIPINSEL2_A::PIN3
251 }
252}
253#[doc = "Write proxy for field `EXTIPINSEL2`"]
254pub struct EXTIPINSEL2_W<'a> {
255 w: &'a mut W,
256}
257impl<'a> EXTIPINSEL2_W<'a> {
258 #[doc = r"Writes `variant` to the field"]
259 #[inline(always)]
260 pub fn variant(self, variant: EXTIPINSEL2_A) -> &'a mut W {
261 {
262 self.bits(variant.into())
263 }
264 }
265 #[doc = "Pin 0"]
266 #[inline(always)]
267 pub fn pin0(self) -> &'a mut W {
268 self.variant(EXTIPINSEL2_A::PIN0)
269 }
270 #[doc = "Pin 1"]
271 #[inline(always)]
272 pub fn pin1(self) -> &'a mut W {
273 self.variant(EXTIPINSEL2_A::PIN1)
274 }
275 #[doc = "Pin 2"]
276 #[inline(always)]
277 pub fn pin2(self) -> &'a mut W {
278 self.variant(EXTIPINSEL2_A::PIN2)
279 }
280 #[doc = "Pin 3"]
281 #[inline(always)]
282 pub fn pin3(self) -> &'a mut W {
283 self.variant(EXTIPINSEL2_A::PIN3)
284 }
285 #[doc = r"Writes raw bits to the field"]
286 #[inline(always)]
287 pub fn bits(self, value: u8) -> &'a mut W {
288 self.w.bits = (self.w.bits & !(0x03 << 8)) | (((value as u32) & 0x03) << 8);
289 self.w
290 }
291}
292#[doc = "External Interrupt 3 Pin Select\n\nValue on reset: 3"]
293#[derive(Clone, Copy, Debug, PartialEq)]
294#[repr(u8)]
295pub enum EXTIPINSEL3_A {
296 #[doc = "0: Pin 0"]
297 PIN0 = 0,
298 #[doc = "1: Pin 1"]
299 PIN1 = 1,
300 #[doc = "2: Pin 2"]
301 PIN2 = 2,
302 #[doc = "3: Pin 3"]
303 PIN3 = 3,
304}
305impl From<EXTIPINSEL3_A> for u8 {
306 #[inline(always)]
307 fn from(variant: EXTIPINSEL3_A) -> Self {
308 variant as _
309 }
310}
311#[doc = "Reader of field `EXTIPINSEL3`"]
312pub type EXTIPINSEL3_R = crate::R<u8, EXTIPINSEL3_A>;
313impl EXTIPINSEL3_R {
314 #[doc = r"Get enumerated values variant"]
315 #[inline(always)]
316 pub fn variant(&self) -> EXTIPINSEL3_A {
317 match self.bits {
318 0 => EXTIPINSEL3_A::PIN0,
319 1 => EXTIPINSEL3_A::PIN1,
320 2 => EXTIPINSEL3_A::PIN2,
321 3 => EXTIPINSEL3_A::PIN3,
322 _ => unreachable!(),
323 }
324 }
325 #[doc = "Checks if the value of the field is `PIN0`"]
326 #[inline(always)]
327 pub fn is_pin0(&self) -> bool {
328 *self == EXTIPINSEL3_A::PIN0
329 }
330 #[doc = "Checks if the value of the field is `PIN1`"]
331 #[inline(always)]
332 pub fn is_pin1(&self) -> bool {
333 *self == EXTIPINSEL3_A::PIN1
334 }
335 #[doc = "Checks if the value of the field is `PIN2`"]
336 #[inline(always)]
337 pub fn is_pin2(&self) -> bool {
338 *self == EXTIPINSEL3_A::PIN2
339 }
340 #[doc = "Checks if the value of the field is `PIN3`"]
341 #[inline(always)]
342 pub fn is_pin3(&self) -> bool {
343 *self == EXTIPINSEL3_A::PIN3
344 }
345}
346#[doc = "Write proxy for field `EXTIPINSEL3`"]
347pub struct EXTIPINSEL3_W<'a> {
348 w: &'a mut W,
349}
350impl<'a> EXTIPINSEL3_W<'a> {
351 #[doc = r"Writes `variant` to the field"]
352 #[inline(always)]
353 pub fn variant(self, variant: EXTIPINSEL3_A) -> &'a mut W {
354 {
355 self.bits(variant.into())
356 }
357 }
358 #[doc = "Pin 0"]
359 #[inline(always)]
360 pub fn pin0(self) -> &'a mut W {
361 self.variant(EXTIPINSEL3_A::PIN0)
362 }
363 #[doc = "Pin 1"]
364 #[inline(always)]
365 pub fn pin1(self) -> &'a mut W {
366 self.variant(EXTIPINSEL3_A::PIN1)
367 }
368 #[doc = "Pin 2"]
369 #[inline(always)]
370 pub fn pin2(self) -> &'a mut W {
371 self.variant(EXTIPINSEL3_A::PIN2)
372 }
373 #[doc = "Pin 3"]
374 #[inline(always)]
375 pub fn pin3(self) -> &'a mut W {
376 self.variant(EXTIPINSEL3_A::PIN3)
377 }
378 #[doc = r"Writes raw bits to the field"]
379 #[inline(always)]
380 pub fn bits(self, value: u8) -> &'a mut W {
381 self.w.bits = (self.w.bits & !(0x03 << 12)) | (((value as u32) & 0x03) << 12);
382 self.w
383 }
384}
385#[doc = "External Interrupt 4 Pin Select\n\nValue on reset: 0"]
386#[derive(Clone, Copy, Debug, PartialEq)]
387#[repr(u8)]
388pub enum EXTIPINSEL4_A {
389 #[doc = "0: Pin 4"]
390 PIN4 = 0,
391 #[doc = "1: Pin 5"]
392 PIN5 = 1,
393 #[doc = "2: Pin 6"]
394 PIN6 = 2,
395 #[doc = "3: Pin 7"]
396 PIN7 = 3,
397}
398impl From<EXTIPINSEL4_A> for u8 {
399 #[inline(always)]
400 fn from(variant: EXTIPINSEL4_A) -> Self {
401 variant as _
402 }
403}
404#[doc = "Reader of field `EXTIPINSEL4`"]
405pub type EXTIPINSEL4_R = crate::R<u8, EXTIPINSEL4_A>;
406impl EXTIPINSEL4_R {
407 #[doc = r"Get enumerated values variant"]
408 #[inline(always)]
409 pub fn variant(&self) -> EXTIPINSEL4_A {
410 match self.bits {
411 0 => EXTIPINSEL4_A::PIN4,
412 1 => EXTIPINSEL4_A::PIN5,
413 2 => EXTIPINSEL4_A::PIN6,
414 3 => EXTIPINSEL4_A::PIN7,
415 _ => unreachable!(),
416 }
417 }
418 #[doc = "Checks if the value of the field is `PIN4`"]
419 #[inline(always)]
420 pub fn is_pin4(&self) -> bool {
421 *self == EXTIPINSEL4_A::PIN4
422 }
423 #[doc = "Checks if the value of the field is `PIN5`"]
424 #[inline(always)]
425 pub fn is_pin5(&self) -> bool {
426 *self == EXTIPINSEL4_A::PIN5
427 }
428 #[doc = "Checks if the value of the field is `PIN6`"]
429 #[inline(always)]
430 pub fn is_pin6(&self) -> bool {
431 *self == EXTIPINSEL4_A::PIN6
432 }
433 #[doc = "Checks if the value of the field is `PIN7`"]
434 #[inline(always)]
435 pub fn is_pin7(&self) -> bool {
436 *self == EXTIPINSEL4_A::PIN7
437 }
438}
439#[doc = "Write proxy for field `EXTIPINSEL4`"]
440pub struct EXTIPINSEL4_W<'a> {
441 w: &'a mut W,
442}
443impl<'a> EXTIPINSEL4_W<'a> {
444 #[doc = r"Writes `variant` to the field"]
445 #[inline(always)]
446 pub fn variant(self, variant: EXTIPINSEL4_A) -> &'a mut W {
447 {
448 self.bits(variant.into())
449 }
450 }
451 #[doc = "Pin 4"]
452 #[inline(always)]
453 pub fn pin4(self) -> &'a mut W {
454 self.variant(EXTIPINSEL4_A::PIN4)
455 }
456 #[doc = "Pin 5"]
457 #[inline(always)]
458 pub fn pin5(self) -> &'a mut W {
459 self.variant(EXTIPINSEL4_A::PIN5)
460 }
461 #[doc = "Pin 6"]
462 #[inline(always)]
463 pub fn pin6(self) -> &'a mut W {
464 self.variant(EXTIPINSEL4_A::PIN6)
465 }
466 #[doc = "Pin 7"]
467 #[inline(always)]
468 pub fn pin7(self) -> &'a mut W {
469 self.variant(EXTIPINSEL4_A::PIN7)
470 }
471 #[doc = r"Writes raw bits to the field"]
472 #[inline(always)]
473 pub fn bits(self, value: u8) -> &'a mut W {
474 self.w.bits = (self.w.bits & !(0x03 << 16)) | (((value as u32) & 0x03) << 16);
475 self.w
476 }
477}
478#[doc = "External Interrupt 5 Pin Select\n\nValue on reset: 1"]
479#[derive(Clone, Copy, Debug, PartialEq)]
480#[repr(u8)]
481pub enum EXTIPINSEL5_A {
482 #[doc = "0: Pin 4"]
483 PIN4 = 0,
484 #[doc = "1: Pin 5"]
485 PIN5 = 1,
486 #[doc = "2: Pin 6"]
487 PIN6 = 2,
488 #[doc = "3: Pin 7"]
489 PIN7 = 3,
490}
491impl From<EXTIPINSEL5_A> for u8 {
492 #[inline(always)]
493 fn from(variant: EXTIPINSEL5_A) -> Self {
494 variant as _
495 }
496}
497#[doc = "Reader of field `EXTIPINSEL5`"]
498pub type EXTIPINSEL5_R = crate::R<u8, EXTIPINSEL5_A>;
499impl EXTIPINSEL5_R {
500 #[doc = r"Get enumerated values variant"]
501 #[inline(always)]
502 pub fn variant(&self) -> EXTIPINSEL5_A {
503 match self.bits {
504 0 => EXTIPINSEL5_A::PIN4,
505 1 => EXTIPINSEL5_A::PIN5,
506 2 => EXTIPINSEL5_A::PIN6,
507 3 => EXTIPINSEL5_A::PIN7,
508 _ => unreachable!(),
509 }
510 }
511 #[doc = "Checks if the value of the field is `PIN4`"]
512 #[inline(always)]
513 pub fn is_pin4(&self) -> bool {
514 *self == EXTIPINSEL5_A::PIN4
515 }
516 #[doc = "Checks if the value of the field is `PIN5`"]
517 #[inline(always)]
518 pub fn is_pin5(&self) -> bool {
519 *self == EXTIPINSEL5_A::PIN5
520 }
521 #[doc = "Checks if the value of the field is `PIN6`"]
522 #[inline(always)]
523 pub fn is_pin6(&self) -> bool {
524 *self == EXTIPINSEL5_A::PIN6
525 }
526 #[doc = "Checks if the value of the field is `PIN7`"]
527 #[inline(always)]
528 pub fn is_pin7(&self) -> bool {
529 *self == EXTIPINSEL5_A::PIN7
530 }
531}
532#[doc = "Write proxy for field `EXTIPINSEL5`"]
533pub struct EXTIPINSEL5_W<'a> {
534 w: &'a mut W,
535}
536impl<'a> EXTIPINSEL5_W<'a> {
537 #[doc = r"Writes `variant` to the field"]
538 #[inline(always)]
539 pub fn variant(self, variant: EXTIPINSEL5_A) -> &'a mut W {
540 {
541 self.bits(variant.into())
542 }
543 }
544 #[doc = "Pin 4"]
545 #[inline(always)]
546 pub fn pin4(self) -> &'a mut W {
547 self.variant(EXTIPINSEL5_A::PIN4)
548 }
549 #[doc = "Pin 5"]
550 #[inline(always)]
551 pub fn pin5(self) -> &'a mut W {
552 self.variant(EXTIPINSEL5_A::PIN5)
553 }
554 #[doc = "Pin 6"]
555 #[inline(always)]
556 pub fn pin6(self) -> &'a mut W {
557 self.variant(EXTIPINSEL5_A::PIN6)
558 }
559 #[doc = "Pin 7"]
560 #[inline(always)]
561 pub fn pin7(self) -> &'a mut W {
562 self.variant(EXTIPINSEL5_A::PIN7)
563 }
564 #[doc = r"Writes raw bits to the field"]
565 #[inline(always)]
566 pub fn bits(self, value: u8) -> &'a mut W {
567 self.w.bits = (self.w.bits & !(0x03 << 20)) | (((value as u32) & 0x03) << 20);
568 self.w
569 }
570}
571#[doc = "External Interrupt 6 Pin Select\n\nValue on reset: 2"]
572#[derive(Clone, Copy, Debug, PartialEq)]
573#[repr(u8)]
574pub enum EXTIPINSEL6_A {
575 #[doc = "0: Pin 4"]
576 PIN4 = 0,
577 #[doc = "1: Pin 5"]
578 PIN5 = 1,
579 #[doc = "2: Pin 6"]
580 PIN6 = 2,
581 #[doc = "3: Pin 7"]
582 PIN7 = 3,
583}
584impl From<EXTIPINSEL6_A> for u8 {
585 #[inline(always)]
586 fn from(variant: EXTIPINSEL6_A) -> Self {
587 variant as _
588 }
589}
590#[doc = "Reader of field `EXTIPINSEL6`"]
591pub type EXTIPINSEL6_R = crate::R<u8, EXTIPINSEL6_A>;
592impl EXTIPINSEL6_R {
593 #[doc = r"Get enumerated values variant"]
594 #[inline(always)]
595 pub fn variant(&self) -> EXTIPINSEL6_A {
596 match self.bits {
597 0 => EXTIPINSEL6_A::PIN4,
598 1 => EXTIPINSEL6_A::PIN5,
599 2 => EXTIPINSEL6_A::PIN6,
600 3 => EXTIPINSEL6_A::PIN7,
601 _ => unreachable!(),
602 }
603 }
604 #[doc = "Checks if the value of the field is `PIN4`"]
605 #[inline(always)]
606 pub fn is_pin4(&self) -> bool {
607 *self == EXTIPINSEL6_A::PIN4
608 }
609 #[doc = "Checks if the value of the field is `PIN5`"]
610 #[inline(always)]
611 pub fn is_pin5(&self) -> bool {
612 *self == EXTIPINSEL6_A::PIN5
613 }
614 #[doc = "Checks if the value of the field is `PIN6`"]
615 #[inline(always)]
616 pub fn is_pin6(&self) -> bool {
617 *self == EXTIPINSEL6_A::PIN6
618 }
619 #[doc = "Checks if the value of the field is `PIN7`"]
620 #[inline(always)]
621 pub fn is_pin7(&self) -> bool {
622 *self == EXTIPINSEL6_A::PIN7
623 }
624}
625#[doc = "Write proxy for field `EXTIPINSEL6`"]
626pub struct EXTIPINSEL6_W<'a> {
627 w: &'a mut W,
628}
629impl<'a> EXTIPINSEL6_W<'a> {
630 #[doc = r"Writes `variant` to the field"]
631 #[inline(always)]
632 pub fn variant(self, variant: EXTIPINSEL6_A) -> &'a mut W {
633 {
634 self.bits(variant.into())
635 }
636 }
637 #[doc = "Pin 4"]
638 #[inline(always)]
639 pub fn pin4(self) -> &'a mut W {
640 self.variant(EXTIPINSEL6_A::PIN4)
641 }
642 #[doc = "Pin 5"]
643 #[inline(always)]
644 pub fn pin5(self) -> &'a mut W {
645 self.variant(EXTIPINSEL6_A::PIN5)
646 }
647 #[doc = "Pin 6"]
648 #[inline(always)]
649 pub fn pin6(self) -> &'a mut W {
650 self.variant(EXTIPINSEL6_A::PIN6)
651 }
652 #[doc = "Pin 7"]
653 #[inline(always)]
654 pub fn pin7(self) -> &'a mut W {
655 self.variant(EXTIPINSEL6_A::PIN7)
656 }
657 #[doc = r"Writes raw bits to the field"]
658 #[inline(always)]
659 pub fn bits(self, value: u8) -> &'a mut W {
660 self.w.bits = (self.w.bits & !(0x03 << 24)) | (((value as u32) & 0x03) << 24);
661 self.w
662 }
663}
664#[doc = "External Interrupt 7 Pin Select\n\nValue on reset: 3"]
665#[derive(Clone, Copy, Debug, PartialEq)]
666#[repr(u8)]
667pub enum EXTIPINSEL7_A {
668 #[doc = "0: Pin 4"]
669 PIN4 = 0,
670 #[doc = "1: Pin 5"]
671 PIN5 = 1,
672 #[doc = "2: Pin 6"]
673 PIN6 = 2,
674 #[doc = "3: Pin 7"]
675 PIN7 = 3,
676}
677impl From<EXTIPINSEL7_A> for u8 {
678 #[inline(always)]
679 fn from(variant: EXTIPINSEL7_A) -> Self {
680 variant as _
681 }
682}
683#[doc = "Reader of field `EXTIPINSEL7`"]
684pub type EXTIPINSEL7_R = crate::R<u8, EXTIPINSEL7_A>;
685impl EXTIPINSEL7_R {
686 #[doc = r"Get enumerated values variant"]
687 #[inline(always)]
688 pub fn variant(&self) -> EXTIPINSEL7_A {
689 match self.bits {
690 0 => EXTIPINSEL7_A::PIN4,
691 1 => EXTIPINSEL7_A::PIN5,
692 2 => EXTIPINSEL7_A::PIN6,
693 3 => EXTIPINSEL7_A::PIN7,
694 _ => unreachable!(),
695 }
696 }
697 #[doc = "Checks if the value of the field is `PIN4`"]
698 #[inline(always)]
699 pub fn is_pin4(&self) -> bool {
700 *self == EXTIPINSEL7_A::PIN4
701 }
702 #[doc = "Checks if the value of the field is `PIN5`"]
703 #[inline(always)]
704 pub fn is_pin5(&self) -> bool {
705 *self == EXTIPINSEL7_A::PIN5
706 }
707 #[doc = "Checks if the value of the field is `PIN6`"]
708 #[inline(always)]
709 pub fn is_pin6(&self) -> bool {
710 *self == EXTIPINSEL7_A::PIN6
711 }
712 #[doc = "Checks if the value of the field is `PIN7`"]
713 #[inline(always)]
714 pub fn is_pin7(&self) -> bool {
715 *self == EXTIPINSEL7_A::PIN7
716 }
717}
718#[doc = "Write proxy for field `EXTIPINSEL7`"]
719pub struct EXTIPINSEL7_W<'a> {
720 w: &'a mut W,
721}
722impl<'a> EXTIPINSEL7_W<'a> {
723 #[doc = r"Writes `variant` to the field"]
724 #[inline(always)]
725 pub fn variant(self, variant: EXTIPINSEL7_A) -> &'a mut W {
726 {
727 self.bits(variant.into())
728 }
729 }
730 #[doc = "Pin 4"]
731 #[inline(always)]
732 pub fn pin4(self) -> &'a mut W {
733 self.variant(EXTIPINSEL7_A::PIN4)
734 }
735 #[doc = "Pin 5"]
736 #[inline(always)]
737 pub fn pin5(self) -> &'a mut W {
738 self.variant(EXTIPINSEL7_A::PIN5)
739 }
740 #[doc = "Pin 6"]
741 #[inline(always)]
742 pub fn pin6(self) -> &'a mut W {
743 self.variant(EXTIPINSEL7_A::PIN6)
744 }
745 #[doc = "Pin 7"]
746 #[inline(always)]
747 pub fn pin7(self) -> &'a mut W {
748 self.variant(EXTIPINSEL7_A::PIN7)
749 }
750 #[doc = r"Writes raw bits to the field"]
751 #[inline(always)]
752 pub fn bits(self, value: u8) -> &'a mut W {
753 self.w.bits = (self.w.bits & !(0x03 << 28)) | (((value as u32) & 0x03) << 28);
754 self.w
755 }
756}
757impl R {
758 #[doc = "Bits 0:1 - External Interrupt 0 Pin Select"]
759 #[inline(always)]
760 pub fn extipinsel0(&self) -> EXTIPINSEL0_R {
761 EXTIPINSEL0_R::new((self.bits & 0x03) as u8)
762 }
763 #[doc = "Bits 4:5 - External Interrupt 1 Pin Select"]
764 #[inline(always)]
765 pub fn extipinsel1(&self) -> EXTIPINSEL1_R {
766 EXTIPINSEL1_R::new(((self.bits >> 4) & 0x03) as u8)
767 }
768 #[doc = "Bits 8:9 - External Interrupt 2 Pin Select"]
769 #[inline(always)]
770 pub fn extipinsel2(&self) -> EXTIPINSEL2_R {
771 EXTIPINSEL2_R::new(((self.bits >> 8) & 0x03) as u8)
772 }
773 #[doc = "Bits 12:13 - External Interrupt 3 Pin Select"]
774 #[inline(always)]
775 pub fn extipinsel3(&self) -> EXTIPINSEL3_R {
776 EXTIPINSEL3_R::new(((self.bits >> 12) & 0x03) as u8)
777 }
778 #[doc = "Bits 16:17 - External Interrupt 4 Pin Select"]
779 #[inline(always)]
780 pub fn extipinsel4(&self) -> EXTIPINSEL4_R {
781 EXTIPINSEL4_R::new(((self.bits >> 16) & 0x03) as u8)
782 }
783 #[doc = "Bits 20:21 - External Interrupt 5 Pin Select"]
784 #[inline(always)]
785 pub fn extipinsel5(&self) -> EXTIPINSEL5_R {
786 EXTIPINSEL5_R::new(((self.bits >> 20) & 0x03) as u8)
787 }
788 #[doc = "Bits 24:25 - External Interrupt 6 Pin Select"]
789 #[inline(always)]
790 pub fn extipinsel6(&self) -> EXTIPINSEL6_R {
791 EXTIPINSEL6_R::new(((self.bits >> 24) & 0x03) as u8)
792 }
793 #[doc = "Bits 28:29 - External Interrupt 7 Pin Select"]
794 #[inline(always)]
795 pub fn extipinsel7(&self) -> EXTIPINSEL7_R {
796 EXTIPINSEL7_R::new(((self.bits >> 28) & 0x03) as u8)
797 }
798}
799impl W {
800 #[doc = "Bits 0:1 - External Interrupt 0 Pin Select"]
801 #[inline(always)]
802 pub fn extipinsel0(&mut self) -> EXTIPINSEL0_W {
803 EXTIPINSEL0_W { w: self }
804 }
805 #[doc = "Bits 4:5 - External Interrupt 1 Pin Select"]
806 #[inline(always)]
807 pub fn extipinsel1(&mut self) -> EXTIPINSEL1_W {
808 EXTIPINSEL1_W { w: self }
809 }
810 #[doc = "Bits 8:9 - External Interrupt 2 Pin Select"]
811 #[inline(always)]
812 pub fn extipinsel2(&mut self) -> EXTIPINSEL2_W {
813 EXTIPINSEL2_W { w: self }
814 }
815 #[doc = "Bits 12:13 - External Interrupt 3 Pin Select"]
816 #[inline(always)]
817 pub fn extipinsel3(&mut self) -> EXTIPINSEL3_W {
818 EXTIPINSEL3_W { w: self }
819 }
820 #[doc = "Bits 16:17 - External Interrupt 4 Pin Select"]
821 #[inline(always)]
822 pub fn extipinsel4(&mut self) -> EXTIPINSEL4_W {
823 EXTIPINSEL4_W { w: self }
824 }
825 #[doc = "Bits 20:21 - External Interrupt 5 Pin Select"]
826 #[inline(always)]
827 pub fn extipinsel5(&mut self) -> EXTIPINSEL5_W {
828 EXTIPINSEL5_W { w: self }
829 }
830 #[doc = "Bits 24:25 - External Interrupt 6 Pin Select"]
831 #[inline(always)]
832 pub fn extipinsel6(&mut self) -> EXTIPINSEL6_W {
833 EXTIPINSEL6_W { w: self }
834 }
835 #[doc = "Bits 28:29 - External Interrupt 7 Pin Select"]
836 #[inline(always)]
837 pub fn extipinsel7(&mut self) -> EXTIPINSEL7_W {
838 EXTIPINSEL7_W { w: self }
839 }
840}