efm32pg1b200_pac/acmp0/
routeloc0.rs1#[doc = "Register `ROUTELOC0` reader"]
2pub struct R(crate::R<ROUTELOC0_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<ROUTELOC0_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<ROUTELOC0_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<ROUTELOC0_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `ROUTELOC0` writer"]
17pub struct W(crate::W<ROUTELOC0_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<ROUTELOC0_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<ROUTELOC0_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<ROUTELOC0_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "I/O Location\n\nValue on reset: 0"]
38#[derive(Clone, Copy, Debug, PartialEq)]
39#[repr(u8)]
40pub enum OUTLOC_A {
41 #[doc = "0: Location 0"]
42 LOC0 = 0,
43 #[doc = "1: Location 1"]
44 LOC1 = 1,
45 #[doc = "2: Location 2"]
46 LOC2 = 2,
47 #[doc = "3: Location 3"]
48 LOC3 = 3,
49 #[doc = "4: Location 4"]
50 LOC4 = 4,
51 #[doc = "5: Location 5"]
52 LOC5 = 5,
53 #[doc = "6: Location 6"]
54 LOC6 = 6,
55 #[doc = "7: Location 7"]
56 LOC7 = 7,
57 #[doc = "8: Location 8"]
58 LOC8 = 8,
59 #[doc = "9: Location 9"]
60 LOC9 = 9,
61 #[doc = "10: Location 10"]
62 LOC10 = 10,
63 #[doc = "11: Location 11"]
64 LOC11 = 11,
65 #[doc = "12: Location 12"]
66 LOC12 = 12,
67 #[doc = "13: Location 13"]
68 LOC13 = 13,
69 #[doc = "14: Location 14"]
70 LOC14 = 14,
71 #[doc = "15: Location 15"]
72 LOC15 = 15,
73 #[doc = "16: Location 16"]
74 LOC16 = 16,
75 #[doc = "17: Location 17"]
76 LOC17 = 17,
77 #[doc = "18: Location 18"]
78 LOC18 = 18,
79 #[doc = "19: Location 19"]
80 LOC19 = 19,
81 #[doc = "20: Location 20"]
82 LOC20 = 20,
83 #[doc = "21: Location 21"]
84 LOC21 = 21,
85 #[doc = "22: Location 22"]
86 LOC22 = 22,
87 #[doc = "23: Location 23"]
88 LOC23 = 23,
89 #[doc = "24: Location 24"]
90 LOC24 = 24,
91 #[doc = "25: Location 25"]
92 LOC25 = 25,
93 #[doc = "26: Location 26"]
94 LOC26 = 26,
95 #[doc = "27: Location 27"]
96 LOC27 = 27,
97 #[doc = "28: Location 28"]
98 LOC28 = 28,
99 #[doc = "29: Location 29"]
100 LOC29 = 29,
101 #[doc = "30: Location 30"]
102 LOC30 = 30,
103 #[doc = "31: Location 31"]
104 LOC31 = 31,
105}
106impl From<OUTLOC_A> for u8 {
107 #[inline(always)]
108 fn from(variant: OUTLOC_A) -> Self {
109 variant as _
110 }
111}
112#[doc = "Field `OUTLOC` reader - I/O Location"]
113pub type OUTLOC_R = crate::FieldReader<u8, OUTLOC_A>;
114impl OUTLOC_R {
115 #[doc = "Get enumerated values variant"]
116 #[inline(always)]
117 pub fn variant(&self) -> Option<OUTLOC_A> {
118 match self.bits {
119 0 => Some(OUTLOC_A::LOC0),
120 1 => Some(OUTLOC_A::LOC1),
121 2 => Some(OUTLOC_A::LOC2),
122 3 => Some(OUTLOC_A::LOC3),
123 4 => Some(OUTLOC_A::LOC4),
124 5 => Some(OUTLOC_A::LOC5),
125 6 => Some(OUTLOC_A::LOC6),
126 7 => Some(OUTLOC_A::LOC7),
127 8 => Some(OUTLOC_A::LOC8),
128 9 => Some(OUTLOC_A::LOC9),
129 10 => Some(OUTLOC_A::LOC10),
130 11 => Some(OUTLOC_A::LOC11),
131 12 => Some(OUTLOC_A::LOC12),
132 13 => Some(OUTLOC_A::LOC13),
133 14 => Some(OUTLOC_A::LOC14),
134 15 => Some(OUTLOC_A::LOC15),
135 16 => Some(OUTLOC_A::LOC16),
136 17 => Some(OUTLOC_A::LOC17),
137 18 => Some(OUTLOC_A::LOC18),
138 19 => Some(OUTLOC_A::LOC19),
139 20 => Some(OUTLOC_A::LOC20),
140 21 => Some(OUTLOC_A::LOC21),
141 22 => Some(OUTLOC_A::LOC22),
142 23 => Some(OUTLOC_A::LOC23),
143 24 => Some(OUTLOC_A::LOC24),
144 25 => Some(OUTLOC_A::LOC25),
145 26 => Some(OUTLOC_A::LOC26),
146 27 => Some(OUTLOC_A::LOC27),
147 28 => Some(OUTLOC_A::LOC28),
148 29 => Some(OUTLOC_A::LOC29),
149 30 => Some(OUTLOC_A::LOC30),
150 31 => Some(OUTLOC_A::LOC31),
151 _ => None,
152 }
153 }
154 #[doc = "Checks if the value of the field is `LOC0`"]
155 #[inline(always)]
156 pub fn is_loc0(&self) -> bool {
157 *self == OUTLOC_A::LOC0
158 }
159 #[doc = "Checks if the value of the field is `LOC1`"]
160 #[inline(always)]
161 pub fn is_loc1(&self) -> bool {
162 *self == OUTLOC_A::LOC1
163 }
164 #[doc = "Checks if the value of the field is `LOC2`"]
165 #[inline(always)]
166 pub fn is_loc2(&self) -> bool {
167 *self == OUTLOC_A::LOC2
168 }
169 #[doc = "Checks if the value of the field is `LOC3`"]
170 #[inline(always)]
171 pub fn is_loc3(&self) -> bool {
172 *self == OUTLOC_A::LOC3
173 }
174 #[doc = "Checks if the value of the field is `LOC4`"]
175 #[inline(always)]
176 pub fn is_loc4(&self) -> bool {
177 *self == OUTLOC_A::LOC4
178 }
179 #[doc = "Checks if the value of the field is `LOC5`"]
180 #[inline(always)]
181 pub fn is_loc5(&self) -> bool {
182 *self == OUTLOC_A::LOC5
183 }
184 #[doc = "Checks if the value of the field is `LOC6`"]
185 #[inline(always)]
186 pub fn is_loc6(&self) -> bool {
187 *self == OUTLOC_A::LOC6
188 }
189 #[doc = "Checks if the value of the field is `LOC7`"]
190 #[inline(always)]
191 pub fn is_loc7(&self) -> bool {
192 *self == OUTLOC_A::LOC7
193 }
194 #[doc = "Checks if the value of the field is `LOC8`"]
195 #[inline(always)]
196 pub fn is_loc8(&self) -> bool {
197 *self == OUTLOC_A::LOC8
198 }
199 #[doc = "Checks if the value of the field is `LOC9`"]
200 #[inline(always)]
201 pub fn is_loc9(&self) -> bool {
202 *self == OUTLOC_A::LOC9
203 }
204 #[doc = "Checks if the value of the field is `LOC10`"]
205 #[inline(always)]
206 pub fn is_loc10(&self) -> bool {
207 *self == OUTLOC_A::LOC10
208 }
209 #[doc = "Checks if the value of the field is `LOC11`"]
210 #[inline(always)]
211 pub fn is_loc11(&self) -> bool {
212 *self == OUTLOC_A::LOC11
213 }
214 #[doc = "Checks if the value of the field is `LOC12`"]
215 #[inline(always)]
216 pub fn is_loc12(&self) -> bool {
217 *self == OUTLOC_A::LOC12
218 }
219 #[doc = "Checks if the value of the field is `LOC13`"]
220 #[inline(always)]
221 pub fn is_loc13(&self) -> bool {
222 *self == OUTLOC_A::LOC13
223 }
224 #[doc = "Checks if the value of the field is `LOC14`"]
225 #[inline(always)]
226 pub fn is_loc14(&self) -> bool {
227 *self == OUTLOC_A::LOC14
228 }
229 #[doc = "Checks if the value of the field is `LOC15`"]
230 #[inline(always)]
231 pub fn is_loc15(&self) -> bool {
232 *self == OUTLOC_A::LOC15
233 }
234 #[doc = "Checks if the value of the field is `LOC16`"]
235 #[inline(always)]
236 pub fn is_loc16(&self) -> bool {
237 *self == OUTLOC_A::LOC16
238 }
239 #[doc = "Checks if the value of the field is `LOC17`"]
240 #[inline(always)]
241 pub fn is_loc17(&self) -> bool {
242 *self == OUTLOC_A::LOC17
243 }
244 #[doc = "Checks if the value of the field is `LOC18`"]
245 #[inline(always)]
246 pub fn is_loc18(&self) -> bool {
247 *self == OUTLOC_A::LOC18
248 }
249 #[doc = "Checks if the value of the field is `LOC19`"]
250 #[inline(always)]
251 pub fn is_loc19(&self) -> bool {
252 *self == OUTLOC_A::LOC19
253 }
254 #[doc = "Checks if the value of the field is `LOC20`"]
255 #[inline(always)]
256 pub fn is_loc20(&self) -> bool {
257 *self == OUTLOC_A::LOC20
258 }
259 #[doc = "Checks if the value of the field is `LOC21`"]
260 #[inline(always)]
261 pub fn is_loc21(&self) -> bool {
262 *self == OUTLOC_A::LOC21
263 }
264 #[doc = "Checks if the value of the field is `LOC22`"]
265 #[inline(always)]
266 pub fn is_loc22(&self) -> bool {
267 *self == OUTLOC_A::LOC22
268 }
269 #[doc = "Checks if the value of the field is `LOC23`"]
270 #[inline(always)]
271 pub fn is_loc23(&self) -> bool {
272 *self == OUTLOC_A::LOC23
273 }
274 #[doc = "Checks if the value of the field is `LOC24`"]
275 #[inline(always)]
276 pub fn is_loc24(&self) -> bool {
277 *self == OUTLOC_A::LOC24
278 }
279 #[doc = "Checks if the value of the field is `LOC25`"]
280 #[inline(always)]
281 pub fn is_loc25(&self) -> bool {
282 *self == OUTLOC_A::LOC25
283 }
284 #[doc = "Checks if the value of the field is `LOC26`"]
285 #[inline(always)]
286 pub fn is_loc26(&self) -> bool {
287 *self == OUTLOC_A::LOC26
288 }
289 #[doc = "Checks if the value of the field is `LOC27`"]
290 #[inline(always)]
291 pub fn is_loc27(&self) -> bool {
292 *self == OUTLOC_A::LOC27
293 }
294 #[doc = "Checks if the value of the field is `LOC28`"]
295 #[inline(always)]
296 pub fn is_loc28(&self) -> bool {
297 *self == OUTLOC_A::LOC28
298 }
299 #[doc = "Checks if the value of the field is `LOC29`"]
300 #[inline(always)]
301 pub fn is_loc29(&self) -> bool {
302 *self == OUTLOC_A::LOC29
303 }
304 #[doc = "Checks if the value of the field is `LOC30`"]
305 #[inline(always)]
306 pub fn is_loc30(&self) -> bool {
307 *self == OUTLOC_A::LOC30
308 }
309 #[doc = "Checks if the value of the field is `LOC31`"]
310 #[inline(always)]
311 pub fn is_loc31(&self) -> bool {
312 *self == OUTLOC_A::LOC31
313 }
314}
315#[doc = "Field `OUTLOC` writer - I/O Location"]
316pub type OUTLOC_W<'a> = crate::FieldWriter<'a, u32, ROUTELOC0_SPEC, u8, OUTLOC_A, 6, 0>;
317impl<'a> OUTLOC_W<'a> {
318 #[doc = "Location 0"]
319 #[inline(always)]
320 pub fn loc0(self) -> &'a mut W {
321 self.variant(OUTLOC_A::LOC0)
322 }
323 #[doc = "Location 1"]
324 #[inline(always)]
325 pub fn loc1(self) -> &'a mut W {
326 self.variant(OUTLOC_A::LOC1)
327 }
328 #[doc = "Location 2"]
329 #[inline(always)]
330 pub fn loc2(self) -> &'a mut W {
331 self.variant(OUTLOC_A::LOC2)
332 }
333 #[doc = "Location 3"]
334 #[inline(always)]
335 pub fn loc3(self) -> &'a mut W {
336 self.variant(OUTLOC_A::LOC3)
337 }
338 #[doc = "Location 4"]
339 #[inline(always)]
340 pub fn loc4(self) -> &'a mut W {
341 self.variant(OUTLOC_A::LOC4)
342 }
343 #[doc = "Location 5"]
344 #[inline(always)]
345 pub fn loc5(self) -> &'a mut W {
346 self.variant(OUTLOC_A::LOC5)
347 }
348 #[doc = "Location 6"]
349 #[inline(always)]
350 pub fn loc6(self) -> &'a mut W {
351 self.variant(OUTLOC_A::LOC6)
352 }
353 #[doc = "Location 7"]
354 #[inline(always)]
355 pub fn loc7(self) -> &'a mut W {
356 self.variant(OUTLOC_A::LOC7)
357 }
358 #[doc = "Location 8"]
359 #[inline(always)]
360 pub fn loc8(self) -> &'a mut W {
361 self.variant(OUTLOC_A::LOC8)
362 }
363 #[doc = "Location 9"]
364 #[inline(always)]
365 pub fn loc9(self) -> &'a mut W {
366 self.variant(OUTLOC_A::LOC9)
367 }
368 #[doc = "Location 10"]
369 #[inline(always)]
370 pub fn loc10(self) -> &'a mut W {
371 self.variant(OUTLOC_A::LOC10)
372 }
373 #[doc = "Location 11"]
374 #[inline(always)]
375 pub fn loc11(self) -> &'a mut W {
376 self.variant(OUTLOC_A::LOC11)
377 }
378 #[doc = "Location 12"]
379 #[inline(always)]
380 pub fn loc12(self) -> &'a mut W {
381 self.variant(OUTLOC_A::LOC12)
382 }
383 #[doc = "Location 13"]
384 #[inline(always)]
385 pub fn loc13(self) -> &'a mut W {
386 self.variant(OUTLOC_A::LOC13)
387 }
388 #[doc = "Location 14"]
389 #[inline(always)]
390 pub fn loc14(self) -> &'a mut W {
391 self.variant(OUTLOC_A::LOC14)
392 }
393 #[doc = "Location 15"]
394 #[inline(always)]
395 pub fn loc15(self) -> &'a mut W {
396 self.variant(OUTLOC_A::LOC15)
397 }
398 #[doc = "Location 16"]
399 #[inline(always)]
400 pub fn loc16(self) -> &'a mut W {
401 self.variant(OUTLOC_A::LOC16)
402 }
403 #[doc = "Location 17"]
404 #[inline(always)]
405 pub fn loc17(self) -> &'a mut W {
406 self.variant(OUTLOC_A::LOC17)
407 }
408 #[doc = "Location 18"]
409 #[inline(always)]
410 pub fn loc18(self) -> &'a mut W {
411 self.variant(OUTLOC_A::LOC18)
412 }
413 #[doc = "Location 19"]
414 #[inline(always)]
415 pub fn loc19(self) -> &'a mut W {
416 self.variant(OUTLOC_A::LOC19)
417 }
418 #[doc = "Location 20"]
419 #[inline(always)]
420 pub fn loc20(self) -> &'a mut W {
421 self.variant(OUTLOC_A::LOC20)
422 }
423 #[doc = "Location 21"]
424 #[inline(always)]
425 pub fn loc21(self) -> &'a mut W {
426 self.variant(OUTLOC_A::LOC21)
427 }
428 #[doc = "Location 22"]
429 #[inline(always)]
430 pub fn loc22(self) -> &'a mut W {
431 self.variant(OUTLOC_A::LOC22)
432 }
433 #[doc = "Location 23"]
434 #[inline(always)]
435 pub fn loc23(self) -> &'a mut W {
436 self.variant(OUTLOC_A::LOC23)
437 }
438 #[doc = "Location 24"]
439 #[inline(always)]
440 pub fn loc24(self) -> &'a mut W {
441 self.variant(OUTLOC_A::LOC24)
442 }
443 #[doc = "Location 25"]
444 #[inline(always)]
445 pub fn loc25(self) -> &'a mut W {
446 self.variant(OUTLOC_A::LOC25)
447 }
448 #[doc = "Location 26"]
449 #[inline(always)]
450 pub fn loc26(self) -> &'a mut W {
451 self.variant(OUTLOC_A::LOC26)
452 }
453 #[doc = "Location 27"]
454 #[inline(always)]
455 pub fn loc27(self) -> &'a mut W {
456 self.variant(OUTLOC_A::LOC27)
457 }
458 #[doc = "Location 28"]
459 #[inline(always)]
460 pub fn loc28(self) -> &'a mut W {
461 self.variant(OUTLOC_A::LOC28)
462 }
463 #[doc = "Location 29"]
464 #[inline(always)]
465 pub fn loc29(self) -> &'a mut W {
466 self.variant(OUTLOC_A::LOC29)
467 }
468 #[doc = "Location 30"]
469 #[inline(always)]
470 pub fn loc30(self) -> &'a mut W {
471 self.variant(OUTLOC_A::LOC30)
472 }
473 #[doc = "Location 31"]
474 #[inline(always)]
475 pub fn loc31(self) -> &'a mut W {
476 self.variant(OUTLOC_A::LOC31)
477 }
478}
479impl R {
480 #[doc = "Bits 0:5 - I/O Location"]
481 #[inline(always)]
482 pub fn outloc(&self) -> OUTLOC_R {
483 OUTLOC_R::new((self.bits & 0x3f) as u8)
484 }
485}
486impl W {
487 #[doc = "Bits 0:5 - I/O Location"]
488 #[inline(always)]
489 pub fn outloc(&mut self) -> OUTLOC_W {
490 OUTLOC_W::new(self)
491 }
492 #[doc = "Writes raw bits to the register."]
493 #[inline(always)]
494 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
495 self.0.bits(bits);
496 self
497 }
498}
499#[doc = "I/O Routing Location 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 [routeloc0](index.html) module"]
500pub struct ROUTELOC0_SPEC;
501impl crate::RegisterSpec for ROUTELOC0_SPEC {
502 type Ux = u32;
503}
504#[doc = "`read()` method returns [routeloc0::R](R) reader structure"]
505impl crate::Readable for ROUTELOC0_SPEC {
506 type Reader = R;
507}
508#[doc = "`write(|w| ..)` method takes [routeloc0::W](W) writer structure"]
509impl crate::Writable for ROUTELOC0_SPEC {
510 type Writer = W;
511}
512#[doc = "`reset()` method sets ROUTELOC0 to value 0"]
513impl crate::Resettable for ROUTELOC0_SPEC {
514 #[inline(always)]
515 fn reset_value() -> Self::Ux {
516 0
517 }
518}