efm32gg11b/leuart1/
routeloc0.rs1#[doc = "Reader of register ROUTELOC0"]
2pub type R = crate::R<u32, super::ROUTELOC0>;
3#[doc = "Writer for register ROUTELOC0"]
4pub type W = crate::W<u32, super::ROUTELOC0>;
5#[doc = "Register ROUTELOC0 `reset()`'s with value 0"]
6impl crate::ResetValue for super::ROUTELOC0 {
7 type Type = u32;
8 #[inline(always)]
9 fn reset_value() -> Self::Type { 0 }
10}
11#[doc = "I/O Location\n\nValue on reset: 0"]
12#[derive(Clone, Copy, Debug, PartialEq)]
13#[repr(u8)]
14pub enum RXLOC_A {
15 #[doc = "0: Location 0"]
16 LOC0 = 0,
17 #[doc = "1: Location 1"]
18 LOC1 = 1,
19 #[doc = "2: Location 2"]
20 LOC2 = 2,
21 #[doc = "3: Location 3"]
22 LOC3 = 3,
23 #[doc = "4: Location 4"]
24 LOC4 = 4,
25 #[doc = "5: Location 5"]
26 LOC5 = 5,
27}
28impl From<RXLOC_A> for u8 {
29 #[inline(always)]
30 fn from(variant: RXLOC_A) -> Self { variant as _ }
31}
32#[doc = "Reader of field `RXLOC`"]
33pub type RXLOC_R = crate::R<u8, RXLOC_A>;
34impl RXLOC_R {
35 #[doc = r"Get enumerated values variant"]
36 #[inline(always)]
37 pub fn variant(&self) -> crate::Variant<u8, RXLOC_A> {
38 use crate::Variant::*;
39 match self.bits {
40 0 => Val(RXLOC_A::LOC0),
41 1 => Val(RXLOC_A::LOC1),
42 2 => Val(RXLOC_A::LOC2),
43 3 => Val(RXLOC_A::LOC3),
44 4 => Val(RXLOC_A::LOC4),
45 5 => Val(RXLOC_A::LOC5),
46 i => Res(i),
47 }
48 }
49 #[doc = "Checks if the value of the field is `LOC0`"]
50 #[inline(always)]
51 pub fn is_loc0(&self) -> bool { *self == RXLOC_A::LOC0 }
52 #[doc = "Checks if the value of the field is `LOC1`"]
53 #[inline(always)]
54 pub fn is_loc1(&self) -> bool { *self == RXLOC_A::LOC1 }
55 #[doc = "Checks if the value of the field is `LOC2`"]
56 #[inline(always)]
57 pub fn is_loc2(&self) -> bool { *self == RXLOC_A::LOC2 }
58 #[doc = "Checks if the value of the field is `LOC3`"]
59 #[inline(always)]
60 pub fn is_loc3(&self) -> bool { *self == RXLOC_A::LOC3 }
61 #[doc = "Checks if the value of the field is `LOC4`"]
62 #[inline(always)]
63 pub fn is_loc4(&self) -> bool { *self == RXLOC_A::LOC4 }
64 #[doc = "Checks if the value of the field is `LOC5`"]
65 #[inline(always)]
66 pub fn is_loc5(&self) -> bool { *self == RXLOC_A::LOC5 }
67}
68#[doc = "Write proxy for field `RXLOC`"]
69pub struct RXLOC_W<'a> {
70 w: &'a mut W,
71}
72impl<'a> RXLOC_W<'a> {
73 #[doc = r"Writes `variant` to the field"]
74 #[inline(always)]
75 pub fn variant(self, variant: RXLOC_A) -> &'a mut W { unsafe { self.bits(variant.into()) } }
76 #[doc = "Location 0"]
77 #[inline(always)]
78 pub fn loc0(self) -> &'a mut W { self.variant(RXLOC_A::LOC0) }
79 #[doc = "Location 1"]
80 #[inline(always)]
81 pub fn loc1(self) -> &'a mut W { self.variant(RXLOC_A::LOC1) }
82 #[doc = "Location 2"]
83 #[inline(always)]
84 pub fn loc2(self) -> &'a mut W { self.variant(RXLOC_A::LOC2) }
85 #[doc = "Location 3"]
86 #[inline(always)]
87 pub fn loc3(self) -> &'a mut W { self.variant(RXLOC_A::LOC3) }
88 #[doc = "Location 4"]
89 #[inline(always)]
90 pub fn loc4(self) -> &'a mut W { self.variant(RXLOC_A::LOC4) }
91 #[doc = "Location 5"]
92 #[inline(always)]
93 pub fn loc5(self) -> &'a mut W { self.variant(RXLOC_A::LOC5) }
94 #[doc = r"Writes raw bits to the field"]
95 #[inline(always)]
96 pub unsafe fn bits(self, value: u8) -> &'a mut W {
97 self.w.bits = (self.w.bits & !0x3f) | ((value as u32) & 0x3f);
98 self.w
99 }
100}
101#[doc = "I/O Location\n\nValue on reset: 0"]
102#[derive(Clone, Copy, Debug, PartialEq)]
103#[repr(u8)]
104pub enum TXLOC_A {
105 #[doc = "0: Location 0"]
106 LOC0 = 0,
107 #[doc = "1: Location 1"]
108 LOC1 = 1,
109 #[doc = "2: Location 2"]
110 LOC2 = 2,
111 #[doc = "3: Location 3"]
112 LOC3 = 3,
113 #[doc = "4: Location 4"]
114 LOC4 = 4,
115 #[doc = "5: Location 5"]
116 LOC5 = 5,
117}
118impl From<TXLOC_A> for u8 {
119 #[inline(always)]
120 fn from(variant: TXLOC_A) -> Self { variant as _ }
121}
122#[doc = "Reader of field `TXLOC`"]
123pub type TXLOC_R = crate::R<u8, TXLOC_A>;
124impl TXLOC_R {
125 #[doc = r"Get enumerated values variant"]
126 #[inline(always)]
127 pub fn variant(&self) -> crate::Variant<u8, TXLOC_A> {
128 use crate::Variant::*;
129 match self.bits {
130 0 => Val(TXLOC_A::LOC0),
131 1 => Val(TXLOC_A::LOC1),
132 2 => Val(TXLOC_A::LOC2),
133 3 => Val(TXLOC_A::LOC3),
134 4 => Val(TXLOC_A::LOC4),
135 5 => Val(TXLOC_A::LOC5),
136 i => Res(i),
137 }
138 }
139 #[doc = "Checks if the value of the field is `LOC0`"]
140 #[inline(always)]
141 pub fn is_loc0(&self) -> bool { *self == TXLOC_A::LOC0 }
142 #[doc = "Checks if the value of the field is `LOC1`"]
143 #[inline(always)]
144 pub fn is_loc1(&self) -> bool { *self == TXLOC_A::LOC1 }
145 #[doc = "Checks if the value of the field is `LOC2`"]
146 #[inline(always)]
147 pub fn is_loc2(&self) -> bool { *self == TXLOC_A::LOC2 }
148 #[doc = "Checks if the value of the field is `LOC3`"]
149 #[inline(always)]
150 pub fn is_loc3(&self) -> bool { *self == TXLOC_A::LOC3 }
151 #[doc = "Checks if the value of the field is `LOC4`"]
152 #[inline(always)]
153 pub fn is_loc4(&self) -> bool { *self == TXLOC_A::LOC4 }
154 #[doc = "Checks if the value of the field is `LOC5`"]
155 #[inline(always)]
156 pub fn is_loc5(&self) -> bool { *self == TXLOC_A::LOC5 }
157}
158#[doc = "Write proxy for field `TXLOC`"]
159pub struct TXLOC_W<'a> {
160 w: &'a mut W,
161}
162impl<'a> TXLOC_W<'a> {
163 #[doc = r"Writes `variant` to the field"]
164 #[inline(always)]
165 pub fn variant(self, variant: TXLOC_A) -> &'a mut W { unsafe { self.bits(variant.into()) } }
166 #[doc = "Location 0"]
167 #[inline(always)]
168 pub fn loc0(self) -> &'a mut W { self.variant(TXLOC_A::LOC0) }
169 #[doc = "Location 1"]
170 #[inline(always)]
171 pub fn loc1(self) -> &'a mut W { self.variant(TXLOC_A::LOC1) }
172 #[doc = "Location 2"]
173 #[inline(always)]
174 pub fn loc2(self) -> &'a mut W { self.variant(TXLOC_A::LOC2) }
175 #[doc = "Location 3"]
176 #[inline(always)]
177 pub fn loc3(self) -> &'a mut W { self.variant(TXLOC_A::LOC3) }
178 #[doc = "Location 4"]
179 #[inline(always)]
180 pub fn loc4(self) -> &'a mut W { self.variant(TXLOC_A::LOC4) }
181 #[doc = "Location 5"]
182 #[inline(always)]
183 pub fn loc5(self) -> &'a mut W { self.variant(TXLOC_A::LOC5) }
184 #[doc = r"Writes raw bits to the field"]
185 #[inline(always)]
186 pub unsafe fn bits(self, value: u8) -> &'a mut W {
187 self.w.bits = (self.w.bits & !(0x3f << 8)) | (((value as u32) & 0x3f) << 8);
188 self.w
189 }
190}
191impl R {
192 #[doc = "Bits 0:5 - I/O Location"]
193 #[inline(always)]
194 pub fn rxloc(&self) -> RXLOC_R { RXLOC_R::new((self.bits & 0x3f) as u8) }
195 #[doc = "Bits 8:13 - I/O Location"]
196 #[inline(always)]
197 pub fn txloc(&self) -> TXLOC_R { TXLOC_R::new(((self.bits >> 8) & 0x3f) as u8) }
198}
199impl W {
200 #[doc = "Bits 0:5 - I/O Location"]
201 #[inline(always)]
202 pub fn rxloc(&mut self) -> RXLOC_W { RXLOC_W { w: self } }
203 #[doc = "Bits 8:13 - I/O Location"]
204 #[inline(always)]
205 pub fn txloc(&mut self) -> TXLOC_W { TXLOC_W { w: self } }
206}