1#[doc = "Register `EXTIPSELL` reader"]
2pub struct R(crate::R<EXTIPSELL_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<EXTIPSELL_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<EXTIPSELL_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<EXTIPSELL_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `EXTIPSELL` writer"]
17pub struct W(crate::W<EXTIPSELL_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<EXTIPSELL_SPEC>;
20 #[inline(always)]
21 fn deref(&self) -> &Self::Target {
22 &self.0
23 }
24}
25impl core::ops::DerefMut for W {
26 #[inline(always)]
27 fn deref_mut(&mut self) -> &mut Self::Target {
28 &mut self.0
29 }
30}
31impl From<crate::W<EXTIPSELL_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<EXTIPSELL_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Field `EXTIPSEL0` reader - External Interrupt 0 Port Select"]
38pub type EXTIPSEL0_R = crate::FieldReader<u8, EXTIPSEL0_A>;
39#[doc = "External Interrupt 0 Port Select\n\nValue on reset: 0"]
40#[derive(Clone, Copy, Debug, PartialEq, Eq)]
41#[repr(u8)]
42pub enum EXTIPSEL0_A {
43 #[doc = "0: Port A group selected for external interrupt 0"]
44 PORTA = 0,
45 #[doc = "1: Port B group selected for external interrupt 0"]
46 PORTB = 1,
47 #[doc = "2: Port C group selected for external interrupt 0"]
48 PORTC = 2,
49 #[doc = "3: Port D group selected for external interrupt 0"]
50 PORTD = 3,
51 #[doc = "5: Port F group selected for external interrupt 0"]
52 PORTF = 5,
53 #[doc = "8: Port I group selected for external interrupt 0"]
54 PORTI = 8,
55 #[doc = "9: Port J group selected for external interrupt 0"]
56 PORTJ = 9,
57 #[doc = "10: Port K group selected for external interrupt 0"]
58 PORTK = 10,
59}
60impl From<EXTIPSEL0_A> for u8 {
61 #[inline(always)]
62 fn from(variant: EXTIPSEL0_A) -> Self {
63 variant as _
64 }
65}
66impl EXTIPSEL0_R {
67 #[doc = "Get enumerated values variant"]
68 #[inline(always)]
69 pub fn variant(&self) -> Option<EXTIPSEL0_A> {
70 match self.bits {
71 0 => Some(EXTIPSEL0_A::PORTA),
72 1 => Some(EXTIPSEL0_A::PORTB),
73 2 => Some(EXTIPSEL0_A::PORTC),
74 3 => Some(EXTIPSEL0_A::PORTD),
75 5 => Some(EXTIPSEL0_A::PORTF),
76 8 => Some(EXTIPSEL0_A::PORTI),
77 9 => Some(EXTIPSEL0_A::PORTJ),
78 10 => Some(EXTIPSEL0_A::PORTK),
79 _ => None,
80 }
81 }
82 #[doc = "Checks if the value of the field is `PORTA`"]
83 #[inline(always)]
84 pub fn is_porta(&self) -> bool {
85 *self == EXTIPSEL0_A::PORTA
86 }
87 #[doc = "Checks if the value of the field is `PORTB`"]
88 #[inline(always)]
89 pub fn is_portb(&self) -> bool {
90 *self == EXTIPSEL0_A::PORTB
91 }
92 #[doc = "Checks if the value of the field is `PORTC`"]
93 #[inline(always)]
94 pub fn is_portc(&self) -> bool {
95 *self == EXTIPSEL0_A::PORTC
96 }
97 #[doc = "Checks if the value of the field is `PORTD`"]
98 #[inline(always)]
99 pub fn is_portd(&self) -> bool {
100 *self == EXTIPSEL0_A::PORTD
101 }
102 #[doc = "Checks if the value of the field is `PORTF`"]
103 #[inline(always)]
104 pub fn is_portf(&self) -> bool {
105 *self == EXTIPSEL0_A::PORTF
106 }
107 #[doc = "Checks if the value of the field is `PORTI`"]
108 #[inline(always)]
109 pub fn is_porti(&self) -> bool {
110 *self == EXTIPSEL0_A::PORTI
111 }
112 #[doc = "Checks if the value of the field is `PORTJ`"]
113 #[inline(always)]
114 pub fn is_portj(&self) -> bool {
115 *self == EXTIPSEL0_A::PORTJ
116 }
117 #[doc = "Checks if the value of the field is `PORTK`"]
118 #[inline(always)]
119 pub fn is_portk(&self) -> bool {
120 *self == EXTIPSEL0_A::PORTK
121 }
122}
123#[doc = "Field `EXTIPSEL0` writer - External Interrupt 0 Port Select"]
124pub type EXTIPSEL0_W<'a, const O: u8> =
125 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL0_A, 4, O>;
126impl<'a, const O: u8> EXTIPSEL0_W<'a, O> {
127 #[doc = "Port A group selected for external interrupt 0"]
128 #[inline(always)]
129 pub fn porta(self) -> &'a mut W {
130 self.variant(EXTIPSEL0_A::PORTA)
131 }
132 #[doc = "Port B group selected for external interrupt 0"]
133 #[inline(always)]
134 pub fn portb(self) -> &'a mut W {
135 self.variant(EXTIPSEL0_A::PORTB)
136 }
137 #[doc = "Port C group selected for external interrupt 0"]
138 #[inline(always)]
139 pub fn portc(self) -> &'a mut W {
140 self.variant(EXTIPSEL0_A::PORTC)
141 }
142 #[doc = "Port D group selected for external interrupt 0"]
143 #[inline(always)]
144 pub fn portd(self) -> &'a mut W {
145 self.variant(EXTIPSEL0_A::PORTD)
146 }
147 #[doc = "Port F group selected for external interrupt 0"]
148 #[inline(always)]
149 pub fn portf(self) -> &'a mut W {
150 self.variant(EXTIPSEL0_A::PORTF)
151 }
152 #[doc = "Port I group selected for external interrupt 0"]
153 #[inline(always)]
154 pub fn porti(self) -> &'a mut W {
155 self.variant(EXTIPSEL0_A::PORTI)
156 }
157 #[doc = "Port J group selected for external interrupt 0"]
158 #[inline(always)]
159 pub fn portj(self) -> &'a mut W {
160 self.variant(EXTIPSEL0_A::PORTJ)
161 }
162 #[doc = "Port K group selected for external interrupt 0"]
163 #[inline(always)]
164 pub fn portk(self) -> &'a mut W {
165 self.variant(EXTIPSEL0_A::PORTK)
166 }
167}
168#[doc = "Field `EXTIPSEL1` reader - External Interrupt 1 Port Select"]
169pub type EXTIPSEL1_R = crate::FieldReader<u8, EXTIPSEL1_A>;
170#[doc = "External Interrupt 1 Port Select\n\nValue on reset: 0"]
171#[derive(Clone, Copy, Debug, PartialEq, Eq)]
172#[repr(u8)]
173pub enum EXTIPSEL1_A {
174 #[doc = "0: Port A group selected for external interrupt 1"]
175 PORTA = 0,
176 #[doc = "1: Port B group selected for external interrupt 1"]
177 PORTB = 1,
178 #[doc = "2: Port C group selected for external interrupt 1"]
179 PORTC = 2,
180 #[doc = "3: Port D group selected for external interrupt 1"]
181 PORTD = 3,
182 #[doc = "5: Port F group selected for external interrupt 1"]
183 PORTF = 5,
184 #[doc = "8: Port I group selected for external interrupt 1"]
185 PORTI = 8,
186 #[doc = "9: Port J group selected for external interrupt 1"]
187 PORTJ = 9,
188 #[doc = "10: Port K group selected for external interrupt 1"]
189 PORTK = 10,
190}
191impl From<EXTIPSEL1_A> for u8 {
192 #[inline(always)]
193 fn from(variant: EXTIPSEL1_A) -> Self {
194 variant as _
195 }
196}
197impl EXTIPSEL1_R {
198 #[doc = "Get enumerated values variant"]
199 #[inline(always)]
200 pub fn variant(&self) -> Option<EXTIPSEL1_A> {
201 match self.bits {
202 0 => Some(EXTIPSEL1_A::PORTA),
203 1 => Some(EXTIPSEL1_A::PORTB),
204 2 => Some(EXTIPSEL1_A::PORTC),
205 3 => Some(EXTIPSEL1_A::PORTD),
206 5 => Some(EXTIPSEL1_A::PORTF),
207 8 => Some(EXTIPSEL1_A::PORTI),
208 9 => Some(EXTIPSEL1_A::PORTJ),
209 10 => Some(EXTIPSEL1_A::PORTK),
210 _ => None,
211 }
212 }
213 #[doc = "Checks if the value of the field is `PORTA`"]
214 #[inline(always)]
215 pub fn is_porta(&self) -> bool {
216 *self == EXTIPSEL1_A::PORTA
217 }
218 #[doc = "Checks if the value of the field is `PORTB`"]
219 #[inline(always)]
220 pub fn is_portb(&self) -> bool {
221 *self == EXTIPSEL1_A::PORTB
222 }
223 #[doc = "Checks if the value of the field is `PORTC`"]
224 #[inline(always)]
225 pub fn is_portc(&self) -> bool {
226 *self == EXTIPSEL1_A::PORTC
227 }
228 #[doc = "Checks if the value of the field is `PORTD`"]
229 #[inline(always)]
230 pub fn is_portd(&self) -> bool {
231 *self == EXTIPSEL1_A::PORTD
232 }
233 #[doc = "Checks if the value of the field is `PORTF`"]
234 #[inline(always)]
235 pub fn is_portf(&self) -> bool {
236 *self == EXTIPSEL1_A::PORTF
237 }
238 #[doc = "Checks if the value of the field is `PORTI`"]
239 #[inline(always)]
240 pub fn is_porti(&self) -> bool {
241 *self == EXTIPSEL1_A::PORTI
242 }
243 #[doc = "Checks if the value of the field is `PORTJ`"]
244 #[inline(always)]
245 pub fn is_portj(&self) -> bool {
246 *self == EXTIPSEL1_A::PORTJ
247 }
248 #[doc = "Checks if the value of the field is `PORTK`"]
249 #[inline(always)]
250 pub fn is_portk(&self) -> bool {
251 *self == EXTIPSEL1_A::PORTK
252 }
253}
254#[doc = "Field `EXTIPSEL1` writer - External Interrupt 1 Port Select"]
255pub type EXTIPSEL1_W<'a, const O: u8> =
256 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL1_A, 4, O>;
257impl<'a, const O: u8> EXTIPSEL1_W<'a, O> {
258 #[doc = "Port A group selected for external interrupt 1"]
259 #[inline(always)]
260 pub fn porta(self) -> &'a mut W {
261 self.variant(EXTIPSEL1_A::PORTA)
262 }
263 #[doc = "Port B group selected for external interrupt 1"]
264 #[inline(always)]
265 pub fn portb(self) -> &'a mut W {
266 self.variant(EXTIPSEL1_A::PORTB)
267 }
268 #[doc = "Port C group selected for external interrupt 1"]
269 #[inline(always)]
270 pub fn portc(self) -> &'a mut W {
271 self.variant(EXTIPSEL1_A::PORTC)
272 }
273 #[doc = "Port D group selected for external interrupt 1"]
274 #[inline(always)]
275 pub fn portd(self) -> &'a mut W {
276 self.variant(EXTIPSEL1_A::PORTD)
277 }
278 #[doc = "Port F group selected for external interrupt 1"]
279 #[inline(always)]
280 pub fn portf(self) -> &'a mut W {
281 self.variant(EXTIPSEL1_A::PORTF)
282 }
283 #[doc = "Port I group selected for external interrupt 1"]
284 #[inline(always)]
285 pub fn porti(self) -> &'a mut W {
286 self.variant(EXTIPSEL1_A::PORTI)
287 }
288 #[doc = "Port J group selected for external interrupt 1"]
289 #[inline(always)]
290 pub fn portj(self) -> &'a mut W {
291 self.variant(EXTIPSEL1_A::PORTJ)
292 }
293 #[doc = "Port K group selected for external interrupt 1"]
294 #[inline(always)]
295 pub fn portk(self) -> &'a mut W {
296 self.variant(EXTIPSEL1_A::PORTK)
297 }
298}
299#[doc = "Field `EXTIPSEL2` reader - External Interrupt 2 Port Select"]
300pub type EXTIPSEL2_R = crate::FieldReader<u8, EXTIPSEL2_A>;
301#[doc = "External Interrupt 2 Port Select\n\nValue on reset: 0"]
302#[derive(Clone, Copy, Debug, PartialEq, Eq)]
303#[repr(u8)]
304pub enum EXTIPSEL2_A {
305 #[doc = "0: Port A group selected for external interrupt 2"]
306 PORTA = 0,
307 #[doc = "1: Port B group selected for external interrupt 2"]
308 PORTB = 1,
309 #[doc = "2: Port C group selected for external interrupt 2"]
310 PORTC = 2,
311 #[doc = "3: Port D group selected for external interrupt 2"]
312 PORTD = 3,
313 #[doc = "5: Port F group selected for external interrupt 2"]
314 PORTF = 5,
315 #[doc = "8: Port I group selected for external interrupt 2"]
316 PORTI = 8,
317 #[doc = "9: Port J group selected for external interrupt 2"]
318 PORTJ = 9,
319 #[doc = "10: Port K group selected for external interrupt 2"]
320 PORTK = 10,
321}
322impl From<EXTIPSEL2_A> for u8 {
323 #[inline(always)]
324 fn from(variant: EXTIPSEL2_A) -> Self {
325 variant as _
326 }
327}
328impl EXTIPSEL2_R {
329 #[doc = "Get enumerated values variant"]
330 #[inline(always)]
331 pub fn variant(&self) -> Option<EXTIPSEL2_A> {
332 match self.bits {
333 0 => Some(EXTIPSEL2_A::PORTA),
334 1 => Some(EXTIPSEL2_A::PORTB),
335 2 => Some(EXTIPSEL2_A::PORTC),
336 3 => Some(EXTIPSEL2_A::PORTD),
337 5 => Some(EXTIPSEL2_A::PORTF),
338 8 => Some(EXTIPSEL2_A::PORTI),
339 9 => Some(EXTIPSEL2_A::PORTJ),
340 10 => Some(EXTIPSEL2_A::PORTK),
341 _ => None,
342 }
343 }
344 #[doc = "Checks if the value of the field is `PORTA`"]
345 #[inline(always)]
346 pub fn is_porta(&self) -> bool {
347 *self == EXTIPSEL2_A::PORTA
348 }
349 #[doc = "Checks if the value of the field is `PORTB`"]
350 #[inline(always)]
351 pub fn is_portb(&self) -> bool {
352 *self == EXTIPSEL2_A::PORTB
353 }
354 #[doc = "Checks if the value of the field is `PORTC`"]
355 #[inline(always)]
356 pub fn is_portc(&self) -> bool {
357 *self == EXTIPSEL2_A::PORTC
358 }
359 #[doc = "Checks if the value of the field is `PORTD`"]
360 #[inline(always)]
361 pub fn is_portd(&self) -> bool {
362 *self == EXTIPSEL2_A::PORTD
363 }
364 #[doc = "Checks if the value of the field is `PORTF`"]
365 #[inline(always)]
366 pub fn is_portf(&self) -> bool {
367 *self == EXTIPSEL2_A::PORTF
368 }
369 #[doc = "Checks if the value of the field is `PORTI`"]
370 #[inline(always)]
371 pub fn is_porti(&self) -> bool {
372 *self == EXTIPSEL2_A::PORTI
373 }
374 #[doc = "Checks if the value of the field is `PORTJ`"]
375 #[inline(always)]
376 pub fn is_portj(&self) -> bool {
377 *self == EXTIPSEL2_A::PORTJ
378 }
379 #[doc = "Checks if the value of the field is `PORTK`"]
380 #[inline(always)]
381 pub fn is_portk(&self) -> bool {
382 *self == EXTIPSEL2_A::PORTK
383 }
384}
385#[doc = "Field `EXTIPSEL2` writer - External Interrupt 2 Port Select"]
386pub type EXTIPSEL2_W<'a, const O: u8> =
387 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL2_A, 4, O>;
388impl<'a, const O: u8> EXTIPSEL2_W<'a, O> {
389 #[doc = "Port A group selected for external interrupt 2"]
390 #[inline(always)]
391 pub fn porta(self) -> &'a mut W {
392 self.variant(EXTIPSEL2_A::PORTA)
393 }
394 #[doc = "Port B group selected for external interrupt 2"]
395 #[inline(always)]
396 pub fn portb(self) -> &'a mut W {
397 self.variant(EXTIPSEL2_A::PORTB)
398 }
399 #[doc = "Port C group selected for external interrupt 2"]
400 #[inline(always)]
401 pub fn portc(self) -> &'a mut W {
402 self.variant(EXTIPSEL2_A::PORTC)
403 }
404 #[doc = "Port D group selected for external interrupt 2"]
405 #[inline(always)]
406 pub fn portd(self) -> &'a mut W {
407 self.variant(EXTIPSEL2_A::PORTD)
408 }
409 #[doc = "Port F group selected for external interrupt 2"]
410 #[inline(always)]
411 pub fn portf(self) -> &'a mut W {
412 self.variant(EXTIPSEL2_A::PORTF)
413 }
414 #[doc = "Port I group selected for external interrupt 2"]
415 #[inline(always)]
416 pub fn porti(self) -> &'a mut W {
417 self.variant(EXTIPSEL2_A::PORTI)
418 }
419 #[doc = "Port J group selected for external interrupt 2"]
420 #[inline(always)]
421 pub fn portj(self) -> &'a mut W {
422 self.variant(EXTIPSEL2_A::PORTJ)
423 }
424 #[doc = "Port K group selected for external interrupt 2"]
425 #[inline(always)]
426 pub fn portk(self) -> &'a mut W {
427 self.variant(EXTIPSEL2_A::PORTK)
428 }
429}
430#[doc = "Field `EXTIPSEL3` reader - External Interrupt 3 Port Select"]
431pub type EXTIPSEL3_R = crate::FieldReader<u8, EXTIPSEL3_A>;
432#[doc = "External Interrupt 3 Port Select\n\nValue on reset: 0"]
433#[derive(Clone, Copy, Debug, PartialEq, Eq)]
434#[repr(u8)]
435pub enum EXTIPSEL3_A {
436 #[doc = "0: Port A group selected for external interrupt 3"]
437 PORTA = 0,
438 #[doc = "1: Port B group selected for external interrupt 3"]
439 PORTB = 1,
440 #[doc = "2: Port C group selected for external interrupt 3"]
441 PORTC = 2,
442 #[doc = "3: Port D group selected for external interrupt 3"]
443 PORTD = 3,
444 #[doc = "5: Port F group selected for external interrupt 3"]
445 PORTF = 5,
446 #[doc = "8: Port I group selected for external interrupt 3"]
447 PORTI = 8,
448 #[doc = "9: Port J group selected for external interrupt 3"]
449 PORTJ = 9,
450 #[doc = "10: Port K group selected for external interrupt 3"]
451 PORTK = 10,
452}
453impl From<EXTIPSEL3_A> for u8 {
454 #[inline(always)]
455 fn from(variant: EXTIPSEL3_A) -> Self {
456 variant as _
457 }
458}
459impl EXTIPSEL3_R {
460 #[doc = "Get enumerated values variant"]
461 #[inline(always)]
462 pub fn variant(&self) -> Option<EXTIPSEL3_A> {
463 match self.bits {
464 0 => Some(EXTIPSEL3_A::PORTA),
465 1 => Some(EXTIPSEL3_A::PORTB),
466 2 => Some(EXTIPSEL3_A::PORTC),
467 3 => Some(EXTIPSEL3_A::PORTD),
468 5 => Some(EXTIPSEL3_A::PORTF),
469 8 => Some(EXTIPSEL3_A::PORTI),
470 9 => Some(EXTIPSEL3_A::PORTJ),
471 10 => Some(EXTIPSEL3_A::PORTK),
472 _ => None,
473 }
474 }
475 #[doc = "Checks if the value of the field is `PORTA`"]
476 #[inline(always)]
477 pub fn is_porta(&self) -> bool {
478 *self == EXTIPSEL3_A::PORTA
479 }
480 #[doc = "Checks if the value of the field is `PORTB`"]
481 #[inline(always)]
482 pub fn is_portb(&self) -> bool {
483 *self == EXTIPSEL3_A::PORTB
484 }
485 #[doc = "Checks if the value of the field is `PORTC`"]
486 #[inline(always)]
487 pub fn is_portc(&self) -> bool {
488 *self == EXTIPSEL3_A::PORTC
489 }
490 #[doc = "Checks if the value of the field is `PORTD`"]
491 #[inline(always)]
492 pub fn is_portd(&self) -> bool {
493 *self == EXTIPSEL3_A::PORTD
494 }
495 #[doc = "Checks if the value of the field is `PORTF`"]
496 #[inline(always)]
497 pub fn is_portf(&self) -> bool {
498 *self == EXTIPSEL3_A::PORTF
499 }
500 #[doc = "Checks if the value of the field is `PORTI`"]
501 #[inline(always)]
502 pub fn is_porti(&self) -> bool {
503 *self == EXTIPSEL3_A::PORTI
504 }
505 #[doc = "Checks if the value of the field is `PORTJ`"]
506 #[inline(always)]
507 pub fn is_portj(&self) -> bool {
508 *self == EXTIPSEL3_A::PORTJ
509 }
510 #[doc = "Checks if the value of the field is `PORTK`"]
511 #[inline(always)]
512 pub fn is_portk(&self) -> bool {
513 *self == EXTIPSEL3_A::PORTK
514 }
515}
516#[doc = "Field `EXTIPSEL3` writer - External Interrupt 3 Port Select"]
517pub type EXTIPSEL3_W<'a, const O: u8> =
518 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL3_A, 4, O>;
519impl<'a, const O: u8> EXTIPSEL3_W<'a, O> {
520 #[doc = "Port A group selected for external interrupt 3"]
521 #[inline(always)]
522 pub fn porta(self) -> &'a mut W {
523 self.variant(EXTIPSEL3_A::PORTA)
524 }
525 #[doc = "Port B group selected for external interrupt 3"]
526 #[inline(always)]
527 pub fn portb(self) -> &'a mut W {
528 self.variant(EXTIPSEL3_A::PORTB)
529 }
530 #[doc = "Port C group selected for external interrupt 3"]
531 #[inline(always)]
532 pub fn portc(self) -> &'a mut W {
533 self.variant(EXTIPSEL3_A::PORTC)
534 }
535 #[doc = "Port D group selected for external interrupt 3"]
536 #[inline(always)]
537 pub fn portd(self) -> &'a mut W {
538 self.variant(EXTIPSEL3_A::PORTD)
539 }
540 #[doc = "Port F group selected for external interrupt 3"]
541 #[inline(always)]
542 pub fn portf(self) -> &'a mut W {
543 self.variant(EXTIPSEL3_A::PORTF)
544 }
545 #[doc = "Port I group selected for external interrupt 3"]
546 #[inline(always)]
547 pub fn porti(self) -> &'a mut W {
548 self.variant(EXTIPSEL3_A::PORTI)
549 }
550 #[doc = "Port J group selected for external interrupt 3"]
551 #[inline(always)]
552 pub fn portj(self) -> &'a mut W {
553 self.variant(EXTIPSEL3_A::PORTJ)
554 }
555 #[doc = "Port K group selected for external interrupt 3"]
556 #[inline(always)]
557 pub fn portk(self) -> &'a mut W {
558 self.variant(EXTIPSEL3_A::PORTK)
559 }
560}
561#[doc = "Field `EXTIPSEL4` reader - External Interrupt 4 Port Select"]
562pub type EXTIPSEL4_R = crate::FieldReader<u8, EXTIPSEL4_A>;
563#[doc = "External Interrupt 4 Port Select\n\nValue on reset: 0"]
564#[derive(Clone, Copy, Debug, PartialEq, Eq)]
565#[repr(u8)]
566pub enum EXTIPSEL4_A {
567 #[doc = "0: Port A group selected for external interrupt 4"]
568 PORTA = 0,
569 #[doc = "1: Port B group selected for external interrupt 4"]
570 PORTB = 1,
571 #[doc = "2: Port C group selected for external interrupt 4"]
572 PORTC = 2,
573 #[doc = "3: Port D group selected for external interrupt 4"]
574 PORTD = 3,
575 #[doc = "5: Port F group selected for external interrupt 4"]
576 PORTF = 5,
577 #[doc = "8: Port I group selected for external interrupt 4"]
578 PORTI = 8,
579 #[doc = "9: Port J group selected for external interrupt 4"]
580 PORTJ = 9,
581 #[doc = "10: Port K group selected for external interrupt 4"]
582 PORTK = 10,
583}
584impl From<EXTIPSEL4_A> for u8 {
585 #[inline(always)]
586 fn from(variant: EXTIPSEL4_A) -> Self {
587 variant as _
588 }
589}
590impl EXTIPSEL4_R {
591 #[doc = "Get enumerated values variant"]
592 #[inline(always)]
593 pub fn variant(&self) -> Option<EXTIPSEL4_A> {
594 match self.bits {
595 0 => Some(EXTIPSEL4_A::PORTA),
596 1 => Some(EXTIPSEL4_A::PORTB),
597 2 => Some(EXTIPSEL4_A::PORTC),
598 3 => Some(EXTIPSEL4_A::PORTD),
599 5 => Some(EXTIPSEL4_A::PORTF),
600 8 => Some(EXTIPSEL4_A::PORTI),
601 9 => Some(EXTIPSEL4_A::PORTJ),
602 10 => Some(EXTIPSEL4_A::PORTK),
603 _ => None,
604 }
605 }
606 #[doc = "Checks if the value of the field is `PORTA`"]
607 #[inline(always)]
608 pub fn is_porta(&self) -> bool {
609 *self == EXTIPSEL4_A::PORTA
610 }
611 #[doc = "Checks if the value of the field is `PORTB`"]
612 #[inline(always)]
613 pub fn is_portb(&self) -> bool {
614 *self == EXTIPSEL4_A::PORTB
615 }
616 #[doc = "Checks if the value of the field is `PORTC`"]
617 #[inline(always)]
618 pub fn is_portc(&self) -> bool {
619 *self == EXTIPSEL4_A::PORTC
620 }
621 #[doc = "Checks if the value of the field is `PORTD`"]
622 #[inline(always)]
623 pub fn is_portd(&self) -> bool {
624 *self == EXTIPSEL4_A::PORTD
625 }
626 #[doc = "Checks if the value of the field is `PORTF`"]
627 #[inline(always)]
628 pub fn is_portf(&self) -> bool {
629 *self == EXTIPSEL4_A::PORTF
630 }
631 #[doc = "Checks if the value of the field is `PORTI`"]
632 #[inline(always)]
633 pub fn is_porti(&self) -> bool {
634 *self == EXTIPSEL4_A::PORTI
635 }
636 #[doc = "Checks if the value of the field is `PORTJ`"]
637 #[inline(always)]
638 pub fn is_portj(&self) -> bool {
639 *self == EXTIPSEL4_A::PORTJ
640 }
641 #[doc = "Checks if the value of the field is `PORTK`"]
642 #[inline(always)]
643 pub fn is_portk(&self) -> bool {
644 *self == EXTIPSEL4_A::PORTK
645 }
646}
647#[doc = "Field `EXTIPSEL4` writer - External Interrupt 4 Port Select"]
648pub type EXTIPSEL4_W<'a, const O: u8> =
649 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL4_A, 4, O>;
650impl<'a, const O: u8> EXTIPSEL4_W<'a, O> {
651 #[doc = "Port A group selected for external interrupt 4"]
652 #[inline(always)]
653 pub fn porta(self) -> &'a mut W {
654 self.variant(EXTIPSEL4_A::PORTA)
655 }
656 #[doc = "Port B group selected for external interrupt 4"]
657 #[inline(always)]
658 pub fn portb(self) -> &'a mut W {
659 self.variant(EXTIPSEL4_A::PORTB)
660 }
661 #[doc = "Port C group selected for external interrupt 4"]
662 #[inline(always)]
663 pub fn portc(self) -> &'a mut W {
664 self.variant(EXTIPSEL4_A::PORTC)
665 }
666 #[doc = "Port D group selected for external interrupt 4"]
667 #[inline(always)]
668 pub fn portd(self) -> &'a mut W {
669 self.variant(EXTIPSEL4_A::PORTD)
670 }
671 #[doc = "Port F group selected for external interrupt 4"]
672 #[inline(always)]
673 pub fn portf(self) -> &'a mut W {
674 self.variant(EXTIPSEL4_A::PORTF)
675 }
676 #[doc = "Port I group selected for external interrupt 4"]
677 #[inline(always)]
678 pub fn porti(self) -> &'a mut W {
679 self.variant(EXTIPSEL4_A::PORTI)
680 }
681 #[doc = "Port J group selected for external interrupt 4"]
682 #[inline(always)]
683 pub fn portj(self) -> &'a mut W {
684 self.variant(EXTIPSEL4_A::PORTJ)
685 }
686 #[doc = "Port K group selected for external interrupt 4"]
687 #[inline(always)]
688 pub fn portk(self) -> &'a mut W {
689 self.variant(EXTIPSEL4_A::PORTK)
690 }
691}
692#[doc = "Field `EXTIPSEL5` reader - External Interrupt 5 Port Select"]
693pub type EXTIPSEL5_R = crate::FieldReader<u8, EXTIPSEL5_A>;
694#[doc = "External Interrupt 5 Port Select\n\nValue on reset: 0"]
695#[derive(Clone, Copy, Debug, PartialEq, Eq)]
696#[repr(u8)]
697pub enum EXTIPSEL5_A {
698 #[doc = "0: Port A group selected for external interrupt 5"]
699 PORTA = 0,
700 #[doc = "1: Port B group selected for external interrupt 5"]
701 PORTB = 1,
702 #[doc = "2: Port C group selected for external interrupt 5"]
703 PORTC = 2,
704 #[doc = "3: Port D group selected for external interrupt 5"]
705 PORTD = 3,
706 #[doc = "5: Port F group selected for external interrupt 5"]
707 PORTF = 5,
708 #[doc = "8: Port I group selected for external interrupt 5"]
709 PORTI = 8,
710 #[doc = "9: Port J group selected for external interrupt 5"]
711 PORTJ = 9,
712 #[doc = "10: Port K group selected for external interrupt 5"]
713 PORTK = 10,
714}
715impl From<EXTIPSEL5_A> for u8 {
716 #[inline(always)]
717 fn from(variant: EXTIPSEL5_A) -> Self {
718 variant as _
719 }
720}
721impl EXTIPSEL5_R {
722 #[doc = "Get enumerated values variant"]
723 #[inline(always)]
724 pub fn variant(&self) -> Option<EXTIPSEL5_A> {
725 match self.bits {
726 0 => Some(EXTIPSEL5_A::PORTA),
727 1 => Some(EXTIPSEL5_A::PORTB),
728 2 => Some(EXTIPSEL5_A::PORTC),
729 3 => Some(EXTIPSEL5_A::PORTD),
730 5 => Some(EXTIPSEL5_A::PORTF),
731 8 => Some(EXTIPSEL5_A::PORTI),
732 9 => Some(EXTIPSEL5_A::PORTJ),
733 10 => Some(EXTIPSEL5_A::PORTK),
734 _ => None,
735 }
736 }
737 #[doc = "Checks if the value of the field is `PORTA`"]
738 #[inline(always)]
739 pub fn is_porta(&self) -> bool {
740 *self == EXTIPSEL5_A::PORTA
741 }
742 #[doc = "Checks if the value of the field is `PORTB`"]
743 #[inline(always)]
744 pub fn is_portb(&self) -> bool {
745 *self == EXTIPSEL5_A::PORTB
746 }
747 #[doc = "Checks if the value of the field is `PORTC`"]
748 #[inline(always)]
749 pub fn is_portc(&self) -> bool {
750 *self == EXTIPSEL5_A::PORTC
751 }
752 #[doc = "Checks if the value of the field is `PORTD`"]
753 #[inline(always)]
754 pub fn is_portd(&self) -> bool {
755 *self == EXTIPSEL5_A::PORTD
756 }
757 #[doc = "Checks if the value of the field is `PORTF`"]
758 #[inline(always)]
759 pub fn is_portf(&self) -> bool {
760 *self == EXTIPSEL5_A::PORTF
761 }
762 #[doc = "Checks if the value of the field is `PORTI`"]
763 #[inline(always)]
764 pub fn is_porti(&self) -> bool {
765 *self == EXTIPSEL5_A::PORTI
766 }
767 #[doc = "Checks if the value of the field is `PORTJ`"]
768 #[inline(always)]
769 pub fn is_portj(&self) -> bool {
770 *self == EXTIPSEL5_A::PORTJ
771 }
772 #[doc = "Checks if the value of the field is `PORTK`"]
773 #[inline(always)]
774 pub fn is_portk(&self) -> bool {
775 *self == EXTIPSEL5_A::PORTK
776 }
777}
778#[doc = "Field `EXTIPSEL5` writer - External Interrupt 5 Port Select"]
779pub type EXTIPSEL5_W<'a, const O: u8> =
780 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL5_A, 4, O>;
781impl<'a, const O: u8> EXTIPSEL5_W<'a, O> {
782 #[doc = "Port A group selected for external interrupt 5"]
783 #[inline(always)]
784 pub fn porta(self) -> &'a mut W {
785 self.variant(EXTIPSEL5_A::PORTA)
786 }
787 #[doc = "Port B group selected for external interrupt 5"]
788 #[inline(always)]
789 pub fn portb(self) -> &'a mut W {
790 self.variant(EXTIPSEL5_A::PORTB)
791 }
792 #[doc = "Port C group selected for external interrupt 5"]
793 #[inline(always)]
794 pub fn portc(self) -> &'a mut W {
795 self.variant(EXTIPSEL5_A::PORTC)
796 }
797 #[doc = "Port D group selected for external interrupt 5"]
798 #[inline(always)]
799 pub fn portd(self) -> &'a mut W {
800 self.variant(EXTIPSEL5_A::PORTD)
801 }
802 #[doc = "Port F group selected for external interrupt 5"]
803 #[inline(always)]
804 pub fn portf(self) -> &'a mut W {
805 self.variant(EXTIPSEL5_A::PORTF)
806 }
807 #[doc = "Port I group selected for external interrupt 5"]
808 #[inline(always)]
809 pub fn porti(self) -> &'a mut W {
810 self.variant(EXTIPSEL5_A::PORTI)
811 }
812 #[doc = "Port J group selected for external interrupt 5"]
813 #[inline(always)]
814 pub fn portj(self) -> &'a mut W {
815 self.variant(EXTIPSEL5_A::PORTJ)
816 }
817 #[doc = "Port K group selected for external interrupt 5"]
818 #[inline(always)]
819 pub fn portk(self) -> &'a mut W {
820 self.variant(EXTIPSEL5_A::PORTK)
821 }
822}
823#[doc = "Field `EXTIPSEL6` reader - External Interrupt 6 Port Select"]
824pub type EXTIPSEL6_R = crate::FieldReader<u8, EXTIPSEL6_A>;
825#[doc = "External Interrupt 6 Port Select\n\nValue on reset: 0"]
826#[derive(Clone, Copy, Debug, PartialEq, Eq)]
827#[repr(u8)]
828pub enum EXTIPSEL6_A {
829 #[doc = "0: Port A group selected for external interrupt 6"]
830 PORTA = 0,
831 #[doc = "1: Port B group selected for external interrupt 6"]
832 PORTB = 1,
833 #[doc = "2: Port C group selected for external interrupt 6"]
834 PORTC = 2,
835 #[doc = "3: Port D group selected for external interrupt 6"]
836 PORTD = 3,
837 #[doc = "5: Port F group selected for external interrupt 6"]
838 PORTF = 5,
839 #[doc = "8: Port I group selected for external interrupt 6"]
840 PORTI = 8,
841 #[doc = "9: Port J group selected for external interrupt 6"]
842 PORTJ = 9,
843 #[doc = "10: Port K group selected for external interrupt 6"]
844 PORTK = 10,
845}
846impl From<EXTIPSEL6_A> for u8 {
847 #[inline(always)]
848 fn from(variant: EXTIPSEL6_A) -> Self {
849 variant as _
850 }
851}
852impl EXTIPSEL6_R {
853 #[doc = "Get enumerated values variant"]
854 #[inline(always)]
855 pub fn variant(&self) -> Option<EXTIPSEL6_A> {
856 match self.bits {
857 0 => Some(EXTIPSEL6_A::PORTA),
858 1 => Some(EXTIPSEL6_A::PORTB),
859 2 => Some(EXTIPSEL6_A::PORTC),
860 3 => Some(EXTIPSEL6_A::PORTD),
861 5 => Some(EXTIPSEL6_A::PORTF),
862 8 => Some(EXTIPSEL6_A::PORTI),
863 9 => Some(EXTIPSEL6_A::PORTJ),
864 10 => Some(EXTIPSEL6_A::PORTK),
865 _ => None,
866 }
867 }
868 #[doc = "Checks if the value of the field is `PORTA`"]
869 #[inline(always)]
870 pub fn is_porta(&self) -> bool {
871 *self == EXTIPSEL6_A::PORTA
872 }
873 #[doc = "Checks if the value of the field is `PORTB`"]
874 #[inline(always)]
875 pub fn is_portb(&self) -> bool {
876 *self == EXTIPSEL6_A::PORTB
877 }
878 #[doc = "Checks if the value of the field is `PORTC`"]
879 #[inline(always)]
880 pub fn is_portc(&self) -> bool {
881 *self == EXTIPSEL6_A::PORTC
882 }
883 #[doc = "Checks if the value of the field is `PORTD`"]
884 #[inline(always)]
885 pub fn is_portd(&self) -> bool {
886 *self == EXTIPSEL6_A::PORTD
887 }
888 #[doc = "Checks if the value of the field is `PORTF`"]
889 #[inline(always)]
890 pub fn is_portf(&self) -> bool {
891 *self == EXTIPSEL6_A::PORTF
892 }
893 #[doc = "Checks if the value of the field is `PORTI`"]
894 #[inline(always)]
895 pub fn is_porti(&self) -> bool {
896 *self == EXTIPSEL6_A::PORTI
897 }
898 #[doc = "Checks if the value of the field is `PORTJ`"]
899 #[inline(always)]
900 pub fn is_portj(&self) -> bool {
901 *self == EXTIPSEL6_A::PORTJ
902 }
903 #[doc = "Checks if the value of the field is `PORTK`"]
904 #[inline(always)]
905 pub fn is_portk(&self) -> bool {
906 *self == EXTIPSEL6_A::PORTK
907 }
908}
909#[doc = "Field `EXTIPSEL6` writer - External Interrupt 6 Port Select"]
910pub type EXTIPSEL6_W<'a, const O: u8> =
911 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL6_A, 4, O>;
912impl<'a, const O: u8> EXTIPSEL6_W<'a, O> {
913 #[doc = "Port A group selected for external interrupt 6"]
914 #[inline(always)]
915 pub fn porta(self) -> &'a mut W {
916 self.variant(EXTIPSEL6_A::PORTA)
917 }
918 #[doc = "Port B group selected for external interrupt 6"]
919 #[inline(always)]
920 pub fn portb(self) -> &'a mut W {
921 self.variant(EXTIPSEL6_A::PORTB)
922 }
923 #[doc = "Port C group selected for external interrupt 6"]
924 #[inline(always)]
925 pub fn portc(self) -> &'a mut W {
926 self.variant(EXTIPSEL6_A::PORTC)
927 }
928 #[doc = "Port D group selected for external interrupt 6"]
929 #[inline(always)]
930 pub fn portd(self) -> &'a mut W {
931 self.variant(EXTIPSEL6_A::PORTD)
932 }
933 #[doc = "Port F group selected for external interrupt 6"]
934 #[inline(always)]
935 pub fn portf(self) -> &'a mut W {
936 self.variant(EXTIPSEL6_A::PORTF)
937 }
938 #[doc = "Port I group selected for external interrupt 6"]
939 #[inline(always)]
940 pub fn porti(self) -> &'a mut W {
941 self.variant(EXTIPSEL6_A::PORTI)
942 }
943 #[doc = "Port J group selected for external interrupt 6"]
944 #[inline(always)]
945 pub fn portj(self) -> &'a mut W {
946 self.variant(EXTIPSEL6_A::PORTJ)
947 }
948 #[doc = "Port K group selected for external interrupt 6"]
949 #[inline(always)]
950 pub fn portk(self) -> &'a mut W {
951 self.variant(EXTIPSEL6_A::PORTK)
952 }
953}
954#[doc = "Field `EXTIPSEL7` reader - External Interrupt 7 Port Select"]
955pub type EXTIPSEL7_R = crate::FieldReader<u8, EXTIPSEL7_A>;
956#[doc = "External Interrupt 7 Port Select\n\nValue on reset: 0"]
957#[derive(Clone, Copy, Debug, PartialEq, Eq)]
958#[repr(u8)]
959pub enum EXTIPSEL7_A {
960 #[doc = "0: Port A group selected for external interrupt 7"]
961 PORTA = 0,
962 #[doc = "1: Port B group selected for external interrupt 7"]
963 PORTB = 1,
964 #[doc = "2: Port C group selected for external interrupt 7"]
965 PORTC = 2,
966 #[doc = "3: Port D group selected for external interrupt 7"]
967 PORTD = 3,
968 #[doc = "5: Port F group selected for external interrupt 7"]
969 PORTF = 5,
970 #[doc = "8: Port I group selected for external interrupt 7"]
971 PORTI = 8,
972 #[doc = "9: Port J group selected for external interrupt 7"]
973 PORTJ = 9,
974 #[doc = "10: Port K group selected for external interrupt 7"]
975 PORTK = 10,
976}
977impl From<EXTIPSEL7_A> for u8 {
978 #[inline(always)]
979 fn from(variant: EXTIPSEL7_A) -> Self {
980 variant as _
981 }
982}
983impl EXTIPSEL7_R {
984 #[doc = "Get enumerated values variant"]
985 #[inline(always)]
986 pub fn variant(&self) -> Option<EXTIPSEL7_A> {
987 match self.bits {
988 0 => Some(EXTIPSEL7_A::PORTA),
989 1 => Some(EXTIPSEL7_A::PORTB),
990 2 => Some(EXTIPSEL7_A::PORTC),
991 3 => Some(EXTIPSEL7_A::PORTD),
992 5 => Some(EXTIPSEL7_A::PORTF),
993 8 => Some(EXTIPSEL7_A::PORTI),
994 9 => Some(EXTIPSEL7_A::PORTJ),
995 10 => Some(EXTIPSEL7_A::PORTK),
996 _ => None,
997 }
998 }
999 #[doc = "Checks if the value of the field is `PORTA`"]
1000 #[inline(always)]
1001 pub fn is_porta(&self) -> bool {
1002 *self == EXTIPSEL7_A::PORTA
1003 }
1004 #[doc = "Checks if the value of the field is `PORTB`"]
1005 #[inline(always)]
1006 pub fn is_portb(&self) -> bool {
1007 *self == EXTIPSEL7_A::PORTB
1008 }
1009 #[doc = "Checks if the value of the field is `PORTC`"]
1010 #[inline(always)]
1011 pub fn is_portc(&self) -> bool {
1012 *self == EXTIPSEL7_A::PORTC
1013 }
1014 #[doc = "Checks if the value of the field is `PORTD`"]
1015 #[inline(always)]
1016 pub fn is_portd(&self) -> bool {
1017 *self == EXTIPSEL7_A::PORTD
1018 }
1019 #[doc = "Checks if the value of the field is `PORTF`"]
1020 #[inline(always)]
1021 pub fn is_portf(&self) -> bool {
1022 *self == EXTIPSEL7_A::PORTF
1023 }
1024 #[doc = "Checks if the value of the field is `PORTI`"]
1025 #[inline(always)]
1026 pub fn is_porti(&self) -> bool {
1027 *self == EXTIPSEL7_A::PORTI
1028 }
1029 #[doc = "Checks if the value of the field is `PORTJ`"]
1030 #[inline(always)]
1031 pub fn is_portj(&self) -> bool {
1032 *self == EXTIPSEL7_A::PORTJ
1033 }
1034 #[doc = "Checks if the value of the field is `PORTK`"]
1035 #[inline(always)]
1036 pub fn is_portk(&self) -> bool {
1037 *self == EXTIPSEL7_A::PORTK
1038 }
1039}
1040#[doc = "Field `EXTIPSEL7` writer - External Interrupt 7 Port Select"]
1041pub type EXTIPSEL7_W<'a, const O: u8> =
1042 crate::FieldWriter<'a, u32, EXTIPSELL_SPEC, u8, EXTIPSEL7_A, 4, O>;
1043impl<'a, const O: u8> EXTIPSEL7_W<'a, O> {
1044 #[doc = "Port A group selected for external interrupt 7"]
1045 #[inline(always)]
1046 pub fn porta(self) -> &'a mut W {
1047 self.variant(EXTIPSEL7_A::PORTA)
1048 }
1049 #[doc = "Port B group selected for external interrupt 7"]
1050 #[inline(always)]
1051 pub fn portb(self) -> &'a mut W {
1052 self.variant(EXTIPSEL7_A::PORTB)
1053 }
1054 #[doc = "Port C group selected for external interrupt 7"]
1055 #[inline(always)]
1056 pub fn portc(self) -> &'a mut W {
1057 self.variant(EXTIPSEL7_A::PORTC)
1058 }
1059 #[doc = "Port D group selected for external interrupt 7"]
1060 #[inline(always)]
1061 pub fn portd(self) -> &'a mut W {
1062 self.variant(EXTIPSEL7_A::PORTD)
1063 }
1064 #[doc = "Port F group selected for external interrupt 7"]
1065 #[inline(always)]
1066 pub fn portf(self) -> &'a mut W {
1067 self.variant(EXTIPSEL7_A::PORTF)
1068 }
1069 #[doc = "Port I group selected for external interrupt 7"]
1070 #[inline(always)]
1071 pub fn porti(self) -> &'a mut W {
1072 self.variant(EXTIPSEL7_A::PORTI)
1073 }
1074 #[doc = "Port J group selected for external interrupt 7"]
1075 #[inline(always)]
1076 pub fn portj(self) -> &'a mut W {
1077 self.variant(EXTIPSEL7_A::PORTJ)
1078 }
1079 #[doc = "Port K group selected for external interrupt 7"]
1080 #[inline(always)]
1081 pub fn portk(self) -> &'a mut W {
1082 self.variant(EXTIPSEL7_A::PORTK)
1083 }
1084}
1085impl R {
1086 #[doc = "Bits 0:3 - External Interrupt 0 Port Select"]
1087 #[inline(always)]
1088 pub fn extipsel0(&self) -> EXTIPSEL0_R {
1089 EXTIPSEL0_R::new((self.bits & 0x0f) as u8)
1090 }
1091 #[doc = "Bits 4:7 - External Interrupt 1 Port Select"]
1092 #[inline(always)]
1093 pub fn extipsel1(&self) -> EXTIPSEL1_R {
1094 EXTIPSEL1_R::new(((self.bits >> 4) & 0x0f) as u8)
1095 }
1096 #[doc = "Bits 8:11 - External Interrupt 2 Port Select"]
1097 #[inline(always)]
1098 pub fn extipsel2(&self) -> EXTIPSEL2_R {
1099 EXTIPSEL2_R::new(((self.bits >> 8) & 0x0f) as u8)
1100 }
1101 #[doc = "Bits 12:15 - External Interrupt 3 Port Select"]
1102 #[inline(always)]
1103 pub fn extipsel3(&self) -> EXTIPSEL3_R {
1104 EXTIPSEL3_R::new(((self.bits >> 12) & 0x0f) as u8)
1105 }
1106 #[doc = "Bits 16:19 - External Interrupt 4 Port Select"]
1107 #[inline(always)]
1108 pub fn extipsel4(&self) -> EXTIPSEL4_R {
1109 EXTIPSEL4_R::new(((self.bits >> 16) & 0x0f) as u8)
1110 }
1111 #[doc = "Bits 20:23 - External Interrupt 5 Port Select"]
1112 #[inline(always)]
1113 pub fn extipsel5(&self) -> EXTIPSEL5_R {
1114 EXTIPSEL5_R::new(((self.bits >> 20) & 0x0f) as u8)
1115 }
1116 #[doc = "Bits 24:27 - External Interrupt 6 Port Select"]
1117 #[inline(always)]
1118 pub fn extipsel6(&self) -> EXTIPSEL6_R {
1119 EXTIPSEL6_R::new(((self.bits >> 24) & 0x0f) as u8)
1120 }
1121 #[doc = "Bits 28:31 - External Interrupt 7 Port Select"]
1122 #[inline(always)]
1123 pub fn extipsel7(&self) -> EXTIPSEL7_R {
1124 EXTIPSEL7_R::new(((self.bits >> 28) & 0x0f) as u8)
1125 }
1126}
1127impl W {
1128 #[doc = "Bits 0:3 - External Interrupt 0 Port Select"]
1129 #[inline(always)]
1130 #[must_use]
1131 pub fn extipsel0(&mut self) -> EXTIPSEL0_W<0> {
1132 EXTIPSEL0_W::new(self)
1133 }
1134 #[doc = "Bits 4:7 - External Interrupt 1 Port Select"]
1135 #[inline(always)]
1136 #[must_use]
1137 pub fn extipsel1(&mut self) -> EXTIPSEL1_W<4> {
1138 EXTIPSEL1_W::new(self)
1139 }
1140 #[doc = "Bits 8:11 - External Interrupt 2 Port Select"]
1141 #[inline(always)]
1142 #[must_use]
1143 pub fn extipsel2(&mut self) -> EXTIPSEL2_W<8> {
1144 EXTIPSEL2_W::new(self)
1145 }
1146 #[doc = "Bits 12:15 - External Interrupt 3 Port Select"]
1147 #[inline(always)]
1148 #[must_use]
1149 pub fn extipsel3(&mut self) -> EXTIPSEL3_W<12> {
1150 EXTIPSEL3_W::new(self)
1151 }
1152 #[doc = "Bits 16:19 - External Interrupt 4 Port Select"]
1153 #[inline(always)]
1154 #[must_use]
1155 pub fn extipsel4(&mut self) -> EXTIPSEL4_W<16> {
1156 EXTIPSEL4_W::new(self)
1157 }
1158 #[doc = "Bits 20:23 - External Interrupt 5 Port Select"]
1159 #[inline(always)]
1160 #[must_use]
1161 pub fn extipsel5(&mut self) -> EXTIPSEL5_W<20> {
1162 EXTIPSEL5_W::new(self)
1163 }
1164 #[doc = "Bits 24:27 - External Interrupt 6 Port Select"]
1165 #[inline(always)]
1166 #[must_use]
1167 pub fn extipsel6(&mut self) -> EXTIPSEL6_W<24> {
1168 EXTIPSEL6_W::new(self)
1169 }
1170 #[doc = "Bits 28:31 - External Interrupt 7 Port Select"]
1171 #[inline(always)]
1172 #[must_use]
1173 pub fn extipsel7(&mut self) -> EXTIPSEL7_W<28> {
1174 EXTIPSEL7_W::new(self)
1175 }
1176 #[doc = "Writes raw bits to the register."]
1177 #[inline(always)]
1178 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
1179 self.0.bits(bits);
1180 self
1181 }
1182}
1183#[doc = "External Interrupt Port Select Low Register\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [extipsell](index.html) module"]
1184pub struct EXTIPSELL_SPEC;
1185impl crate::RegisterSpec for EXTIPSELL_SPEC {
1186 type Ux = u32;
1187}
1188#[doc = "`read()` method returns [extipsell::R](R) reader structure"]
1189impl crate::Readable for EXTIPSELL_SPEC {
1190 type Reader = R;
1191}
1192#[doc = "`write(|w| ..)` method takes [extipsell::W](W) writer structure"]
1193impl crate::Writable for EXTIPSELL_SPEC {
1194 type Writer = W;
1195 const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
1196 const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
1197}
1198#[doc = "`reset()` method sets EXTIPSELL to value 0"]
1199impl crate::Resettable for EXTIPSELL_SPEC {
1200 const RESET_VALUE: Self::Ux = 0;
1201}