efm32pg12_pac/cmu/
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 {
10 0
11 }
12}
13#[doc = "I/O Location\n\nValue on reset: 0"]
14#[derive(Clone, Copy, Debug, PartialEq)]
15#[repr(u8)]
16pub enum CLKOUT0LOC_A {
17 #[doc = "0: Location 0"]
18 LOC0 = 0,
19 #[doc = "1: Location 1"]
20 LOC1 = 1,
21 #[doc = "2: Location 2"]
22 LOC2 = 2,
23 #[doc = "3: Location 3"]
24 LOC3 = 3,
25 #[doc = "4: Location 4"]
26 LOC4 = 4,
27 #[doc = "5: Location 5"]
28 LOC5 = 5,
29 #[doc = "6: Location 6"]
30 LOC6 = 6,
31 #[doc = "7: Location 7"]
32 LOC7 = 7,
33}
34impl From<CLKOUT0LOC_A> for u8 {
35 #[inline(always)]
36 fn from(variant: CLKOUT0LOC_A) -> Self {
37 variant as _
38 }
39}
40#[doc = "Reader of field `CLKOUT0LOC`"]
41pub type CLKOUT0LOC_R = crate::R<u8, CLKOUT0LOC_A>;
42impl CLKOUT0LOC_R {
43 #[doc = r"Get enumerated values variant"]
44 #[inline(always)]
45 pub fn variant(&self) -> crate::Variant<u8, CLKOUT0LOC_A> {
46 use crate::Variant::*;
47 match self.bits {
48 0 => Val(CLKOUT0LOC_A::LOC0),
49 1 => Val(CLKOUT0LOC_A::LOC1),
50 2 => Val(CLKOUT0LOC_A::LOC2),
51 3 => Val(CLKOUT0LOC_A::LOC3),
52 4 => Val(CLKOUT0LOC_A::LOC4),
53 5 => Val(CLKOUT0LOC_A::LOC5),
54 6 => Val(CLKOUT0LOC_A::LOC6),
55 7 => Val(CLKOUT0LOC_A::LOC7),
56 i => Res(i),
57 }
58 }
59 #[doc = "Checks if the value of the field is `LOC0`"]
60 #[inline(always)]
61 pub fn is_loc0(&self) -> bool {
62 *self == CLKOUT0LOC_A::LOC0
63 }
64 #[doc = "Checks if the value of the field is `LOC1`"]
65 #[inline(always)]
66 pub fn is_loc1(&self) -> bool {
67 *self == CLKOUT0LOC_A::LOC1
68 }
69 #[doc = "Checks if the value of the field is `LOC2`"]
70 #[inline(always)]
71 pub fn is_loc2(&self) -> bool {
72 *self == CLKOUT0LOC_A::LOC2
73 }
74 #[doc = "Checks if the value of the field is `LOC3`"]
75 #[inline(always)]
76 pub fn is_loc3(&self) -> bool {
77 *self == CLKOUT0LOC_A::LOC3
78 }
79 #[doc = "Checks if the value of the field is `LOC4`"]
80 #[inline(always)]
81 pub fn is_loc4(&self) -> bool {
82 *self == CLKOUT0LOC_A::LOC4
83 }
84 #[doc = "Checks if the value of the field is `LOC5`"]
85 #[inline(always)]
86 pub fn is_loc5(&self) -> bool {
87 *self == CLKOUT0LOC_A::LOC5
88 }
89 #[doc = "Checks if the value of the field is `LOC6`"]
90 #[inline(always)]
91 pub fn is_loc6(&self) -> bool {
92 *self == CLKOUT0LOC_A::LOC6
93 }
94 #[doc = "Checks if the value of the field is `LOC7`"]
95 #[inline(always)]
96 pub fn is_loc7(&self) -> bool {
97 *self == CLKOUT0LOC_A::LOC7
98 }
99}
100#[doc = "Write proxy for field `CLKOUT0LOC`"]
101pub struct CLKOUT0LOC_W<'a> {
102 w: &'a mut W,
103}
104impl<'a> CLKOUT0LOC_W<'a> {
105 #[doc = r"Writes `variant` to the field"]
106 #[inline(always)]
107 pub fn variant(self, variant: CLKOUT0LOC_A) -> &'a mut W {
108 unsafe { self.bits(variant.into()) }
109 }
110 #[doc = "Location 0"]
111 #[inline(always)]
112 pub fn loc0(self) -> &'a mut W {
113 self.variant(CLKOUT0LOC_A::LOC0)
114 }
115 #[doc = "Location 1"]
116 #[inline(always)]
117 pub fn loc1(self) -> &'a mut W {
118 self.variant(CLKOUT0LOC_A::LOC1)
119 }
120 #[doc = "Location 2"]
121 #[inline(always)]
122 pub fn loc2(self) -> &'a mut W {
123 self.variant(CLKOUT0LOC_A::LOC2)
124 }
125 #[doc = "Location 3"]
126 #[inline(always)]
127 pub fn loc3(self) -> &'a mut W {
128 self.variant(CLKOUT0LOC_A::LOC3)
129 }
130 #[doc = "Location 4"]
131 #[inline(always)]
132 pub fn loc4(self) -> &'a mut W {
133 self.variant(CLKOUT0LOC_A::LOC4)
134 }
135 #[doc = "Location 5"]
136 #[inline(always)]
137 pub fn loc5(self) -> &'a mut W {
138 self.variant(CLKOUT0LOC_A::LOC5)
139 }
140 #[doc = "Location 6"]
141 #[inline(always)]
142 pub fn loc6(self) -> &'a mut W {
143 self.variant(CLKOUT0LOC_A::LOC6)
144 }
145 #[doc = "Location 7"]
146 #[inline(always)]
147 pub fn loc7(self) -> &'a mut W {
148 self.variant(CLKOUT0LOC_A::LOC7)
149 }
150 #[doc = r"Writes raw bits to the field"]
151 #[inline(always)]
152 pub unsafe fn bits(self, value: u8) -> &'a mut W {
153 self.w.bits = (self.w.bits & !0x3f) | ((value as u32) & 0x3f);
154 self.w
155 }
156}
157#[doc = "I/O Location\n\nValue on reset: 0"]
158#[derive(Clone, Copy, Debug, PartialEq)]
159#[repr(u8)]
160pub enum CLKOUT1LOC_A {
161 #[doc = "0: Location 0"]
162 LOC0 = 0,
163 #[doc = "1: Location 1"]
164 LOC1 = 1,
165 #[doc = "2: Location 2"]
166 LOC2 = 2,
167 #[doc = "3: Location 3"]
168 LOC3 = 3,
169 #[doc = "4: Location 4"]
170 LOC4 = 4,
171 #[doc = "5: Location 5"]
172 LOC5 = 5,
173 #[doc = "6: Location 6"]
174 LOC6 = 6,
175 #[doc = "7: Location 7"]
176 LOC7 = 7,
177}
178impl From<CLKOUT1LOC_A> for u8 {
179 #[inline(always)]
180 fn from(variant: CLKOUT1LOC_A) -> Self {
181 variant as _
182 }
183}
184#[doc = "Reader of field `CLKOUT1LOC`"]
185pub type CLKOUT1LOC_R = crate::R<u8, CLKOUT1LOC_A>;
186impl CLKOUT1LOC_R {
187 #[doc = r"Get enumerated values variant"]
188 #[inline(always)]
189 pub fn variant(&self) -> crate::Variant<u8, CLKOUT1LOC_A> {
190 use crate::Variant::*;
191 match self.bits {
192 0 => Val(CLKOUT1LOC_A::LOC0),
193 1 => Val(CLKOUT1LOC_A::LOC1),
194 2 => Val(CLKOUT1LOC_A::LOC2),
195 3 => Val(CLKOUT1LOC_A::LOC3),
196 4 => Val(CLKOUT1LOC_A::LOC4),
197 5 => Val(CLKOUT1LOC_A::LOC5),
198 6 => Val(CLKOUT1LOC_A::LOC6),
199 7 => Val(CLKOUT1LOC_A::LOC7),
200 i => Res(i),
201 }
202 }
203 #[doc = "Checks if the value of the field is `LOC0`"]
204 #[inline(always)]
205 pub fn is_loc0(&self) -> bool {
206 *self == CLKOUT1LOC_A::LOC0
207 }
208 #[doc = "Checks if the value of the field is `LOC1`"]
209 #[inline(always)]
210 pub fn is_loc1(&self) -> bool {
211 *self == CLKOUT1LOC_A::LOC1
212 }
213 #[doc = "Checks if the value of the field is `LOC2`"]
214 #[inline(always)]
215 pub fn is_loc2(&self) -> bool {
216 *self == CLKOUT1LOC_A::LOC2
217 }
218 #[doc = "Checks if the value of the field is `LOC3`"]
219 #[inline(always)]
220 pub fn is_loc3(&self) -> bool {
221 *self == CLKOUT1LOC_A::LOC3
222 }
223 #[doc = "Checks if the value of the field is `LOC4`"]
224 #[inline(always)]
225 pub fn is_loc4(&self) -> bool {
226 *self == CLKOUT1LOC_A::LOC4
227 }
228 #[doc = "Checks if the value of the field is `LOC5`"]
229 #[inline(always)]
230 pub fn is_loc5(&self) -> bool {
231 *self == CLKOUT1LOC_A::LOC5
232 }
233 #[doc = "Checks if the value of the field is `LOC6`"]
234 #[inline(always)]
235 pub fn is_loc6(&self) -> bool {
236 *self == CLKOUT1LOC_A::LOC6
237 }
238 #[doc = "Checks if the value of the field is `LOC7`"]
239 #[inline(always)]
240 pub fn is_loc7(&self) -> bool {
241 *self == CLKOUT1LOC_A::LOC7
242 }
243}
244#[doc = "Write proxy for field `CLKOUT1LOC`"]
245pub struct CLKOUT1LOC_W<'a> {
246 w: &'a mut W,
247}
248impl<'a> CLKOUT1LOC_W<'a> {
249 #[doc = r"Writes `variant` to the field"]
250 #[inline(always)]
251 pub fn variant(self, variant: CLKOUT1LOC_A) -> &'a mut W {
252 unsafe { self.bits(variant.into()) }
253 }
254 #[doc = "Location 0"]
255 #[inline(always)]
256 pub fn loc0(self) -> &'a mut W {
257 self.variant(CLKOUT1LOC_A::LOC0)
258 }
259 #[doc = "Location 1"]
260 #[inline(always)]
261 pub fn loc1(self) -> &'a mut W {
262 self.variant(CLKOUT1LOC_A::LOC1)
263 }
264 #[doc = "Location 2"]
265 #[inline(always)]
266 pub fn loc2(self) -> &'a mut W {
267 self.variant(CLKOUT1LOC_A::LOC2)
268 }
269 #[doc = "Location 3"]
270 #[inline(always)]
271 pub fn loc3(self) -> &'a mut W {
272 self.variant(CLKOUT1LOC_A::LOC3)
273 }
274 #[doc = "Location 4"]
275 #[inline(always)]
276 pub fn loc4(self) -> &'a mut W {
277 self.variant(CLKOUT1LOC_A::LOC4)
278 }
279 #[doc = "Location 5"]
280 #[inline(always)]
281 pub fn loc5(self) -> &'a mut W {
282 self.variant(CLKOUT1LOC_A::LOC5)
283 }
284 #[doc = "Location 6"]
285 #[inline(always)]
286 pub fn loc6(self) -> &'a mut W {
287 self.variant(CLKOUT1LOC_A::LOC6)
288 }
289 #[doc = "Location 7"]
290 #[inline(always)]
291 pub fn loc7(self) -> &'a mut W {
292 self.variant(CLKOUT1LOC_A::LOC7)
293 }
294 #[doc = r"Writes raw bits to the field"]
295 #[inline(always)]
296 pub unsafe fn bits(self, value: u8) -> &'a mut W {
297 self.w.bits = (self.w.bits & !(0x3f << 8)) | (((value as u32) & 0x3f) << 8);
298 self.w
299 }
300}
301impl R {
302 #[doc = "Bits 0:5 - I/O Location"]
303 #[inline(always)]
304 pub fn clkout0loc(&self) -> CLKOUT0LOC_R {
305 CLKOUT0LOC_R::new((self.bits & 0x3f) as u8)
306 }
307 #[doc = "Bits 8:13 - I/O Location"]
308 #[inline(always)]
309 pub fn clkout1loc(&self) -> CLKOUT1LOC_R {
310 CLKOUT1LOC_R::new(((self.bits >> 8) & 0x3f) as u8)
311 }
312}
313impl W {
314 #[doc = "Bits 0:5 - I/O Location"]
315 #[inline(always)]
316 pub fn clkout0loc(&mut self) -> CLKOUT0LOC_W {
317 CLKOUT0LOC_W { w: self }
318 }
319 #[doc = "Bits 8:13 - I/O Location"]
320 #[inline(always)]
321 pub fn clkout1loc(&mut self) -> CLKOUT1LOC_W {
322 CLKOUT1LOC_W { w: self }
323 }
324}