efm32gg11b510_pac/ebi/
routepen.rs

1#[doc = "Register `ROUTEPEN` reader"]
2pub struct R(crate::R<ROUTEPEN_SPEC>);
3impl core::ops::Deref for R {
4    type Target = crate::R<ROUTEPEN_SPEC>;
5    #[inline(always)]
6    fn deref(&self) -> &Self::Target {
7        &self.0
8    }
9}
10impl From<crate::R<ROUTEPEN_SPEC>> for R {
11    #[inline(always)]
12    fn from(reader: crate::R<ROUTEPEN_SPEC>) -> Self {
13        R(reader)
14    }
15}
16#[doc = "Register `ROUTEPEN` writer"]
17pub struct W(crate::W<ROUTEPEN_SPEC>);
18impl core::ops::Deref for W {
19    type Target = crate::W<ROUTEPEN_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<ROUTEPEN_SPEC>> for W {
32    #[inline(always)]
33    fn from(writer: crate::W<ROUTEPEN_SPEC>) -> Self {
34        W(writer)
35    }
36}
37#[doc = "Field `EBIPEN` reader - EBI Pin Enable"]
38pub type EBIPEN_R = crate::BitReader<bool>;
39#[doc = "Field `EBIPEN` writer - EBI Pin Enable"]
40pub type EBIPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 0>;
41#[doc = "Field `CS0PEN` reader - EBI_CS0 Pin Enable"]
42pub type CS0PEN_R = crate::BitReader<bool>;
43#[doc = "Field `CS0PEN` writer - EBI_CS0 Pin Enable"]
44pub type CS0PEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 1>;
45#[doc = "Field `CS1PEN` reader - EBI_CS1 Pin Enable"]
46pub type CS1PEN_R = crate::BitReader<bool>;
47#[doc = "Field `CS1PEN` writer - EBI_CS1 Pin Enable"]
48pub type CS1PEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 2>;
49#[doc = "Field `CS2PEN` reader - EBI_CS2 Pin Enable"]
50pub type CS2PEN_R = crate::BitReader<bool>;
51#[doc = "Field `CS2PEN` writer - EBI_CS2 Pin Enable"]
52pub type CS2PEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 3>;
53#[doc = "Field `CS3PEN` reader - EBI_CS3 Pin Enable"]
54pub type CS3PEN_R = crate::BitReader<bool>;
55#[doc = "Field `CS3PEN` writer - EBI_CS3 Pin Enable"]
56pub type CS3PEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 4>;
57#[doc = "Field `ALEPEN` reader - EBI_ALE Pin Enable"]
58pub type ALEPEN_R = crate::BitReader<bool>;
59#[doc = "Field `ALEPEN` writer - EBI_ALE Pin Enable"]
60pub type ALEPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 5>;
61#[doc = "Field `ARDYPEN` reader - EBI_ARDY Pin Enable"]
62pub type ARDYPEN_R = crate::BitReader<bool>;
63#[doc = "Field `ARDYPEN` writer - EBI_ARDY Pin Enable"]
64pub type ARDYPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 6>;
65#[doc = "Field `BLPEN` reader - EBI_BL\\[1:0\\]
66Pin Enable"]
67pub type BLPEN_R = crate::BitReader<bool>;
68#[doc = "Field `BLPEN` writer - EBI_BL\\[1:0\\]
69Pin Enable"]
70pub type BLPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 7>;
71#[doc = "Field `NANDPEN` reader - NANDRE and NANDWE Pin Enable"]
72pub type NANDPEN_R = crate::BitReader<bool>;
73#[doc = "Field `NANDPEN` writer - NANDRE and NANDWE Pin Enable"]
74pub type NANDPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 12>;
75#[doc = "Sets the Lower Bound for EBI_A Enabling\n\nValue on reset: 0"]
76#[derive(Clone, Copy, Debug, PartialEq)]
77#[repr(u8)]
78pub enum ALB_A {
79    #[doc = "0: Address lines from EBI_A\\[0\\]
80and upwards can be enabled via APEN."]
81    A0 = 0,
82    #[doc = "1: Address lines from EBI_A\\[8\\]
83and upwards can be enabled via APEN."]
84    A8 = 1,
85    #[doc = "2: Address lines from EBI_A\\[16\\]
86and upwards can be enabled via APEN."]
87    A16 = 2,
88    #[doc = "3: Address lines from EBI_A\\[24\\]
89and upwards can be enabled via APEN."]
90    A24 = 3,
91}
92impl From<ALB_A> for u8 {
93    #[inline(always)]
94    fn from(variant: ALB_A) -> Self {
95        variant as _
96    }
97}
98#[doc = "Field `ALB` reader - Sets the Lower Bound for EBI_A Enabling"]
99pub type ALB_R = crate::FieldReader<u8, ALB_A>;
100impl ALB_R {
101    #[doc = "Get enumerated values variant"]
102    #[inline(always)]
103    pub fn variant(&self) -> ALB_A {
104        match self.bits {
105            0 => ALB_A::A0,
106            1 => ALB_A::A8,
107            2 => ALB_A::A16,
108            3 => ALB_A::A24,
109            _ => unreachable!(),
110        }
111    }
112    #[doc = "Checks if the value of the field is `A0`"]
113    #[inline(always)]
114    pub fn is_a0(&self) -> bool {
115        *self == ALB_A::A0
116    }
117    #[doc = "Checks if the value of the field is `A8`"]
118    #[inline(always)]
119    pub fn is_a8(&self) -> bool {
120        *self == ALB_A::A8
121    }
122    #[doc = "Checks if the value of the field is `A16`"]
123    #[inline(always)]
124    pub fn is_a16(&self) -> bool {
125        *self == ALB_A::A16
126    }
127    #[doc = "Checks if the value of the field is `A24`"]
128    #[inline(always)]
129    pub fn is_a24(&self) -> bool {
130        *self == ALB_A::A24
131    }
132}
133#[doc = "Field `ALB` writer - Sets the Lower Bound for EBI_A Enabling"]
134pub type ALB_W<'a> = crate::FieldWriterSafe<'a, u32, ROUTEPEN_SPEC, u8, ALB_A, 2, 16>;
135impl<'a> ALB_W<'a> {
136    #[doc = "Address lines from EBI_A\\[0\\]
137and upwards can be enabled via APEN."]
138    #[inline(always)]
139    pub fn a0(self) -> &'a mut W {
140        self.variant(ALB_A::A0)
141    }
142    #[doc = "Address lines from EBI_A\\[8\\]
143and upwards can be enabled via APEN."]
144    #[inline(always)]
145    pub fn a8(self) -> &'a mut W {
146        self.variant(ALB_A::A8)
147    }
148    #[doc = "Address lines from EBI_A\\[16\\]
149and upwards can be enabled via APEN."]
150    #[inline(always)]
151    pub fn a16(self) -> &'a mut W {
152        self.variant(ALB_A::A16)
153    }
154    #[doc = "Address lines from EBI_A\\[24\\]
155and upwards can be enabled via APEN."]
156    #[inline(always)]
157    pub fn a24(self) -> &'a mut W {
158        self.variant(ALB_A::A24)
159    }
160}
161#[doc = "EBI_A Pin Enable\n\nValue on reset: 0"]
162#[derive(Clone, Copy, Debug, PartialEq)]
163#[repr(u8)]
164pub enum APEN_A {
165    #[doc = "0: All EBI_A pins are disabled."]
166    A0 = 0,
167    #[doc = "5: EBI_A\\[4:L\\]
168pins enabled."]
169    A5 = 5,
170    #[doc = "6: EBI_A\\[5:L\\]
171pins enabled."]
172    A6 = 6,
173    #[doc = "7: EBI_A\\[6:L\\]
174pins enabled."]
175    A7 = 7,
176    #[doc = "8: EBI_A\\[7:L\\]
177pins enabled."]
178    A8 = 8,
179    #[doc = "9: EBI_A\\[8:L\\]
180pins enabled."]
181    A9 = 9,
182    #[doc = "10: EBI_A\\[9:L\\]
183pins enabled."]
184    A10 = 10,
185    #[doc = "11: EBI_A\\[10:L\\]
186pins enabled."]
187    A11 = 11,
188    #[doc = "12: EBI_A\\[11:L\\]
189pins enabled."]
190    A12 = 12,
191    #[doc = "13: EBI_A\\[12:L\\]
192pins enabled."]
193    A13 = 13,
194    #[doc = "14: EBI_A\\[13:L\\]
195pins enabled."]
196    A14 = 14,
197    #[doc = "15: EBI_A\\[14:L\\]
198pins enabled."]
199    A15 = 15,
200    #[doc = "16: EBI_A\\[15:L\\]
201pins enabled."]
202    A16 = 16,
203    #[doc = "17: EBI_A\\[16:L\\]
204pins enabled."]
205    A17 = 17,
206    #[doc = "18: EBI_A\\[17:L\\]
207pins enabled."]
208    A18 = 18,
209    #[doc = "19: EBI_A\\[18:L\\]
210pins enabled."]
211    A19 = 19,
212    #[doc = "20: EBI_A\\[19:L\\]
213pins enabled."]
214    A20 = 20,
215    #[doc = "21: EBI_A\\[20:L\\]
216pins enabled."]
217    A21 = 21,
218    #[doc = "22: EBI_A\\[21:L\\]
219pins enabled."]
220    A22 = 22,
221    #[doc = "23: EBI_A\\[22:L\\]
222pins enabled."]
223    A23 = 23,
224    #[doc = "24: EBI_A\\[23:L\\]
225pins enabled."]
226    A24 = 24,
227    #[doc = "25: EBI_A\\[24:L\\]
228pins enabled."]
229    A25 = 25,
230    #[doc = "26: EBI_A\\[25:L\\]
231pins enabled."]
232    A26 = 26,
233    #[doc = "27: EBI_A\\[26:L\\]
234pins enabled."]
235    A27 = 27,
236    #[doc = "28: EBI_A\\[27:L\\]
237pins enabled."]
238    A28 = 28,
239}
240impl From<APEN_A> for u8 {
241    #[inline(always)]
242    fn from(variant: APEN_A) -> Self {
243        variant as _
244    }
245}
246#[doc = "Field `APEN` reader - EBI_A Pin Enable"]
247pub type APEN_R = crate::FieldReader<u8, APEN_A>;
248impl APEN_R {
249    #[doc = "Get enumerated values variant"]
250    #[inline(always)]
251    pub fn variant(&self) -> Option<APEN_A> {
252        match self.bits {
253            0 => Some(APEN_A::A0),
254            5 => Some(APEN_A::A5),
255            6 => Some(APEN_A::A6),
256            7 => Some(APEN_A::A7),
257            8 => Some(APEN_A::A8),
258            9 => Some(APEN_A::A9),
259            10 => Some(APEN_A::A10),
260            11 => Some(APEN_A::A11),
261            12 => Some(APEN_A::A12),
262            13 => Some(APEN_A::A13),
263            14 => Some(APEN_A::A14),
264            15 => Some(APEN_A::A15),
265            16 => Some(APEN_A::A16),
266            17 => Some(APEN_A::A17),
267            18 => Some(APEN_A::A18),
268            19 => Some(APEN_A::A19),
269            20 => Some(APEN_A::A20),
270            21 => Some(APEN_A::A21),
271            22 => Some(APEN_A::A22),
272            23 => Some(APEN_A::A23),
273            24 => Some(APEN_A::A24),
274            25 => Some(APEN_A::A25),
275            26 => Some(APEN_A::A26),
276            27 => Some(APEN_A::A27),
277            28 => Some(APEN_A::A28),
278            _ => None,
279        }
280    }
281    #[doc = "Checks if the value of the field is `A0`"]
282    #[inline(always)]
283    pub fn is_a0(&self) -> bool {
284        *self == APEN_A::A0
285    }
286    #[doc = "Checks if the value of the field is `A5`"]
287    #[inline(always)]
288    pub fn is_a5(&self) -> bool {
289        *self == APEN_A::A5
290    }
291    #[doc = "Checks if the value of the field is `A6`"]
292    #[inline(always)]
293    pub fn is_a6(&self) -> bool {
294        *self == APEN_A::A6
295    }
296    #[doc = "Checks if the value of the field is `A7`"]
297    #[inline(always)]
298    pub fn is_a7(&self) -> bool {
299        *self == APEN_A::A7
300    }
301    #[doc = "Checks if the value of the field is `A8`"]
302    #[inline(always)]
303    pub fn is_a8(&self) -> bool {
304        *self == APEN_A::A8
305    }
306    #[doc = "Checks if the value of the field is `A9`"]
307    #[inline(always)]
308    pub fn is_a9(&self) -> bool {
309        *self == APEN_A::A9
310    }
311    #[doc = "Checks if the value of the field is `A10`"]
312    #[inline(always)]
313    pub fn is_a10(&self) -> bool {
314        *self == APEN_A::A10
315    }
316    #[doc = "Checks if the value of the field is `A11`"]
317    #[inline(always)]
318    pub fn is_a11(&self) -> bool {
319        *self == APEN_A::A11
320    }
321    #[doc = "Checks if the value of the field is `A12`"]
322    #[inline(always)]
323    pub fn is_a12(&self) -> bool {
324        *self == APEN_A::A12
325    }
326    #[doc = "Checks if the value of the field is `A13`"]
327    #[inline(always)]
328    pub fn is_a13(&self) -> bool {
329        *self == APEN_A::A13
330    }
331    #[doc = "Checks if the value of the field is `A14`"]
332    #[inline(always)]
333    pub fn is_a14(&self) -> bool {
334        *self == APEN_A::A14
335    }
336    #[doc = "Checks if the value of the field is `A15`"]
337    #[inline(always)]
338    pub fn is_a15(&self) -> bool {
339        *self == APEN_A::A15
340    }
341    #[doc = "Checks if the value of the field is `A16`"]
342    #[inline(always)]
343    pub fn is_a16(&self) -> bool {
344        *self == APEN_A::A16
345    }
346    #[doc = "Checks if the value of the field is `A17`"]
347    #[inline(always)]
348    pub fn is_a17(&self) -> bool {
349        *self == APEN_A::A17
350    }
351    #[doc = "Checks if the value of the field is `A18`"]
352    #[inline(always)]
353    pub fn is_a18(&self) -> bool {
354        *self == APEN_A::A18
355    }
356    #[doc = "Checks if the value of the field is `A19`"]
357    #[inline(always)]
358    pub fn is_a19(&self) -> bool {
359        *self == APEN_A::A19
360    }
361    #[doc = "Checks if the value of the field is `A20`"]
362    #[inline(always)]
363    pub fn is_a20(&self) -> bool {
364        *self == APEN_A::A20
365    }
366    #[doc = "Checks if the value of the field is `A21`"]
367    #[inline(always)]
368    pub fn is_a21(&self) -> bool {
369        *self == APEN_A::A21
370    }
371    #[doc = "Checks if the value of the field is `A22`"]
372    #[inline(always)]
373    pub fn is_a22(&self) -> bool {
374        *self == APEN_A::A22
375    }
376    #[doc = "Checks if the value of the field is `A23`"]
377    #[inline(always)]
378    pub fn is_a23(&self) -> bool {
379        *self == APEN_A::A23
380    }
381    #[doc = "Checks if the value of the field is `A24`"]
382    #[inline(always)]
383    pub fn is_a24(&self) -> bool {
384        *self == APEN_A::A24
385    }
386    #[doc = "Checks if the value of the field is `A25`"]
387    #[inline(always)]
388    pub fn is_a25(&self) -> bool {
389        *self == APEN_A::A25
390    }
391    #[doc = "Checks if the value of the field is `A26`"]
392    #[inline(always)]
393    pub fn is_a26(&self) -> bool {
394        *self == APEN_A::A26
395    }
396    #[doc = "Checks if the value of the field is `A27`"]
397    #[inline(always)]
398    pub fn is_a27(&self) -> bool {
399        *self == APEN_A::A27
400    }
401    #[doc = "Checks if the value of the field is `A28`"]
402    #[inline(always)]
403    pub fn is_a28(&self) -> bool {
404        *self == APEN_A::A28
405    }
406}
407#[doc = "Field `APEN` writer - EBI_A Pin Enable"]
408pub type APEN_W<'a> = crate::FieldWriter<'a, u32, ROUTEPEN_SPEC, u8, APEN_A, 5, 18>;
409impl<'a> APEN_W<'a> {
410    #[doc = "All EBI_A pins are disabled."]
411    #[inline(always)]
412    pub fn a0(self) -> &'a mut W {
413        self.variant(APEN_A::A0)
414    }
415    #[doc = "EBI_A\\[4:L\\]
416pins enabled."]
417    #[inline(always)]
418    pub fn a5(self) -> &'a mut W {
419        self.variant(APEN_A::A5)
420    }
421    #[doc = "EBI_A\\[5:L\\]
422pins enabled."]
423    #[inline(always)]
424    pub fn a6(self) -> &'a mut W {
425        self.variant(APEN_A::A6)
426    }
427    #[doc = "EBI_A\\[6:L\\]
428pins enabled."]
429    #[inline(always)]
430    pub fn a7(self) -> &'a mut W {
431        self.variant(APEN_A::A7)
432    }
433    #[doc = "EBI_A\\[7:L\\]
434pins enabled."]
435    #[inline(always)]
436    pub fn a8(self) -> &'a mut W {
437        self.variant(APEN_A::A8)
438    }
439    #[doc = "EBI_A\\[8:L\\]
440pins enabled."]
441    #[inline(always)]
442    pub fn a9(self) -> &'a mut W {
443        self.variant(APEN_A::A9)
444    }
445    #[doc = "EBI_A\\[9:L\\]
446pins enabled."]
447    #[inline(always)]
448    pub fn a10(self) -> &'a mut W {
449        self.variant(APEN_A::A10)
450    }
451    #[doc = "EBI_A\\[10:L\\]
452pins enabled."]
453    #[inline(always)]
454    pub fn a11(self) -> &'a mut W {
455        self.variant(APEN_A::A11)
456    }
457    #[doc = "EBI_A\\[11:L\\]
458pins enabled."]
459    #[inline(always)]
460    pub fn a12(self) -> &'a mut W {
461        self.variant(APEN_A::A12)
462    }
463    #[doc = "EBI_A\\[12:L\\]
464pins enabled."]
465    #[inline(always)]
466    pub fn a13(self) -> &'a mut W {
467        self.variant(APEN_A::A13)
468    }
469    #[doc = "EBI_A\\[13:L\\]
470pins enabled."]
471    #[inline(always)]
472    pub fn a14(self) -> &'a mut W {
473        self.variant(APEN_A::A14)
474    }
475    #[doc = "EBI_A\\[14:L\\]
476pins enabled."]
477    #[inline(always)]
478    pub fn a15(self) -> &'a mut W {
479        self.variant(APEN_A::A15)
480    }
481    #[doc = "EBI_A\\[15:L\\]
482pins enabled."]
483    #[inline(always)]
484    pub fn a16(self) -> &'a mut W {
485        self.variant(APEN_A::A16)
486    }
487    #[doc = "EBI_A\\[16:L\\]
488pins enabled."]
489    #[inline(always)]
490    pub fn a17(self) -> &'a mut W {
491        self.variant(APEN_A::A17)
492    }
493    #[doc = "EBI_A\\[17:L\\]
494pins enabled."]
495    #[inline(always)]
496    pub fn a18(self) -> &'a mut W {
497        self.variant(APEN_A::A18)
498    }
499    #[doc = "EBI_A\\[18:L\\]
500pins enabled."]
501    #[inline(always)]
502    pub fn a19(self) -> &'a mut W {
503        self.variant(APEN_A::A19)
504    }
505    #[doc = "EBI_A\\[19:L\\]
506pins enabled."]
507    #[inline(always)]
508    pub fn a20(self) -> &'a mut W {
509        self.variant(APEN_A::A20)
510    }
511    #[doc = "EBI_A\\[20:L\\]
512pins enabled."]
513    #[inline(always)]
514    pub fn a21(self) -> &'a mut W {
515        self.variant(APEN_A::A21)
516    }
517    #[doc = "EBI_A\\[21:L\\]
518pins enabled."]
519    #[inline(always)]
520    pub fn a22(self) -> &'a mut W {
521        self.variant(APEN_A::A22)
522    }
523    #[doc = "EBI_A\\[22:L\\]
524pins enabled."]
525    #[inline(always)]
526    pub fn a23(self) -> &'a mut W {
527        self.variant(APEN_A::A23)
528    }
529    #[doc = "EBI_A\\[23:L\\]
530pins enabled."]
531    #[inline(always)]
532    pub fn a24(self) -> &'a mut W {
533        self.variant(APEN_A::A24)
534    }
535    #[doc = "EBI_A\\[24:L\\]
536pins enabled."]
537    #[inline(always)]
538    pub fn a25(self) -> &'a mut W {
539        self.variant(APEN_A::A25)
540    }
541    #[doc = "EBI_A\\[25:L\\]
542pins enabled."]
543    #[inline(always)]
544    pub fn a26(self) -> &'a mut W {
545        self.variant(APEN_A::A26)
546    }
547    #[doc = "EBI_A\\[26:L\\]
548pins enabled."]
549    #[inline(always)]
550    pub fn a27(self) -> &'a mut W {
551        self.variant(APEN_A::A27)
552    }
553    #[doc = "EBI_A\\[27:L\\]
554pins enabled."]
555    #[inline(always)]
556    pub fn a28(self) -> &'a mut W {
557        self.variant(APEN_A::A28)
558    }
559}
560#[doc = "Field `TFTPEN` reader - EBI_TFT Pin Enable"]
561pub type TFTPEN_R = crate::BitReader<bool>;
562#[doc = "Field `TFTPEN` writer - EBI_TFT Pin Enable"]
563pub type TFTPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 24>;
564#[doc = "Field `DATAENPEN` reader - EBI_DATA Pin Enable"]
565pub type DATAENPEN_R = crate::BitReader<bool>;
566#[doc = "Field `DATAENPEN` writer - EBI_DATA Pin Enable"]
567pub type DATAENPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 25>;
568#[doc = "Field `CSTFTPEN` reader - EBI_CSTFT Pin Enable"]
569pub type CSTFTPEN_R = crate::BitReader<bool>;
570#[doc = "Field `CSTFTPEN` writer - EBI_CSTFT Pin Enable"]
571pub type CSTFTPEN_W<'a> = crate::BitWriter<'a, u32, ROUTEPEN_SPEC, bool, 26>;
572impl R {
573    #[doc = "Bit 0 - EBI Pin Enable"]
574    #[inline(always)]
575    pub fn ebipen(&self) -> EBIPEN_R {
576        EBIPEN_R::new((self.bits & 1) != 0)
577    }
578    #[doc = "Bit 1 - EBI_CS0 Pin Enable"]
579    #[inline(always)]
580    pub fn cs0pen(&self) -> CS0PEN_R {
581        CS0PEN_R::new(((self.bits >> 1) & 1) != 0)
582    }
583    #[doc = "Bit 2 - EBI_CS1 Pin Enable"]
584    #[inline(always)]
585    pub fn cs1pen(&self) -> CS1PEN_R {
586        CS1PEN_R::new(((self.bits >> 2) & 1) != 0)
587    }
588    #[doc = "Bit 3 - EBI_CS2 Pin Enable"]
589    #[inline(always)]
590    pub fn cs2pen(&self) -> CS2PEN_R {
591        CS2PEN_R::new(((self.bits >> 3) & 1) != 0)
592    }
593    #[doc = "Bit 4 - EBI_CS3 Pin Enable"]
594    #[inline(always)]
595    pub fn cs3pen(&self) -> CS3PEN_R {
596        CS3PEN_R::new(((self.bits >> 4) & 1) != 0)
597    }
598    #[doc = "Bit 5 - EBI_ALE Pin Enable"]
599    #[inline(always)]
600    pub fn alepen(&self) -> ALEPEN_R {
601        ALEPEN_R::new(((self.bits >> 5) & 1) != 0)
602    }
603    #[doc = "Bit 6 - EBI_ARDY Pin Enable"]
604    #[inline(always)]
605    pub fn ardypen(&self) -> ARDYPEN_R {
606        ARDYPEN_R::new(((self.bits >> 6) & 1) != 0)
607    }
608    #[doc = "Bit 7 - EBI_BL\\[1:0\\]
609Pin Enable"]
610    #[inline(always)]
611    pub fn blpen(&self) -> BLPEN_R {
612        BLPEN_R::new(((self.bits >> 7) & 1) != 0)
613    }
614    #[doc = "Bit 12 - NANDRE and NANDWE Pin Enable"]
615    #[inline(always)]
616    pub fn nandpen(&self) -> NANDPEN_R {
617        NANDPEN_R::new(((self.bits >> 12) & 1) != 0)
618    }
619    #[doc = "Bits 16:17 - Sets the Lower Bound for EBI_A Enabling"]
620    #[inline(always)]
621    pub fn alb(&self) -> ALB_R {
622        ALB_R::new(((self.bits >> 16) & 3) as u8)
623    }
624    #[doc = "Bits 18:22 - EBI_A Pin Enable"]
625    #[inline(always)]
626    pub fn apen(&self) -> APEN_R {
627        APEN_R::new(((self.bits >> 18) & 0x1f) as u8)
628    }
629    #[doc = "Bit 24 - EBI_TFT Pin Enable"]
630    #[inline(always)]
631    pub fn tftpen(&self) -> TFTPEN_R {
632        TFTPEN_R::new(((self.bits >> 24) & 1) != 0)
633    }
634    #[doc = "Bit 25 - EBI_DATA Pin Enable"]
635    #[inline(always)]
636    pub fn dataenpen(&self) -> DATAENPEN_R {
637        DATAENPEN_R::new(((self.bits >> 25) & 1) != 0)
638    }
639    #[doc = "Bit 26 - EBI_CSTFT Pin Enable"]
640    #[inline(always)]
641    pub fn cstftpen(&self) -> CSTFTPEN_R {
642        CSTFTPEN_R::new(((self.bits >> 26) & 1) != 0)
643    }
644}
645impl W {
646    #[doc = "Bit 0 - EBI Pin Enable"]
647    #[inline(always)]
648    pub fn ebipen(&mut self) -> EBIPEN_W {
649        EBIPEN_W::new(self)
650    }
651    #[doc = "Bit 1 - EBI_CS0 Pin Enable"]
652    #[inline(always)]
653    pub fn cs0pen(&mut self) -> CS0PEN_W {
654        CS0PEN_W::new(self)
655    }
656    #[doc = "Bit 2 - EBI_CS1 Pin Enable"]
657    #[inline(always)]
658    pub fn cs1pen(&mut self) -> CS1PEN_W {
659        CS1PEN_W::new(self)
660    }
661    #[doc = "Bit 3 - EBI_CS2 Pin Enable"]
662    #[inline(always)]
663    pub fn cs2pen(&mut self) -> CS2PEN_W {
664        CS2PEN_W::new(self)
665    }
666    #[doc = "Bit 4 - EBI_CS3 Pin Enable"]
667    #[inline(always)]
668    pub fn cs3pen(&mut self) -> CS3PEN_W {
669        CS3PEN_W::new(self)
670    }
671    #[doc = "Bit 5 - EBI_ALE Pin Enable"]
672    #[inline(always)]
673    pub fn alepen(&mut self) -> ALEPEN_W {
674        ALEPEN_W::new(self)
675    }
676    #[doc = "Bit 6 - EBI_ARDY Pin Enable"]
677    #[inline(always)]
678    pub fn ardypen(&mut self) -> ARDYPEN_W {
679        ARDYPEN_W::new(self)
680    }
681    #[doc = "Bit 7 - EBI_BL\\[1:0\\]
682Pin Enable"]
683    #[inline(always)]
684    pub fn blpen(&mut self) -> BLPEN_W {
685        BLPEN_W::new(self)
686    }
687    #[doc = "Bit 12 - NANDRE and NANDWE Pin Enable"]
688    #[inline(always)]
689    pub fn nandpen(&mut self) -> NANDPEN_W {
690        NANDPEN_W::new(self)
691    }
692    #[doc = "Bits 16:17 - Sets the Lower Bound for EBI_A Enabling"]
693    #[inline(always)]
694    pub fn alb(&mut self) -> ALB_W {
695        ALB_W::new(self)
696    }
697    #[doc = "Bits 18:22 - EBI_A Pin Enable"]
698    #[inline(always)]
699    pub fn apen(&mut self) -> APEN_W {
700        APEN_W::new(self)
701    }
702    #[doc = "Bit 24 - EBI_TFT Pin Enable"]
703    #[inline(always)]
704    pub fn tftpen(&mut self) -> TFTPEN_W {
705        TFTPEN_W::new(self)
706    }
707    #[doc = "Bit 25 - EBI_DATA Pin Enable"]
708    #[inline(always)]
709    pub fn dataenpen(&mut self) -> DATAENPEN_W {
710        DATAENPEN_W::new(self)
711    }
712    #[doc = "Bit 26 - EBI_CSTFT Pin Enable"]
713    #[inline(always)]
714    pub fn cstftpen(&mut self) -> CSTFTPEN_W {
715        CSTFTPEN_W::new(self)
716    }
717    #[doc = "Writes raw bits to the register."]
718    #[inline(always)]
719    pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
720        self.0.bits(bits);
721        self
722    }
723}
724#[doc = "I/O Routing 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 [routepen](index.html) module"]
725pub struct ROUTEPEN_SPEC;
726impl crate::RegisterSpec for ROUTEPEN_SPEC {
727    type Ux = u32;
728}
729#[doc = "`read()` method returns [routepen::R](R) reader structure"]
730impl crate::Readable for ROUTEPEN_SPEC {
731    type Reader = R;
732}
733#[doc = "`write(|w| ..)` method takes [routepen::W](W) writer structure"]
734impl crate::Writable for ROUTEPEN_SPEC {
735    type Writer = W;
736}
737#[doc = "`reset()` method sets ROUTEPEN to value 0"]
738impl crate::Resettable for ROUTEPEN_SPEC {
739    #[inline(always)]
740    fn reset_value() -> Self::Ux {
741        0
742    }
743}