1#[doc = "Register `EXTIPSELH` reader"]
2pub struct R(crate::R<EXTIPSELH_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<EXTIPSELH_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<EXTIPSELH_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<EXTIPSELH_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `EXTIPSELH` writer"]
17pub struct W(crate::W<EXTIPSELH_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<EXTIPSELH_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<EXTIPSELH_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<EXTIPSELH_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "External Interrupt 8 Port Select\n\nValue on reset: 0"]
38#[derive(Clone, Copy, Debug, PartialEq)]
39#[repr(u8)]
40pub enum EXTIPSEL8_A {
41 #[doc = "0: Port A pin 8 selected for external interrupt 8"]
42 PORTA = 0,
43 #[doc = "1: Port B pin 8 selected for external interrupt 8"]
44 PORTB = 1,
45 #[doc = "2: Port C pin 8 selected for external interrupt 8"]
46 PORTC = 2,
47 #[doc = "3: Port D pin 8 selected for external interrupt 8"]
48 PORTD = 3,
49 #[doc = "4: Port E pin 8 selected for external interrupt 8"]
50 PORTE = 4,
51 #[doc = "5: Port F pin 8 selected for external interrupt 8"]
52 PORTF = 5,
53}
54impl From<EXTIPSEL8_A> for u8 {
55 #[inline(always)]
56 fn from(variant: EXTIPSEL8_A) -> Self {
57 variant as _
58 }
59}
60#[doc = "Field `EXTIPSEL8` reader - External Interrupt 8 Port Select"]
61pub type EXTIPSEL8_R = crate::FieldReader<u8, EXTIPSEL8_A>;
62impl EXTIPSEL8_R {
63 #[doc = "Get enumerated values variant"]
64 #[inline(always)]
65 pub fn variant(&self) -> Option<EXTIPSEL8_A> {
66 match self.bits {
67 0 => Some(EXTIPSEL8_A::PORTA),
68 1 => Some(EXTIPSEL8_A::PORTB),
69 2 => Some(EXTIPSEL8_A::PORTC),
70 3 => Some(EXTIPSEL8_A::PORTD),
71 4 => Some(EXTIPSEL8_A::PORTE),
72 5 => Some(EXTIPSEL8_A::PORTF),
73 _ => None,
74 }
75 }
76 #[doc = "Checks if the value of the field is `PORTA`"]
77 #[inline(always)]
78 pub fn is_porta(&self) -> bool {
79 *self == EXTIPSEL8_A::PORTA
80 }
81 #[doc = "Checks if the value of the field is `PORTB`"]
82 #[inline(always)]
83 pub fn is_portb(&self) -> bool {
84 *self == EXTIPSEL8_A::PORTB
85 }
86 #[doc = "Checks if the value of the field is `PORTC`"]
87 #[inline(always)]
88 pub fn is_portc(&self) -> bool {
89 *self == EXTIPSEL8_A::PORTC
90 }
91 #[doc = "Checks if the value of the field is `PORTD`"]
92 #[inline(always)]
93 pub fn is_portd(&self) -> bool {
94 *self == EXTIPSEL8_A::PORTD
95 }
96 #[doc = "Checks if the value of the field is `PORTE`"]
97 #[inline(always)]
98 pub fn is_porte(&self) -> bool {
99 *self == EXTIPSEL8_A::PORTE
100 }
101 #[doc = "Checks if the value of the field is `PORTF`"]
102 #[inline(always)]
103 pub fn is_portf(&self) -> bool {
104 *self == EXTIPSEL8_A::PORTF
105 }
106}
107#[doc = "Field `EXTIPSEL8` writer - External Interrupt 8 Port Select"]
108pub type EXTIPSEL8_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL8_A, 3, 0>;
109impl<'a> EXTIPSEL8_W<'a> {
110 #[doc = "Port A pin 8 selected for external interrupt 8"]
111 #[inline(always)]
112 pub fn porta(self) -> &'a mut W {
113 self.variant(EXTIPSEL8_A::PORTA)
114 }
115 #[doc = "Port B pin 8 selected for external interrupt 8"]
116 #[inline(always)]
117 pub fn portb(self) -> &'a mut W {
118 self.variant(EXTIPSEL8_A::PORTB)
119 }
120 #[doc = "Port C pin 8 selected for external interrupt 8"]
121 #[inline(always)]
122 pub fn portc(self) -> &'a mut W {
123 self.variant(EXTIPSEL8_A::PORTC)
124 }
125 #[doc = "Port D pin 8 selected for external interrupt 8"]
126 #[inline(always)]
127 pub fn portd(self) -> &'a mut W {
128 self.variant(EXTIPSEL8_A::PORTD)
129 }
130 #[doc = "Port E pin 8 selected for external interrupt 8"]
131 #[inline(always)]
132 pub fn porte(self) -> &'a mut W {
133 self.variant(EXTIPSEL8_A::PORTE)
134 }
135 #[doc = "Port F pin 8 selected for external interrupt 8"]
136 #[inline(always)]
137 pub fn portf(self) -> &'a mut W {
138 self.variant(EXTIPSEL8_A::PORTF)
139 }
140}
141#[doc = "External Interrupt 9 Port Select\n\nValue on reset: 0"]
142#[derive(Clone, Copy, Debug, PartialEq)]
143#[repr(u8)]
144pub enum EXTIPSEL9_A {
145 #[doc = "0: Port A pin 9 selected for external interrupt 9"]
146 PORTA = 0,
147 #[doc = "1: Port B pin 9 selected for external interrupt 9"]
148 PORTB = 1,
149 #[doc = "2: Port C pin 9 selected for external interrupt 9"]
150 PORTC = 2,
151 #[doc = "3: Port D pin 9 selected for external interrupt 9"]
152 PORTD = 3,
153 #[doc = "4: Port E pin 9 selected for external interrupt 9"]
154 PORTE = 4,
155 #[doc = "5: Port F pin 9 selected for external interrupt 9"]
156 PORTF = 5,
157}
158impl From<EXTIPSEL9_A> for u8 {
159 #[inline(always)]
160 fn from(variant: EXTIPSEL9_A) -> Self {
161 variant as _
162 }
163}
164#[doc = "Field `EXTIPSEL9` reader - External Interrupt 9 Port Select"]
165pub type EXTIPSEL9_R = crate::FieldReader<u8, EXTIPSEL9_A>;
166impl EXTIPSEL9_R {
167 #[doc = "Get enumerated values variant"]
168 #[inline(always)]
169 pub fn variant(&self) -> Option<EXTIPSEL9_A> {
170 match self.bits {
171 0 => Some(EXTIPSEL9_A::PORTA),
172 1 => Some(EXTIPSEL9_A::PORTB),
173 2 => Some(EXTIPSEL9_A::PORTC),
174 3 => Some(EXTIPSEL9_A::PORTD),
175 4 => Some(EXTIPSEL9_A::PORTE),
176 5 => Some(EXTIPSEL9_A::PORTF),
177 _ => None,
178 }
179 }
180 #[doc = "Checks if the value of the field is `PORTA`"]
181 #[inline(always)]
182 pub fn is_porta(&self) -> bool {
183 *self == EXTIPSEL9_A::PORTA
184 }
185 #[doc = "Checks if the value of the field is `PORTB`"]
186 #[inline(always)]
187 pub fn is_portb(&self) -> bool {
188 *self == EXTIPSEL9_A::PORTB
189 }
190 #[doc = "Checks if the value of the field is `PORTC`"]
191 #[inline(always)]
192 pub fn is_portc(&self) -> bool {
193 *self == EXTIPSEL9_A::PORTC
194 }
195 #[doc = "Checks if the value of the field is `PORTD`"]
196 #[inline(always)]
197 pub fn is_portd(&self) -> bool {
198 *self == EXTIPSEL9_A::PORTD
199 }
200 #[doc = "Checks if the value of the field is `PORTE`"]
201 #[inline(always)]
202 pub fn is_porte(&self) -> bool {
203 *self == EXTIPSEL9_A::PORTE
204 }
205 #[doc = "Checks if the value of the field is `PORTF`"]
206 #[inline(always)]
207 pub fn is_portf(&self) -> bool {
208 *self == EXTIPSEL9_A::PORTF
209 }
210}
211#[doc = "Field `EXTIPSEL9` writer - External Interrupt 9 Port Select"]
212pub type EXTIPSEL9_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL9_A, 3, 4>;
213impl<'a> EXTIPSEL9_W<'a> {
214 #[doc = "Port A pin 9 selected for external interrupt 9"]
215 #[inline(always)]
216 pub fn porta(self) -> &'a mut W {
217 self.variant(EXTIPSEL9_A::PORTA)
218 }
219 #[doc = "Port B pin 9 selected for external interrupt 9"]
220 #[inline(always)]
221 pub fn portb(self) -> &'a mut W {
222 self.variant(EXTIPSEL9_A::PORTB)
223 }
224 #[doc = "Port C pin 9 selected for external interrupt 9"]
225 #[inline(always)]
226 pub fn portc(self) -> &'a mut W {
227 self.variant(EXTIPSEL9_A::PORTC)
228 }
229 #[doc = "Port D pin 9 selected for external interrupt 9"]
230 #[inline(always)]
231 pub fn portd(self) -> &'a mut W {
232 self.variant(EXTIPSEL9_A::PORTD)
233 }
234 #[doc = "Port E pin 9 selected for external interrupt 9"]
235 #[inline(always)]
236 pub fn porte(self) -> &'a mut W {
237 self.variant(EXTIPSEL9_A::PORTE)
238 }
239 #[doc = "Port F pin 9 selected for external interrupt 9"]
240 #[inline(always)]
241 pub fn portf(self) -> &'a mut W {
242 self.variant(EXTIPSEL9_A::PORTF)
243 }
244}
245#[doc = "External Interrupt 10 Port Select\n\nValue on reset: 0"]
246#[derive(Clone, Copy, Debug, PartialEq)]
247#[repr(u8)]
248pub enum EXTIPSEL10_A {
249 #[doc = "0: Port A pin 10 selected for external interrupt 10"]
250 PORTA = 0,
251 #[doc = "1: Port B pin 10 selected for external interrupt 10"]
252 PORTB = 1,
253 #[doc = "2: Port C pin 10 selected for external interrupt 10"]
254 PORTC = 2,
255 #[doc = "3: Port D pin 10 selected for external interrupt 10"]
256 PORTD = 3,
257 #[doc = "4: Port E pin 10 selected for external interrupt 10"]
258 PORTE = 4,
259 #[doc = "5: Port F pin 10 selected for external interrupt 10"]
260 PORTF = 5,
261}
262impl From<EXTIPSEL10_A> for u8 {
263 #[inline(always)]
264 fn from(variant: EXTIPSEL10_A) -> Self {
265 variant as _
266 }
267}
268#[doc = "Field `EXTIPSEL10` reader - External Interrupt 10 Port Select"]
269pub type EXTIPSEL10_R = crate::FieldReader<u8, EXTIPSEL10_A>;
270impl EXTIPSEL10_R {
271 #[doc = "Get enumerated values variant"]
272 #[inline(always)]
273 pub fn variant(&self) -> Option<EXTIPSEL10_A> {
274 match self.bits {
275 0 => Some(EXTIPSEL10_A::PORTA),
276 1 => Some(EXTIPSEL10_A::PORTB),
277 2 => Some(EXTIPSEL10_A::PORTC),
278 3 => Some(EXTIPSEL10_A::PORTD),
279 4 => Some(EXTIPSEL10_A::PORTE),
280 5 => Some(EXTIPSEL10_A::PORTF),
281 _ => None,
282 }
283 }
284 #[doc = "Checks if the value of the field is `PORTA`"]
285 #[inline(always)]
286 pub fn is_porta(&self) -> bool {
287 *self == EXTIPSEL10_A::PORTA
288 }
289 #[doc = "Checks if the value of the field is `PORTB`"]
290 #[inline(always)]
291 pub fn is_portb(&self) -> bool {
292 *self == EXTIPSEL10_A::PORTB
293 }
294 #[doc = "Checks if the value of the field is `PORTC`"]
295 #[inline(always)]
296 pub fn is_portc(&self) -> bool {
297 *self == EXTIPSEL10_A::PORTC
298 }
299 #[doc = "Checks if the value of the field is `PORTD`"]
300 #[inline(always)]
301 pub fn is_portd(&self) -> bool {
302 *self == EXTIPSEL10_A::PORTD
303 }
304 #[doc = "Checks if the value of the field is `PORTE`"]
305 #[inline(always)]
306 pub fn is_porte(&self) -> bool {
307 *self == EXTIPSEL10_A::PORTE
308 }
309 #[doc = "Checks if the value of the field is `PORTF`"]
310 #[inline(always)]
311 pub fn is_portf(&self) -> bool {
312 *self == EXTIPSEL10_A::PORTF
313 }
314}
315#[doc = "Field `EXTIPSEL10` writer - External Interrupt 10 Port Select"]
316pub type EXTIPSEL10_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL10_A, 3, 8>;
317impl<'a> EXTIPSEL10_W<'a> {
318 #[doc = "Port A pin 10 selected for external interrupt 10"]
319 #[inline(always)]
320 pub fn porta(self) -> &'a mut W {
321 self.variant(EXTIPSEL10_A::PORTA)
322 }
323 #[doc = "Port B pin 10 selected for external interrupt 10"]
324 #[inline(always)]
325 pub fn portb(self) -> &'a mut W {
326 self.variant(EXTIPSEL10_A::PORTB)
327 }
328 #[doc = "Port C pin 10 selected for external interrupt 10"]
329 #[inline(always)]
330 pub fn portc(self) -> &'a mut W {
331 self.variant(EXTIPSEL10_A::PORTC)
332 }
333 #[doc = "Port D pin 10 selected for external interrupt 10"]
334 #[inline(always)]
335 pub fn portd(self) -> &'a mut W {
336 self.variant(EXTIPSEL10_A::PORTD)
337 }
338 #[doc = "Port E pin 10 selected for external interrupt 10"]
339 #[inline(always)]
340 pub fn porte(self) -> &'a mut W {
341 self.variant(EXTIPSEL10_A::PORTE)
342 }
343 #[doc = "Port F pin 10 selected for external interrupt 10"]
344 #[inline(always)]
345 pub fn portf(self) -> &'a mut W {
346 self.variant(EXTIPSEL10_A::PORTF)
347 }
348}
349#[doc = "External Interrupt 11 Port Select\n\nValue on reset: 0"]
350#[derive(Clone, Copy, Debug, PartialEq)]
351#[repr(u8)]
352pub enum EXTIPSEL11_A {
353 #[doc = "0: Port A pin 11 selected for external interrupt 11"]
354 PORTA = 0,
355 #[doc = "1: Port B pin 11 selected for external interrupt 11"]
356 PORTB = 1,
357 #[doc = "2: Port C pin 11 selected for external interrupt 11"]
358 PORTC = 2,
359 #[doc = "3: Port D pin 11 selected for external interrupt 11"]
360 PORTD = 3,
361 #[doc = "4: Port E pin 11 selected for external interrupt 11"]
362 PORTE = 4,
363 #[doc = "5: Port F pin 11 selected for external interrupt 11"]
364 PORTF = 5,
365}
366impl From<EXTIPSEL11_A> for u8 {
367 #[inline(always)]
368 fn from(variant: EXTIPSEL11_A) -> Self {
369 variant as _
370 }
371}
372#[doc = "Field `EXTIPSEL11` reader - External Interrupt 11 Port Select"]
373pub type EXTIPSEL11_R = crate::FieldReader<u8, EXTIPSEL11_A>;
374impl EXTIPSEL11_R {
375 #[doc = "Get enumerated values variant"]
376 #[inline(always)]
377 pub fn variant(&self) -> Option<EXTIPSEL11_A> {
378 match self.bits {
379 0 => Some(EXTIPSEL11_A::PORTA),
380 1 => Some(EXTIPSEL11_A::PORTB),
381 2 => Some(EXTIPSEL11_A::PORTC),
382 3 => Some(EXTIPSEL11_A::PORTD),
383 4 => Some(EXTIPSEL11_A::PORTE),
384 5 => Some(EXTIPSEL11_A::PORTF),
385 _ => None,
386 }
387 }
388 #[doc = "Checks if the value of the field is `PORTA`"]
389 #[inline(always)]
390 pub fn is_porta(&self) -> bool {
391 *self == EXTIPSEL11_A::PORTA
392 }
393 #[doc = "Checks if the value of the field is `PORTB`"]
394 #[inline(always)]
395 pub fn is_portb(&self) -> bool {
396 *self == EXTIPSEL11_A::PORTB
397 }
398 #[doc = "Checks if the value of the field is `PORTC`"]
399 #[inline(always)]
400 pub fn is_portc(&self) -> bool {
401 *self == EXTIPSEL11_A::PORTC
402 }
403 #[doc = "Checks if the value of the field is `PORTD`"]
404 #[inline(always)]
405 pub fn is_portd(&self) -> bool {
406 *self == EXTIPSEL11_A::PORTD
407 }
408 #[doc = "Checks if the value of the field is `PORTE`"]
409 #[inline(always)]
410 pub fn is_porte(&self) -> bool {
411 *self == EXTIPSEL11_A::PORTE
412 }
413 #[doc = "Checks if the value of the field is `PORTF`"]
414 #[inline(always)]
415 pub fn is_portf(&self) -> bool {
416 *self == EXTIPSEL11_A::PORTF
417 }
418}
419#[doc = "Field `EXTIPSEL11` writer - External Interrupt 11 Port Select"]
420pub type EXTIPSEL11_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL11_A, 3, 12>;
421impl<'a> EXTIPSEL11_W<'a> {
422 #[doc = "Port A pin 11 selected for external interrupt 11"]
423 #[inline(always)]
424 pub fn porta(self) -> &'a mut W {
425 self.variant(EXTIPSEL11_A::PORTA)
426 }
427 #[doc = "Port B pin 11 selected for external interrupt 11"]
428 #[inline(always)]
429 pub fn portb(self) -> &'a mut W {
430 self.variant(EXTIPSEL11_A::PORTB)
431 }
432 #[doc = "Port C pin 11 selected for external interrupt 11"]
433 #[inline(always)]
434 pub fn portc(self) -> &'a mut W {
435 self.variant(EXTIPSEL11_A::PORTC)
436 }
437 #[doc = "Port D pin 11 selected for external interrupt 11"]
438 #[inline(always)]
439 pub fn portd(self) -> &'a mut W {
440 self.variant(EXTIPSEL11_A::PORTD)
441 }
442 #[doc = "Port E pin 11 selected for external interrupt 11"]
443 #[inline(always)]
444 pub fn porte(self) -> &'a mut W {
445 self.variant(EXTIPSEL11_A::PORTE)
446 }
447 #[doc = "Port F pin 11 selected for external interrupt 11"]
448 #[inline(always)]
449 pub fn portf(self) -> &'a mut W {
450 self.variant(EXTIPSEL11_A::PORTF)
451 }
452}
453#[doc = "External Interrupt 12 Port Select\n\nValue on reset: 0"]
454#[derive(Clone, Copy, Debug, PartialEq)]
455#[repr(u8)]
456pub enum EXTIPSEL12_A {
457 #[doc = "0: Port A pin 12 selected for external interrupt 12"]
458 PORTA = 0,
459 #[doc = "1: Port B pin 12 selected for external interrupt 12"]
460 PORTB = 1,
461 #[doc = "2: Port C pin 12 selected for external interrupt 12"]
462 PORTC = 2,
463 #[doc = "3: Port D pin 12 selected for external interrupt 12"]
464 PORTD = 3,
465 #[doc = "4: Port E pin 12 selected for external interrupt 12"]
466 PORTE = 4,
467 #[doc = "5: Port F pin 12 selected for external interrupt 12"]
468 PORTF = 5,
469}
470impl From<EXTIPSEL12_A> for u8 {
471 #[inline(always)]
472 fn from(variant: EXTIPSEL12_A) -> Self {
473 variant as _
474 }
475}
476#[doc = "Field `EXTIPSEL12` reader - External Interrupt 12 Port Select"]
477pub type EXTIPSEL12_R = crate::FieldReader<u8, EXTIPSEL12_A>;
478impl EXTIPSEL12_R {
479 #[doc = "Get enumerated values variant"]
480 #[inline(always)]
481 pub fn variant(&self) -> Option<EXTIPSEL12_A> {
482 match self.bits {
483 0 => Some(EXTIPSEL12_A::PORTA),
484 1 => Some(EXTIPSEL12_A::PORTB),
485 2 => Some(EXTIPSEL12_A::PORTC),
486 3 => Some(EXTIPSEL12_A::PORTD),
487 4 => Some(EXTIPSEL12_A::PORTE),
488 5 => Some(EXTIPSEL12_A::PORTF),
489 _ => None,
490 }
491 }
492 #[doc = "Checks if the value of the field is `PORTA`"]
493 #[inline(always)]
494 pub fn is_porta(&self) -> bool {
495 *self == EXTIPSEL12_A::PORTA
496 }
497 #[doc = "Checks if the value of the field is `PORTB`"]
498 #[inline(always)]
499 pub fn is_portb(&self) -> bool {
500 *self == EXTIPSEL12_A::PORTB
501 }
502 #[doc = "Checks if the value of the field is `PORTC`"]
503 #[inline(always)]
504 pub fn is_portc(&self) -> bool {
505 *self == EXTIPSEL12_A::PORTC
506 }
507 #[doc = "Checks if the value of the field is `PORTD`"]
508 #[inline(always)]
509 pub fn is_portd(&self) -> bool {
510 *self == EXTIPSEL12_A::PORTD
511 }
512 #[doc = "Checks if the value of the field is `PORTE`"]
513 #[inline(always)]
514 pub fn is_porte(&self) -> bool {
515 *self == EXTIPSEL12_A::PORTE
516 }
517 #[doc = "Checks if the value of the field is `PORTF`"]
518 #[inline(always)]
519 pub fn is_portf(&self) -> bool {
520 *self == EXTIPSEL12_A::PORTF
521 }
522}
523#[doc = "Field `EXTIPSEL12` writer - External Interrupt 12 Port Select"]
524pub type EXTIPSEL12_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL12_A, 3, 16>;
525impl<'a> EXTIPSEL12_W<'a> {
526 #[doc = "Port A pin 12 selected for external interrupt 12"]
527 #[inline(always)]
528 pub fn porta(self) -> &'a mut W {
529 self.variant(EXTIPSEL12_A::PORTA)
530 }
531 #[doc = "Port B pin 12 selected for external interrupt 12"]
532 #[inline(always)]
533 pub fn portb(self) -> &'a mut W {
534 self.variant(EXTIPSEL12_A::PORTB)
535 }
536 #[doc = "Port C pin 12 selected for external interrupt 12"]
537 #[inline(always)]
538 pub fn portc(self) -> &'a mut W {
539 self.variant(EXTIPSEL12_A::PORTC)
540 }
541 #[doc = "Port D pin 12 selected for external interrupt 12"]
542 #[inline(always)]
543 pub fn portd(self) -> &'a mut W {
544 self.variant(EXTIPSEL12_A::PORTD)
545 }
546 #[doc = "Port E pin 12 selected for external interrupt 12"]
547 #[inline(always)]
548 pub fn porte(self) -> &'a mut W {
549 self.variant(EXTIPSEL12_A::PORTE)
550 }
551 #[doc = "Port F pin 12 selected for external interrupt 12"]
552 #[inline(always)]
553 pub fn portf(self) -> &'a mut W {
554 self.variant(EXTIPSEL12_A::PORTF)
555 }
556}
557#[doc = "External Interrupt 13 Port Select\n\nValue on reset: 0"]
558#[derive(Clone, Copy, Debug, PartialEq)]
559#[repr(u8)]
560pub enum EXTIPSEL13_A {
561 #[doc = "0: Port A pin 13 selected for external interrupt 13"]
562 PORTA = 0,
563 #[doc = "1: Port B pin 13 selected for external interrupt 13"]
564 PORTB = 1,
565 #[doc = "2: Port C pin 13 selected for external interrupt 13"]
566 PORTC = 2,
567 #[doc = "3: Port D pin 13 selected for external interrupt 13"]
568 PORTD = 3,
569 #[doc = "4: Port E pin 13 selected for external interrupt 13"]
570 PORTE = 4,
571 #[doc = "5: Port F pin 13 selected for external interrupt 13"]
572 PORTF = 5,
573}
574impl From<EXTIPSEL13_A> for u8 {
575 #[inline(always)]
576 fn from(variant: EXTIPSEL13_A) -> Self {
577 variant as _
578 }
579}
580#[doc = "Field `EXTIPSEL13` reader - External Interrupt 13 Port Select"]
581pub type EXTIPSEL13_R = crate::FieldReader<u8, EXTIPSEL13_A>;
582impl EXTIPSEL13_R {
583 #[doc = "Get enumerated values variant"]
584 #[inline(always)]
585 pub fn variant(&self) -> Option<EXTIPSEL13_A> {
586 match self.bits {
587 0 => Some(EXTIPSEL13_A::PORTA),
588 1 => Some(EXTIPSEL13_A::PORTB),
589 2 => Some(EXTIPSEL13_A::PORTC),
590 3 => Some(EXTIPSEL13_A::PORTD),
591 4 => Some(EXTIPSEL13_A::PORTE),
592 5 => Some(EXTIPSEL13_A::PORTF),
593 _ => None,
594 }
595 }
596 #[doc = "Checks if the value of the field is `PORTA`"]
597 #[inline(always)]
598 pub fn is_porta(&self) -> bool {
599 *self == EXTIPSEL13_A::PORTA
600 }
601 #[doc = "Checks if the value of the field is `PORTB`"]
602 #[inline(always)]
603 pub fn is_portb(&self) -> bool {
604 *self == EXTIPSEL13_A::PORTB
605 }
606 #[doc = "Checks if the value of the field is `PORTC`"]
607 #[inline(always)]
608 pub fn is_portc(&self) -> bool {
609 *self == EXTIPSEL13_A::PORTC
610 }
611 #[doc = "Checks if the value of the field is `PORTD`"]
612 #[inline(always)]
613 pub fn is_portd(&self) -> bool {
614 *self == EXTIPSEL13_A::PORTD
615 }
616 #[doc = "Checks if the value of the field is `PORTE`"]
617 #[inline(always)]
618 pub fn is_porte(&self) -> bool {
619 *self == EXTIPSEL13_A::PORTE
620 }
621 #[doc = "Checks if the value of the field is `PORTF`"]
622 #[inline(always)]
623 pub fn is_portf(&self) -> bool {
624 *self == EXTIPSEL13_A::PORTF
625 }
626}
627#[doc = "Field `EXTIPSEL13` writer - External Interrupt 13 Port Select"]
628pub type EXTIPSEL13_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL13_A, 3, 20>;
629impl<'a> EXTIPSEL13_W<'a> {
630 #[doc = "Port A pin 13 selected for external interrupt 13"]
631 #[inline(always)]
632 pub fn porta(self) -> &'a mut W {
633 self.variant(EXTIPSEL13_A::PORTA)
634 }
635 #[doc = "Port B pin 13 selected for external interrupt 13"]
636 #[inline(always)]
637 pub fn portb(self) -> &'a mut W {
638 self.variant(EXTIPSEL13_A::PORTB)
639 }
640 #[doc = "Port C pin 13 selected for external interrupt 13"]
641 #[inline(always)]
642 pub fn portc(self) -> &'a mut W {
643 self.variant(EXTIPSEL13_A::PORTC)
644 }
645 #[doc = "Port D pin 13 selected for external interrupt 13"]
646 #[inline(always)]
647 pub fn portd(self) -> &'a mut W {
648 self.variant(EXTIPSEL13_A::PORTD)
649 }
650 #[doc = "Port E pin 13 selected for external interrupt 13"]
651 #[inline(always)]
652 pub fn porte(self) -> &'a mut W {
653 self.variant(EXTIPSEL13_A::PORTE)
654 }
655 #[doc = "Port F pin 13 selected for external interrupt 13"]
656 #[inline(always)]
657 pub fn portf(self) -> &'a mut W {
658 self.variant(EXTIPSEL13_A::PORTF)
659 }
660}
661#[doc = "External Interrupt 14 Port Select\n\nValue on reset: 0"]
662#[derive(Clone, Copy, Debug, PartialEq)]
663#[repr(u8)]
664pub enum EXTIPSEL14_A {
665 #[doc = "0: Port A pin 14 selected for external interrupt 14"]
666 PORTA = 0,
667 #[doc = "1: Port B pin 14 selected for external interrupt 14"]
668 PORTB = 1,
669 #[doc = "2: Port C pin 14 selected for external interrupt 14"]
670 PORTC = 2,
671 #[doc = "3: Port D pin 14 selected for external interrupt 14"]
672 PORTD = 3,
673 #[doc = "4: Port E pin 14 selected for external interrupt 14"]
674 PORTE = 4,
675 #[doc = "5: Port F pin 14 selected for external interrupt 14"]
676 PORTF = 5,
677}
678impl From<EXTIPSEL14_A> for u8 {
679 #[inline(always)]
680 fn from(variant: EXTIPSEL14_A) -> Self {
681 variant as _
682 }
683}
684#[doc = "Field `EXTIPSEL14` reader - External Interrupt 14 Port Select"]
685pub type EXTIPSEL14_R = crate::FieldReader<u8, EXTIPSEL14_A>;
686impl EXTIPSEL14_R {
687 #[doc = "Get enumerated values variant"]
688 #[inline(always)]
689 pub fn variant(&self) -> Option<EXTIPSEL14_A> {
690 match self.bits {
691 0 => Some(EXTIPSEL14_A::PORTA),
692 1 => Some(EXTIPSEL14_A::PORTB),
693 2 => Some(EXTIPSEL14_A::PORTC),
694 3 => Some(EXTIPSEL14_A::PORTD),
695 4 => Some(EXTIPSEL14_A::PORTE),
696 5 => Some(EXTIPSEL14_A::PORTF),
697 _ => None,
698 }
699 }
700 #[doc = "Checks if the value of the field is `PORTA`"]
701 #[inline(always)]
702 pub fn is_porta(&self) -> bool {
703 *self == EXTIPSEL14_A::PORTA
704 }
705 #[doc = "Checks if the value of the field is `PORTB`"]
706 #[inline(always)]
707 pub fn is_portb(&self) -> bool {
708 *self == EXTIPSEL14_A::PORTB
709 }
710 #[doc = "Checks if the value of the field is `PORTC`"]
711 #[inline(always)]
712 pub fn is_portc(&self) -> bool {
713 *self == EXTIPSEL14_A::PORTC
714 }
715 #[doc = "Checks if the value of the field is `PORTD`"]
716 #[inline(always)]
717 pub fn is_portd(&self) -> bool {
718 *self == EXTIPSEL14_A::PORTD
719 }
720 #[doc = "Checks if the value of the field is `PORTE`"]
721 #[inline(always)]
722 pub fn is_porte(&self) -> bool {
723 *self == EXTIPSEL14_A::PORTE
724 }
725 #[doc = "Checks if the value of the field is `PORTF`"]
726 #[inline(always)]
727 pub fn is_portf(&self) -> bool {
728 *self == EXTIPSEL14_A::PORTF
729 }
730}
731#[doc = "Field `EXTIPSEL14` writer - External Interrupt 14 Port Select"]
732pub type EXTIPSEL14_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL14_A, 3, 24>;
733impl<'a> EXTIPSEL14_W<'a> {
734 #[doc = "Port A pin 14 selected for external interrupt 14"]
735 #[inline(always)]
736 pub fn porta(self) -> &'a mut W {
737 self.variant(EXTIPSEL14_A::PORTA)
738 }
739 #[doc = "Port B pin 14 selected for external interrupt 14"]
740 #[inline(always)]
741 pub fn portb(self) -> &'a mut W {
742 self.variant(EXTIPSEL14_A::PORTB)
743 }
744 #[doc = "Port C pin 14 selected for external interrupt 14"]
745 #[inline(always)]
746 pub fn portc(self) -> &'a mut W {
747 self.variant(EXTIPSEL14_A::PORTC)
748 }
749 #[doc = "Port D pin 14 selected for external interrupt 14"]
750 #[inline(always)]
751 pub fn portd(self) -> &'a mut W {
752 self.variant(EXTIPSEL14_A::PORTD)
753 }
754 #[doc = "Port E pin 14 selected for external interrupt 14"]
755 #[inline(always)]
756 pub fn porte(self) -> &'a mut W {
757 self.variant(EXTIPSEL14_A::PORTE)
758 }
759 #[doc = "Port F pin 14 selected for external interrupt 14"]
760 #[inline(always)]
761 pub fn portf(self) -> &'a mut W {
762 self.variant(EXTIPSEL14_A::PORTF)
763 }
764}
765#[doc = "External Interrupt 15 Port Select\n\nValue on reset: 0"]
766#[derive(Clone, Copy, Debug, PartialEq)]
767#[repr(u8)]
768pub enum EXTIPSEL15_A {
769 #[doc = "0: Port A pin 15 selected for external interrupt 15"]
770 PORTA = 0,
771 #[doc = "1: Port B pin 15 selected for external interrupt 15"]
772 PORTB = 1,
773 #[doc = "2: Port C pin 15 selected for external interrupt 15"]
774 PORTC = 2,
775 #[doc = "3: Port D pin 15 selected for external interrupt 15"]
776 PORTD = 3,
777 #[doc = "4: Port E pin 15 selected for external interrupt 15"]
778 PORTE = 4,
779 #[doc = "5: Port F pin 15 selected for external interrupt 15"]
780 PORTF = 5,
781}
782impl From<EXTIPSEL15_A> for u8 {
783 #[inline(always)]
784 fn from(variant: EXTIPSEL15_A) -> Self {
785 variant as _
786 }
787}
788#[doc = "Field `EXTIPSEL15` reader - External Interrupt 15 Port Select"]
789pub type EXTIPSEL15_R = crate::FieldReader<u8, EXTIPSEL15_A>;
790impl EXTIPSEL15_R {
791 #[doc = "Get enumerated values variant"]
792 #[inline(always)]
793 pub fn variant(&self) -> Option<EXTIPSEL15_A> {
794 match self.bits {
795 0 => Some(EXTIPSEL15_A::PORTA),
796 1 => Some(EXTIPSEL15_A::PORTB),
797 2 => Some(EXTIPSEL15_A::PORTC),
798 3 => Some(EXTIPSEL15_A::PORTD),
799 4 => Some(EXTIPSEL15_A::PORTE),
800 5 => Some(EXTIPSEL15_A::PORTF),
801 _ => None,
802 }
803 }
804 #[doc = "Checks if the value of the field is `PORTA`"]
805 #[inline(always)]
806 pub fn is_porta(&self) -> bool {
807 *self == EXTIPSEL15_A::PORTA
808 }
809 #[doc = "Checks if the value of the field is `PORTB`"]
810 #[inline(always)]
811 pub fn is_portb(&self) -> bool {
812 *self == EXTIPSEL15_A::PORTB
813 }
814 #[doc = "Checks if the value of the field is `PORTC`"]
815 #[inline(always)]
816 pub fn is_portc(&self) -> bool {
817 *self == EXTIPSEL15_A::PORTC
818 }
819 #[doc = "Checks if the value of the field is `PORTD`"]
820 #[inline(always)]
821 pub fn is_portd(&self) -> bool {
822 *self == EXTIPSEL15_A::PORTD
823 }
824 #[doc = "Checks if the value of the field is `PORTE`"]
825 #[inline(always)]
826 pub fn is_porte(&self) -> bool {
827 *self == EXTIPSEL15_A::PORTE
828 }
829 #[doc = "Checks if the value of the field is `PORTF`"]
830 #[inline(always)]
831 pub fn is_portf(&self) -> bool {
832 *self == EXTIPSEL15_A::PORTF
833 }
834}
835#[doc = "Field `EXTIPSEL15` writer - External Interrupt 15 Port Select"]
836pub type EXTIPSEL15_W<'a> = crate::FieldWriter<'a, u32, EXTIPSELH_SPEC, u8, EXTIPSEL15_A, 3, 28>;
837impl<'a> EXTIPSEL15_W<'a> {
838 #[doc = "Port A pin 15 selected for external interrupt 15"]
839 #[inline(always)]
840 pub fn porta(self) -> &'a mut W {
841 self.variant(EXTIPSEL15_A::PORTA)
842 }
843 #[doc = "Port B pin 15 selected for external interrupt 15"]
844 #[inline(always)]
845 pub fn portb(self) -> &'a mut W {
846 self.variant(EXTIPSEL15_A::PORTB)
847 }
848 #[doc = "Port C pin 15 selected for external interrupt 15"]
849 #[inline(always)]
850 pub fn portc(self) -> &'a mut W {
851 self.variant(EXTIPSEL15_A::PORTC)
852 }
853 #[doc = "Port D pin 15 selected for external interrupt 15"]
854 #[inline(always)]
855 pub fn portd(self) -> &'a mut W {
856 self.variant(EXTIPSEL15_A::PORTD)
857 }
858 #[doc = "Port E pin 15 selected for external interrupt 15"]
859 #[inline(always)]
860 pub fn porte(self) -> &'a mut W {
861 self.variant(EXTIPSEL15_A::PORTE)
862 }
863 #[doc = "Port F pin 15 selected for external interrupt 15"]
864 #[inline(always)]
865 pub fn portf(self) -> &'a mut W {
866 self.variant(EXTIPSEL15_A::PORTF)
867 }
868}
869impl R {
870 #[doc = "Bits 0:2 - External Interrupt 8 Port Select"]
871 #[inline(always)]
872 pub fn extipsel8(&self) -> EXTIPSEL8_R {
873 EXTIPSEL8_R::new((self.bits & 7) as u8)
874 }
875 #[doc = "Bits 4:6 - External Interrupt 9 Port Select"]
876 #[inline(always)]
877 pub fn extipsel9(&self) -> EXTIPSEL9_R {
878 EXTIPSEL9_R::new(((self.bits >> 4) & 7) as u8)
879 }
880 #[doc = "Bits 8:10 - External Interrupt 10 Port Select"]
881 #[inline(always)]
882 pub fn extipsel10(&self) -> EXTIPSEL10_R {
883 EXTIPSEL10_R::new(((self.bits >> 8) & 7) as u8)
884 }
885 #[doc = "Bits 12:14 - External Interrupt 11 Port Select"]
886 #[inline(always)]
887 pub fn extipsel11(&self) -> EXTIPSEL11_R {
888 EXTIPSEL11_R::new(((self.bits >> 12) & 7) as u8)
889 }
890 #[doc = "Bits 16:18 - External Interrupt 12 Port Select"]
891 #[inline(always)]
892 pub fn extipsel12(&self) -> EXTIPSEL12_R {
893 EXTIPSEL12_R::new(((self.bits >> 16) & 7) as u8)
894 }
895 #[doc = "Bits 20:22 - External Interrupt 13 Port Select"]
896 #[inline(always)]
897 pub fn extipsel13(&self) -> EXTIPSEL13_R {
898 EXTIPSEL13_R::new(((self.bits >> 20) & 7) as u8)
899 }
900 #[doc = "Bits 24:26 - External Interrupt 14 Port Select"]
901 #[inline(always)]
902 pub fn extipsel14(&self) -> EXTIPSEL14_R {
903 EXTIPSEL14_R::new(((self.bits >> 24) & 7) as u8)
904 }
905 #[doc = "Bits 28:30 - External Interrupt 15 Port Select"]
906 #[inline(always)]
907 pub fn extipsel15(&self) -> EXTIPSEL15_R {
908 EXTIPSEL15_R::new(((self.bits >> 28) & 7) as u8)
909 }
910}
911impl W {
912 #[doc = "Bits 0:2 - External Interrupt 8 Port Select"]
913 #[inline(always)]
914 pub fn extipsel8(&mut self) -> EXTIPSEL8_W {
915 EXTIPSEL8_W::new(self)
916 }
917 #[doc = "Bits 4:6 - External Interrupt 9 Port Select"]
918 #[inline(always)]
919 pub fn extipsel9(&mut self) -> EXTIPSEL9_W {
920 EXTIPSEL9_W::new(self)
921 }
922 #[doc = "Bits 8:10 - External Interrupt 10 Port Select"]
923 #[inline(always)]
924 pub fn extipsel10(&mut self) -> EXTIPSEL10_W {
925 EXTIPSEL10_W::new(self)
926 }
927 #[doc = "Bits 12:14 - External Interrupt 11 Port Select"]
928 #[inline(always)]
929 pub fn extipsel11(&mut self) -> EXTIPSEL11_W {
930 EXTIPSEL11_W::new(self)
931 }
932 #[doc = "Bits 16:18 - External Interrupt 12 Port Select"]
933 #[inline(always)]
934 pub fn extipsel12(&mut self) -> EXTIPSEL12_W {
935 EXTIPSEL12_W::new(self)
936 }
937 #[doc = "Bits 20:22 - External Interrupt 13 Port Select"]
938 #[inline(always)]
939 pub fn extipsel13(&mut self) -> EXTIPSEL13_W {
940 EXTIPSEL13_W::new(self)
941 }
942 #[doc = "Bits 24:26 - External Interrupt 14 Port Select"]
943 #[inline(always)]
944 pub fn extipsel14(&mut self) -> EXTIPSEL14_W {
945 EXTIPSEL14_W::new(self)
946 }
947 #[doc = "Bits 28:30 - External Interrupt 15 Port Select"]
948 #[inline(always)]
949 pub fn extipsel15(&mut self) -> EXTIPSEL15_W {
950 EXTIPSEL15_W::new(self)
951 }
952 #[doc = "Writes raw bits to the register."]
953 #[inline(always)]
954 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
955 self.0.bits(bits);
956 self
957 }
958}
959#[doc = "External Interrupt Port Select High 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 [extipselh](index.html) module"]
960pub struct EXTIPSELH_SPEC;
961impl crate::RegisterSpec for EXTIPSELH_SPEC {
962 type Ux = u32;
963}
964#[doc = "`read()` method returns [extipselh::R](R) reader structure"]
965impl crate::Readable for EXTIPSELH_SPEC {
966 type Reader = R;
967}
968#[doc = "`write(|w| ..)` method takes [extipselh::W](W) writer structure"]
969impl crate::Writable for EXTIPSELH_SPEC {
970 type Writer = W;
971}
972#[doc = "`reset()` method sets EXTIPSELH to value 0"]
973impl crate::Resettable for EXTIPSELH_SPEC {
974 #[inline(always)]
975 fn reset_value() -> Self::Ux {
976 0
977 }
978}