efm32pg22_pac/efm32pg22c200/hfxo0_ns/
xtalcfg.rs1#[doc = "Register `XTALCFG` reader"]
2pub struct R(crate::R<XTALCFG_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<XTALCFG_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<XTALCFG_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<XTALCFG_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `XTALCFG` writer"]
17pub struct W(crate::W<XTALCFG_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<XTALCFG_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<XTALCFG_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<XTALCFG_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Field `COREBIASSTARTUPI` reader - Intermediate Startup Core Bias Current"]
38pub type COREBIASSTARTUPI_R = crate::FieldReader<u8, u8>;
39#[doc = "Field `COREBIASSTARTUPI` writer - Intermediate Startup Core Bias Current"]
40pub type COREBIASSTARTUPI_W<'a, const O: u8> =
41 crate::FieldWriter<'a, u32, XTALCFG_SPEC, u8, u8, 6, O>;
42#[doc = "Field `COREBIASSTARTUP` reader - Startup Core Bias Current"]
43pub type COREBIASSTARTUP_R = crate::FieldReader<u8, u8>;
44#[doc = "Field `COREBIASSTARTUP` writer - Startup Core Bias Current"]
45pub type COREBIASSTARTUP_W<'a, const O: u8> =
46 crate::FieldWriter<'a, u32, XTALCFG_SPEC, u8, u8, 6, O>;
47#[doc = "Field `CTUNEXISTARTUP` reader - Startup Tuning Capacitance on XI"]
48pub type CTUNEXISTARTUP_R = crate::FieldReader<u8, u8>;
49#[doc = "Field `CTUNEXISTARTUP` writer - Startup Tuning Capacitance on XI"]
50pub type CTUNEXISTARTUP_W<'a, const O: u8> =
51 crate::FieldWriter<'a, u32, XTALCFG_SPEC, u8, u8, 4, O>;
52#[doc = "Field `CTUNEXOSTARTUP` reader - Startup Tuning Capacitance on XO"]
53pub type CTUNEXOSTARTUP_R = crate::FieldReader<u8, u8>;
54#[doc = "Field `CTUNEXOSTARTUP` writer - Startup Tuning Capacitance on XO"]
55pub type CTUNEXOSTARTUP_W<'a, const O: u8> =
56 crate::FieldWriter<'a, u32, XTALCFG_SPEC, u8, u8, 4, O>;
57#[doc = "Field `TIMEOUTSTEADY` reader - Steady State Timeout"]
58pub type TIMEOUTSTEADY_R = crate::FieldReader<u8, TIMEOUTSTEADY_A>;
59#[doc = "Steady State Timeout\n\nValue on reset: 4"]
60#[derive(Clone, Copy, Debug, PartialEq, Eq)]
61#[repr(u8)]
62pub enum TIMEOUTSTEADY_A {
63 #[doc = "0: The steady state timeout is set to 16 us minimum. The maximum can be +40%."]
64 T16US = 0,
65 #[doc = "1: The steady state timeout is set to 41 us minimum. The maximum can be +40%."]
66 T41US = 1,
67 #[doc = "2: The steady state timeout is set to 83 us minimum. The maximum can be +40%."]
68 T83US = 2,
69 #[doc = "3: The steady state timeout is set to 125 us minimum. The maximum can be +40%."]
70 T125US = 3,
71 #[doc = "4: The steady state timeout is set to 166 us minimum. The maximum can be +40%."]
72 T166US = 4,
73 #[doc = "5: The steady state timeout is set to 208 us minimum. The maximum can be +40%."]
74 T208US = 5,
75 #[doc = "6: The steady state timeout is set to 250 us minimum. The maximum can be +40%."]
76 T250US = 6,
77 #[doc = "7: The steady state timeout is set to 333 us minimum. The maximum can be +40%."]
78 T333US = 7,
79 #[doc = "8: The steady state timeout is set to 416 us minimum. The maximum can be +40%."]
80 T416US = 8,
81 #[doc = "9: The steady state timeout is set to 500 us minimum. The maximum can be +40%."]
82 T500US = 9,
83 #[doc = "10: The steady state timeout is set to 666 us minimum. The maximum can be +40%."]
84 T666US = 10,
85 #[doc = "11: The steady state timeout is set to 833 us minimum. The maximum can be +40%."]
86 T833US = 11,
87 #[doc = "12: The steady state timeout is set to 1666 us minimum. The maximum can be +40%."]
88 T1666US = 12,
89 #[doc = "13: The steady state timeout is set to 2500 us minimum. The maximum can be +40%."]
90 T2500US = 13,
91 #[doc = "14: The steady state timeout is set to 4166 us minimum. The maximum can be +40%."]
92 T4166US = 14,
93 #[doc = "15: The steady state timeout is set to 7500 us minimum. The maximum can be +40%."]
94 T7500US = 15,
95}
96impl From<TIMEOUTSTEADY_A> for u8 {
97 #[inline(always)]
98 fn from(variant: TIMEOUTSTEADY_A) -> Self {
99 variant as _
100 }
101}
102impl TIMEOUTSTEADY_R {
103 #[doc = "Get enumerated values variant"]
104 #[inline(always)]
105 pub fn variant(&self) -> TIMEOUTSTEADY_A {
106 match self.bits {
107 0 => TIMEOUTSTEADY_A::T16US,
108 1 => TIMEOUTSTEADY_A::T41US,
109 2 => TIMEOUTSTEADY_A::T83US,
110 3 => TIMEOUTSTEADY_A::T125US,
111 4 => TIMEOUTSTEADY_A::T166US,
112 5 => TIMEOUTSTEADY_A::T208US,
113 6 => TIMEOUTSTEADY_A::T250US,
114 7 => TIMEOUTSTEADY_A::T333US,
115 8 => TIMEOUTSTEADY_A::T416US,
116 9 => TIMEOUTSTEADY_A::T500US,
117 10 => TIMEOUTSTEADY_A::T666US,
118 11 => TIMEOUTSTEADY_A::T833US,
119 12 => TIMEOUTSTEADY_A::T1666US,
120 13 => TIMEOUTSTEADY_A::T2500US,
121 14 => TIMEOUTSTEADY_A::T4166US,
122 15 => TIMEOUTSTEADY_A::T7500US,
123 _ => unreachable!(),
124 }
125 }
126 #[doc = "Checks if the value of the field is `T16US`"]
127 #[inline(always)]
128 pub fn is_t16us(&self) -> bool {
129 *self == TIMEOUTSTEADY_A::T16US
130 }
131 #[doc = "Checks if the value of the field is `T41US`"]
132 #[inline(always)]
133 pub fn is_t41us(&self) -> bool {
134 *self == TIMEOUTSTEADY_A::T41US
135 }
136 #[doc = "Checks if the value of the field is `T83US`"]
137 #[inline(always)]
138 pub fn is_t83us(&self) -> bool {
139 *self == TIMEOUTSTEADY_A::T83US
140 }
141 #[doc = "Checks if the value of the field is `T125US`"]
142 #[inline(always)]
143 pub fn is_t125us(&self) -> bool {
144 *self == TIMEOUTSTEADY_A::T125US
145 }
146 #[doc = "Checks if the value of the field is `T166US`"]
147 #[inline(always)]
148 pub fn is_t166us(&self) -> bool {
149 *self == TIMEOUTSTEADY_A::T166US
150 }
151 #[doc = "Checks if the value of the field is `T208US`"]
152 #[inline(always)]
153 pub fn is_t208us(&self) -> bool {
154 *self == TIMEOUTSTEADY_A::T208US
155 }
156 #[doc = "Checks if the value of the field is `T250US`"]
157 #[inline(always)]
158 pub fn is_t250us(&self) -> bool {
159 *self == TIMEOUTSTEADY_A::T250US
160 }
161 #[doc = "Checks if the value of the field is `T333US`"]
162 #[inline(always)]
163 pub fn is_t333us(&self) -> bool {
164 *self == TIMEOUTSTEADY_A::T333US
165 }
166 #[doc = "Checks if the value of the field is `T416US`"]
167 #[inline(always)]
168 pub fn is_t416us(&self) -> bool {
169 *self == TIMEOUTSTEADY_A::T416US
170 }
171 #[doc = "Checks if the value of the field is `T500US`"]
172 #[inline(always)]
173 pub fn is_t500us(&self) -> bool {
174 *self == TIMEOUTSTEADY_A::T500US
175 }
176 #[doc = "Checks if the value of the field is `T666US`"]
177 #[inline(always)]
178 pub fn is_t666us(&self) -> bool {
179 *self == TIMEOUTSTEADY_A::T666US
180 }
181 #[doc = "Checks if the value of the field is `T833US`"]
182 #[inline(always)]
183 pub fn is_t833us(&self) -> bool {
184 *self == TIMEOUTSTEADY_A::T833US
185 }
186 #[doc = "Checks if the value of the field is `T1666US`"]
187 #[inline(always)]
188 pub fn is_t1666us(&self) -> bool {
189 *self == TIMEOUTSTEADY_A::T1666US
190 }
191 #[doc = "Checks if the value of the field is `T2500US`"]
192 #[inline(always)]
193 pub fn is_t2500us(&self) -> bool {
194 *self == TIMEOUTSTEADY_A::T2500US
195 }
196 #[doc = "Checks if the value of the field is `T4166US`"]
197 #[inline(always)]
198 pub fn is_t4166us(&self) -> bool {
199 *self == TIMEOUTSTEADY_A::T4166US
200 }
201 #[doc = "Checks if the value of the field is `T7500US`"]
202 #[inline(always)]
203 pub fn is_t7500us(&self) -> bool {
204 *self == TIMEOUTSTEADY_A::T7500US
205 }
206}
207#[doc = "Field `TIMEOUTSTEADY` writer - Steady State Timeout"]
208pub type TIMEOUTSTEADY_W<'a, const O: u8> =
209 crate::FieldWriterSafe<'a, u32, XTALCFG_SPEC, u8, TIMEOUTSTEADY_A, 4, O>;
210impl<'a, const O: u8> TIMEOUTSTEADY_W<'a, O> {
211 #[doc = "The steady state timeout is set to 16 us minimum. The maximum can be +40%."]
212 #[inline(always)]
213 pub fn t16us(self) -> &'a mut W {
214 self.variant(TIMEOUTSTEADY_A::T16US)
215 }
216 #[doc = "The steady state timeout is set to 41 us minimum. The maximum can be +40%."]
217 #[inline(always)]
218 pub fn t41us(self) -> &'a mut W {
219 self.variant(TIMEOUTSTEADY_A::T41US)
220 }
221 #[doc = "The steady state timeout is set to 83 us minimum. The maximum can be +40%."]
222 #[inline(always)]
223 pub fn t83us(self) -> &'a mut W {
224 self.variant(TIMEOUTSTEADY_A::T83US)
225 }
226 #[doc = "The steady state timeout is set to 125 us minimum. The maximum can be +40%."]
227 #[inline(always)]
228 pub fn t125us(self) -> &'a mut W {
229 self.variant(TIMEOUTSTEADY_A::T125US)
230 }
231 #[doc = "The steady state timeout is set to 166 us minimum. The maximum can be +40%."]
232 #[inline(always)]
233 pub fn t166us(self) -> &'a mut W {
234 self.variant(TIMEOUTSTEADY_A::T166US)
235 }
236 #[doc = "The steady state timeout is set to 208 us minimum. The maximum can be +40%."]
237 #[inline(always)]
238 pub fn t208us(self) -> &'a mut W {
239 self.variant(TIMEOUTSTEADY_A::T208US)
240 }
241 #[doc = "The steady state timeout is set to 250 us minimum. The maximum can be +40%."]
242 #[inline(always)]
243 pub fn t250us(self) -> &'a mut W {
244 self.variant(TIMEOUTSTEADY_A::T250US)
245 }
246 #[doc = "The steady state timeout is set to 333 us minimum. The maximum can be +40%."]
247 #[inline(always)]
248 pub fn t333us(self) -> &'a mut W {
249 self.variant(TIMEOUTSTEADY_A::T333US)
250 }
251 #[doc = "The steady state timeout is set to 416 us minimum. The maximum can be +40%."]
252 #[inline(always)]
253 pub fn t416us(self) -> &'a mut W {
254 self.variant(TIMEOUTSTEADY_A::T416US)
255 }
256 #[doc = "The steady state timeout is set to 500 us minimum. The maximum can be +40%."]
257 #[inline(always)]
258 pub fn t500us(self) -> &'a mut W {
259 self.variant(TIMEOUTSTEADY_A::T500US)
260 }
261 #[doc = "The steady state timeout is set to 666 us minimum. The maximum can be +40%."]
262 #[inline(always)]
263 pub fn t666us(self) -> &'a mut W {
264 self.variant(TIMEOUTSTEADY_A::T666US)
265 }
266 #[doc = "The steady state timeout is set to 833 us minimum. The maximum can be +40%."]
267 #[inline(always)]
268 pub fn t833us(self) -> &'a mut W {
269 self.variant(TIMEOUTSTEADY_A::T833US)
270 }
271 #[doc = "The steady state timeout is set to 1666 us minimum. The maximum can be +40%."]
272 #[inline(always)]
273 pub fn t1666us(self) -> &'a mut W {
274 self.variant(TIMEOUTSTEADY_A::T1666US)
275 }
276 #[doc = "The steady state timeout is set to 2500 us minimum. The maximum can be +40%."]
277 #[inline(always)]
278 pub fn t2500us(self) -> &'a mut W {
279 self.variant(TIMEOUTSTEADY_A::T2500US)
280 }
281 #[doc = "The steady state timeout is set to 4166 us minimum. The maximum can be +40%."]
282 #[inline(always)]
283 pub fn t4166us(self) -> &'a mut W {
284 self.variant(TIMEOUTSTEADY_A::T4166US)
285 }
286 #[doc = "The steady state timeout is set to 7500 us minimum. The maximum can be +40%."]
287 #[inline(always)]
288 pub fn t7500us(self) -> &'a mut W {
289 self.variant(TIMEOUTSTEADY_A::T7500US)
290 }
291}
292#[doc = "Field `TIMEOUTCBLSB` reader - Core Bias LSB Change Timeout"]
293pub type TIMEOUTCBLSB_R = crate::FieldReader<u8, TIMEOUTCBLSB_A>;
294#[doc = "Core Bias LSB Change Timeout\n\nValue on reset: 4"]
295#[derive(Clone, Copy, Debug, PartialEq, Eq)]
296#[repr(u8)]
297pub enum TIMEOUTCBLSB_A {
298 #[doc = "0: The core bias LSB change timeout is set to 8 us minimum. The maximum can be +40%."]
299 T8US = 0,
300 #[doc = "1: The core bias LSB change timeout is set to 20 us minimum. The maximum can be +40%."]
301 T20US = 1,
302 #[doc = "2: The core bias LSB change timeout is set to 41 us minimum. The maximum can be +40%."]
303 T41US = 2,
304 #[doc = "3: The core bias LSB change timeout is set to 62 us minimum. The maximum can be +40%."]
305 T62US = 3,
306 #[doc = "4: The core bias LSB change timeout is set to 83 us minimum. The maximum can be +40%."]
307 T83US = 4,
308 #[doc = "5: The core bias LSB change timeout is set to 104 us minimum. The maximum can be +40%."]
309 T104US = 5,
310 #[doc = "6: The core bias LSB change timeout is set to 125 us minimum. The maximum can be +40%."]
311 T125US = 6,
312 #[doc = "7: The core bias LSB change timeout is set to 166 us minimum. The maximum can be +40%."]
313 T166US = 7,
314 #[doc = "8: The core bias LSB change timeout is set to 208 us minimum. The maximum can be +40%."]
315 T208US = 8,
316 #[doc = "9: The core bias LSB change timeout is set to 250 us minimum. The maximum can be +40%."]
317 T250US = 9,
318 #[doc = "10: The core bias LSB change timeout is set to 333 us minimum. The maximum can be +40%."]
319 T333US = 10,
320 #[doc = "11: The core bias LSB change timeout is set to 416 us minimum. The maximum can be +40%."]
321 T416US = 11,
322 #[doc = "12: The core bias LSB change timeout is set to 833 us minimum. The maximum can be +40%."]
323 T833US = 12,
324 #[doc = "13: The core bias LSB change timeout is set to 1250 us minimum. The maximum can be +40%."]
325 T1250US = 13,
326 #[doc = "14: The core bias LSB change timeout is set to 2083 us minimum. The maximum can be +40%."]
327 T2083US = 14,
328 #[doc = "15: The core bias LSB change timeout is set to 3750 us minimum. The maximum can be +40%."]
329 T3750US = 15,
330}
331impl From<TIMEOUTCBLSB_A> for u8 {
332 #[inline(always)]
333 fn from(variant: TIMEOUTCBLSB_A) -> Self {
334 variant as _
335 }
336}
337impl TIMEOUTCBLSB_R {
338 #[doc = "Get enumerated values variant"]
339 #[inline(always)]
340 pub fn variant(&self) -> TIMEOUTCBLSB_A {
341 match self.bits {
342 0 => TIMEOUTCBLSB_A::T8US,
343 1 => TIMEOUTCBLSB_A::T20US,
344 2 => TIMEOUTCBLSB_A::T41US,
345 3 => TIMEOUTCBLSB_A::T62US,
346 4 => TIMEOUTCBLSB_A::T83US,
347 5 => TIMEOUTCBLSB_A::T104US,
348 6 => TIMEOUTCBLSB_A::T125US,
349 7 => TIMEOUTCBLSB_A::T166US,
350 8 => TIMEOUTCBLSB_A::T208US,
351 9 => TIMEOUTCBLSB_A::T250US,
352 10 => TIMEOUTCBLSB_A::T333US,
353 11 => TIMEOUTCBLSB_A::T416US,
354 12 => TIMEOUTCBLSB_A::T833US,
355 13 => TIMEOUTCBLSB_A::T1250US,
356 14 => TIMEOUTCBLSB_A::T2083US,
357 15 => TIMEOUTCBLSB_A::T3750US,
358 _ => unreachable!(),
359 }
360 }
361 #[doc = "Checks if the value of the field is `T8US`"]
362 #[inline(always)]
363 pub fn is_t8us(&self) -> bool {
364 *self == TIMEOUTCBLSB_A::T8US
365 }
366 #[doc = "Checks if the value of the field is `T20US`"]
367 #[inline(always)]
368 pub fn is_t20us(&self) -> bool {
369 *self == TIMEOUTCBLSB_A::T20US
370 }
371 #[doc = "Checks if the value of the field is `T41US`"]
372 #[inline(always)]
373 pub fn is_t41us(&self) -> bool {
374 *self == TIMEOUTCBLSB_A::T41US
375 }
376 #[doc = "Checks if the value of the field is `T62US`"]
377 #[inline(always)]
378 pub fn is_t62us(&self) -> bool {
379 *self == TIMEOUTCBLSB_A::T62US
380 }
381 #[doc = "Checks if the value of the field is `T83US`"]
382 #[inline(always)]
383 pub fn is_t83us(&self) -> bool {
384 *self == TIMEOUTCBLSB_A::T83US
385 }
386 #[doc = "Checks if the value of the field is `T104US`"]
387 #[inline(always)]
388 pub fn is_t104us(&self) -> bool {
389 *self == TIMEOUTCBLSB_A::T104US
390 }
391 #[doc = "Checks if the value of the field is `T125US`"]
392 #[inline(always)]
393 pub fn is_t125us(&self) -> bool {
394 *self == TIMEOUTCBLSB_A::T125US
395 }
396 #[doc = "Checks if the value of the field is `T166US`"]
397 #[inline(always)]
398 pub fn is_t166us(&self) -> bool {
399 *self == TIMEOUTCBLSB_A::T166US
400 }
401 #[doc = "Checks if the value of the field is `T208US`"]
402 #[inline(always)]
403 pub fn is_t208us(&self) -> bool {
404 *self == TIMEOUTCBLSB_A::T208US
405 }
406 #[doc = "Checks if the value of the field is `T250US`"]
407 #[inline(always)]
408 pub fn is_t250us(&self) -> bool {
409 *self == TIMEOUTCBLSB_A::T250US
410 }
411 #[doc = "Checks if the value of the field is `T333US`"]
412 #[inline(always)]
413 pub fn is_t333us(&self) -> bool {
414 *self == TIMEOUTCBLSB_A::T333US
415 }
416 #[doc = "Checks if the value of the field is `T416US`"]
417 #[inline(always)]
418 pub fn is_t416us(&self) -> bool {
419 *self == TIMEOUTCBLSB_A::T416US
420 }
421 #[doc = "Checks if the value of the field is `T833US`"]
422 #[inline(always)]
423 pub fn is_t833us(&self) -> bool {
424 *self == TIMEOUTCBLSB_A::T833US
425 }
426 #[doc = "Checks if the value of the field is `T1250US`"]
427 #[inline(always)]
428 pub fn is_t1250us(&self) -> bool {
429 *self == TIMEOUTCBLSB_A::T1250US
430 }
431 #[doc = "Checks if the value of the field is `T2083US`"]
432 #[inline(always)]
433 pub fn is_t2083us(&self) -> bool {
434 *self == TIMEOUTCBLSB_A::T2083US
435 }
436 #[doc = "Checks if the value of the field is `T3750US`"]
437 #[inline(always)]
438 pub fn is_t3750us(&self) -> bool {
439 *self == TIMEOUTCBLSB_A::T3750US
440 }
441}
442#[doc = "Field `TIMEOUTCBLSB` writer - Core Bias LSB Change Timeout"]
443pub type TIMEOUTCBLSB_W<'a, const O: u8> =
444 crate::FieldWriterSafe<'a, u32, XTALCFG_SPEC, u8, TIMEOUTCBLSB_A, 4, O>;
445impl<'a, const O: u8> TIMEOUTCBLSB_W<'a, O> {
446 #[doc = "The core bias LSB change timeout is set to 8 us minimum. The maximum can be +40%."]
447 #[inline(always)]
448 pub fn t8us(self) -> &'a mut W {
449 self.variant(TIMEOUTCBLSB_A::T8US)
450 }
451 #[doc = "The core bias LSB change timeout is set to 20 us minimum. The maximum can be +40%."]
452 #[inline(always)]
453 pub fn t20us(self) -> &'a mut W {
454 self.variant(TIMEOUTCBLSB_A::T20US)
455 }
456 #[doc = "The core bias LSB change timeout is set to 41 us minimum. The maximum can be +40%."]
457 #[inline(always)]
458 pub fn t41us(self) -> &'a mut W {
459 self.variant(TIMEOUTCBLSB_A::T41US)
460 }
461 #[doc = "The core bias LSB change timeout is set to 62 us minimum. The maximum can be +40%."]
462 #[inline(always)]
463 pub fn t62us(self) -> &'a mut W {
464 self.variant(TIMEOUTCBLSB_A::T62US)
465 }
466 #[doc = "The core bias LSB change timeout is set to 83 us minimum. The maximum can be +40%."]
467 #[inline(always)]
468 pub fn t83us(self) -> &'a mut W {
469 self.variant(TIMEOUTCBLSB_A::T83US)
470 }
471 #[doc = "The core bias LSB change timeout is set to 104 us minimum. The maximum can be +40%."]
472 #[inline(always)]
473 pub fn t104us(self) -> &'a mut W {
474 self.variant(TIMEOUTCBLSB_A::T104US)
475 }
476 #[doc = "The core bias LSB change timeout is set to 125 us minimum. The maximum can be +40%."]
477 #[inline(always)]
478 pub fn t125us(self) -> &'a mut W {
479 self.variant(TIMEOUTCBLSB_A::T125US)
480 }
481 #[doc = "The core bias LSB change timeout is set to 166 us minimum. The maximum can be +40%."]
482 #[inline(always)]
483 pub fn t166us(self) -> &'a mut W {
484 self.variant(TIMEOUTCBLSB_A::T166US)
485 }
486 #[doc = "The core bias LSB change timeout is set to 208 us minimum. The maximum can be +40%."]
487 #[inline(always)]
488 pub fn t208us(self) -> &'a mut W {
489 self.variant(TIMEOUTCBLSB_A::T208US)
490 }
491 #[doc = "The core bias LSB change timeout is set to 250 us minimum. The maximum can be +40%."]
492 #[inline(always)]
493 pub fn t250us(self) -> &'a mut W {
494 self.variant(TIMEOUTCBLSB_A::T250US)
495 }
496 #[doc = "The core bias LSB change timeout is set to 333 us minimum. The maximum can be +40%."]
497 #[inline(always)]
498 pub fn t333us(self) -> &'a mut W {
499 self.variant(TIMEOUTCBLSB_A::T333US)
500 }
501 #[doc = "The core bias LSB change timeout is set to 416 us minimum. The maximum can be +40%."]
502 #[inline(always)]
503 pub fn t416us(self) -> &'a mut W {
504 self.variant(TIMEOUTCBLSB_A::T416US)
505 }
506 #[doc = "The core bias LSB change timeout is set to 833 us minimum. The maximum can be +40%."]
507 #[inline(always)]
508 pub fn t833us(self) -> &'a mut W {
509 self.variant(TIMEOUTCBLSB_A::T833US)
510 }
511 #[doc = "The core bias LSB change timeout is set to 1250 us minimum. The maximum can be +40%."]
512 #[inline(always)]
513 pub fn t1250us(self) -> &'a mut W {
514 self.variant(TIMEOUTCBLSB_A::T1250US)
515 }
516 #[doc = "The core bias LSB change timeout is set to 2083 us minimum. The maximum can be +40%."]
517 #[inline(always)]
518 pub fn t2083us(self) -> &'a mut W {
519 self.variant(TIMEOUTCBLSB_A::T2083US)
520 }
521 #[doc = "The core bias LSB change timeout is set to 3750 us minimum. The maximum can be +40%."]
522 #[inline(always)]
523 pub fn t3750us(self) -> &'a mut W {
524 self.variant(TIMEOUTCBLSB_A::T3750US)
525 }
526}
527impl R {
528 #[doc = "Bits 0:5 - Intermediate Startup Core Bias Current"]
529 #[inline(always)]
530 pub fn corebiasstartupi(&self) -> COREBIASSTARTUPI_R {
531 COREBIASSTARTUPI_R::new((self.bits & 0x3f) as u8)
532 }
533 #[doc = "Bits 6:11 - Startup Core Bias Current"]
534 #[inline(always)]
535 pub fn corebiasstartup(&self) -> COREBIASSTARTUP_R {
536 COREBIASSTARTUP_R::new(((self.bits >> 6) & 0x3f) as u8)
537 }
538 #[doc = "Bits 12:15 - Startup Tuning Capacitance on XI"]
539 #[inline(always)]
540 pub fn ctunexistartup(&self) -> CTUNEXISTARTUP_R {
541 CTUNEXISTARTUP_R::new(((self.bits >> 12) & 0x0f) as u8)
542 }
543 #[doc = "Bits 16:19 - Startup Tuning Capacitance on XO"]
544 #[inline(always)]
545 pub fn ctunexostartup(&self) -> CTUNEXOSTARTUP_R {
546 CTUNEXOSTARTUP_R::new(((self.bits >> 16) & 0x0f) as u8)
547 }
548 #[doc = "Bits 20:23 - Steady State Timeout"]
549 #[inline(always)]
550 pub fn timeoutsteady(&self) -> TIMEOUTSTEADY_R {
551 TIMEOUTSTEADY_R::new(((self.bits >> 20) & 0x0f) as u8)
552 }
553 #[doc = "Bits 24:27 - Core Bias LSB Change Timeout"]
554 #[inline(always)]
555 pub fn timeoutcblsb(&self) -> TIMEOUTCBLSB_R {
556 TIMEOUTCBLSB_R::new(((self.bits >> 24) & 0x0f) as u8)
557 }
558}
559impl W {
560 #[doc = "Bits 0:5 - Intermediate Startup Core Bias Current"]
561 #[inline(always)]
562 #[must_use]
563 pub fn corebiasstartupi(&mut self) -> COREBIASSTARTUPI_W<0> {
564 COREBIASSTARTUPI_W::new(self)
565 }
566 #[doc = "Bits 6:11 - Startup Core Bias Current"]
567 #[inline(always)]
568 #[must_use]
569 pub fn corebiasstartup(&mut self) -> COREBIASSTARTUP_W<6> {
570 COREBIASSTARTUP_W::new(self)
571 }
572 #[doc = "Bits 12:15 - Startup Tuning Capacitance on XI"]
573 #[inline(always)]
574 #[must_use]
575 pub fn ctunexistartup(&mut self) -> CTUNEXISTARTUP_W<12> {
576 CTUNEXISTARTUP_W::new(self)
577 }
578 #[doc = "Bits 16:19 - Startup Tuning Capacitance on XO"]
579 #[inline(always)]
580 #[must_use]
581 pub fn ctunexostartup(&mut self) -> CTUNEXOSTARTUP_W<16> {
582 CTUNEXOSTARTUP_W::new(self)
583 }
584 #[doc = "Bits 20:23 - Steady State Timeout"]
585 #[inline(always)]
586 #[must_use]
587 pub fn timeoutsteady(&mut self) -> TIMEOUTSTEADY_W<20> {
588 TIMEOUTSTEADY_W::new(self)
589 }
590 #[doc = "Bits 24:27 - Core Bias LSB Change Timeout"]
591 #[inline(always)]
592 #[must_use]
593 pub fn timeoutcblsb(&mut self) -> TIMEOUTCBLSB_W<24> {
594 TIMEOUTCBLSB_W::new(self)
595 }
596 #[doc = "Writes raw bits to the register."]
597 #[inline(always)]
598 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
599 self.0.bits(bits);
600 self
601 }
602}
603#[doc = "No Description\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 [xtalcfg](index.html) module"]
604pub struct XTALCFG_SPEC;
605impl crate::RegisterSpec for XTALCFG_SPEC {
606 type Ux = u32;
607}
608#[doc = "`read()` method returns [xtalcfg::R](R) reader structure"]
609impl crate::Readable for XTALCFG_SPEC {
610 type Reader = R;
611}
612#[doc = "`write(|w| ..)` method takes [xtalcfg::W](W) writer structure"]
613impl crate::Writable for XTALCFG_SPEC {
614 type Writer = W;
615 const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
616 const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
617}
618#[doc = "`reset()` method sets XTALCFG to value 0x0443_34cb"]
619impl crate::Resettable for XTALCFG_SPEC {
620 const RESET_VALUE: Self::Ux = 0x0443_34cb;
621}