avr_device/devices/atmega32u4/fuse/
low.rs

1#[doc = "Register `LOW` reader"]
2pub struct R(crate::R<LOW_SPEC>);
3impl core::ops::Deref for R {
4    type Target = crate::R<LOW_SPEC>;
5    #[inline(always)]
6    fn deref(&self) -> &Self::Target {
7        &self.0
8    }
9}
10impl From<crate::R<LOW_SPEC>> for R {
11    #[inline(always)]
12    fn from(reader: crate::R<LOW_SPEC>) -> Self {
13        R(reader)
14    }
15}
16#[doc = "Register `LOW` writer"]
17pub struct W(crate::W<LOW_SPEC>);
18impl core::ops::Deref for W {
19    type Target = crate::W<LOW_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<LOW_SPEC>> for W {
32    #[inline(always)]
33    fn from(writer: crate::W<LOW_SPEC>) -> Self {
34        W(writer)
35    }
36}
37#[doc = "Field `SUT_CKSEL` reader - Select Clock Source"]
38pub type SUT_CKSEL_R = crate::FieldReader<u8, SUT_CKSEL_A>;
39#[doc = "Select Clock Source\n\nValue on reset: 0"]
40#[derive(Clone, Copy, Debug, PartialEq, Eq)]
41#[repr(u8)]
42pub enum SUT_CKSEL_A {
43    #[doc = "0: Ext. Clock; Start-up time: 6 CK + 0 ms"]
44    EXTCLK_6CK_0MS = 0,
45    #[doc = "2: Int. RC Osc.; Start-up time: 6 CK + 0 ms"]
46    INTRCOSC_6CK_0MS = 2,
47    #[doc = "4: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 0 ms"]
48    EXTLOFXTAL_1KCK_0MS = 4,
49    #[doc = "5: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 0 ms"]
50    EXTLOFXTAL_32KCK_0MS = 5,
51    #[doc = "6: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 0 ms; Int. Cap."]
52    EXTLOFXTAL_1KCK_0MS_INTCAP = 6,
53    #[doc = "7: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 0 ms; Int. Cap."]
54    EXTLOFXTAL_32KCK_0MS_INTCAP = 7,
55    #[doc = "8: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 258 CK + 4.1 ms"]
56    EXTXOSC_0MHZ4_0MHZ9_258CK_4MS1 = 8,
57    #[doc = "9: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 65 ms"]
58    EXTXOSC_0MHZ4_0MHZ9_1KCK_65MS = 9,
59    #[doc = "10: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 258 CK + 4.1 ms"]
60    EXTXOSC_0MHZ9_3MHZ_258CK_4MS1 = 10,
61    #[doc = "11: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 65 ms"]
62    EXTXOSC_0MHZ9_3MHZ_1KCK_65MS = 11,
63    #[doc = "12: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 258 CK + 4.1 ms"]
64    EXTXOSC_3MHZ_8MHZ_258CK_4MS1 = 12,
65    #[doc = "13: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 65 ms"]
66    EXTXOSC_3MHZ_8MHZ_1KCK_65MS = 13,
67    #[doc = "14: Ext. Crystal Osc. 8.0- MHz; Start-up time: 258 CK + 4.1 ms"]
68    EXTXOSC_8MHZ_XX_258CK_4MS1 = 14,
69    #[doc = "15: Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 65 ms"]
70    EXTXOSC_8MHZ_XX_1KCK_65MS = 15,
71    #[doc = "16: Ext. Clock; Start-up time: 6 CK + 4.1 ms"]
72    EXTCLK_6CK_4MS1 = 16,
73    #[doc = "18: Int. RC Osc.; Start-up time: 6 CK + 4.1 ms"]
74    INTRCOSC_6CK_4MS1 = 18,
75    #[doc = "20: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 4.1 ms"]
76    EXTLOFXTAL_1KCK_4MS1 = 20,
77    #[doc = "21: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 4.1 ms"]
78    EXTLOFXTAL_32KCK_4MS1 = 21,
79    #[doc = "22: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 4.1 ms; Int. Cap."]
80    EXTLOFXTAL_1KCK_4MS1_INTCAP = 22,
81    #[doc = "23: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 4.1 ms; Int. Cap."]
82    EXTLOFXTAL_32KCK_4MS1_INTCAP = 23,
83    #[doc = "24: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 258 CK + 65 ms"]
84    EXTXOSC_0MHZ4_0MHZ9_258CK_65MS = 24,
85    #[doc = "25: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 0 ms"]
86    EXTXOSC_0MHZ4_0MHZ9_16KCK_0MS = 25,
87    #[doc = "26: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 258 CK + 65 ms"]
88    EXTXOSC_0MHZ9_3MHZ_258CK_65MS = 26,
89    #[doc = "27: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 0 ms"]
90    EXTXOSC_0MHZ9_3MHZ_16KCK_0MS = 27,
91    #[doc = "28: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 258 CK + 65 ms"]
92    EXTXOSC_3MHZ_8MHZ_258CK_65MS = 28,
93    #[doc = "29: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 0 ms"]
94    EXTXOSC_3MHZ_8MHZ_16KCK_0MS = 29,
95    #[doc = "30: Ext. Crystal Osc. 8.0- MHz; Start-up time: 258 CK + 65 ms"]
96    EXTXOSC_8MHZ_XX_258CK_65MS = 30,
97    #[doc = "31: Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 0 ms"]
98    EXTXOSC_8MHZ_XX_16KCK_0MS = 31,
99    #[doc = "32: Ext. Clock; Start-up time: 6 CK + 65 ms"]
100    EXTCLK_6CK_65MS = 32,
101    #[doc = "34: Int. RC Osc.; Start-up time: 6 CK + 65 ms"]
102    INTRCOSC_6CK_65MS = 34,
103    #[doc = "36: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 65 ms"]
104    EXTLOFXTAL_1KCK_65MS = 36,
105    #[doc = "37: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 65 ms"]
106    EXTLOFXTAL_32KCK_65MS = 37,
107    #[doc = "38: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 65 ms; Int. Cap."]
108    EXTLOFXTAL_1KCK_65MS_INTCAP = 38,
109    #[doc = "39: Ext. Low-Freq. Crystal; Start-up time: 32K CK + 65 ms; Int. Cap."]
110    EXTLOFXTAL_32KCK_65MS_INTCAP = 39,
111    #[doc = "40: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 0 ms"]
112    EXTXOSC_0MHZ4_0MHZ9_1KCK_0MS = 40,
113    #[doc = "41: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 4.1 ms"]
114    EXTXOSC_0MHZ4_0MHZ9_16KCK_4MS1 = 41,
115    #[doc = "42: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 0 ms"]
116    EXTXOSC_0MHZ9_3MHZ_1KCK_0MS = 42,
117    #[doc = "43: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 4.1 ms"]
118    EXTXOSC_0MHZ9_3MHZ_16KCK_4MS1 = 43,
119    #[doc = "44: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 0 ms"]
120    EXTXOSC_3MHZ_8MHZ_1KCK_0MS = 44,
121    #[doc = "45: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 4.1 ms"]
122    EXTXOSC_3MHZ_8MHZ_16KCK_4MS1 = 45,
123    #[doc = "46: Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 0 ms"]
124    EXTXOSC_8MHZ_XX_1KCK_0MS = 46,
125    #[doc = "47: Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 4.1 ms"]
126    EXTXOSC_8MHZ_XX_16KCK_4MS1 = 47,
127    #[doc = "56: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 4.1 ms"]
128    EXTXOSC_0MHZ4_0MHZ9_1KCK_4MS1 = 56,
129    #[doc = "57: Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 65 ms"]
130    EXTXOSC_0MHZ4_0MHZ9_16KCK_65MS = 57,
131    #[doc = "58: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 4.1 ms"]
132    EXTXOSC_0MHZ9_3MHZ_1KCK_4MS1 = 58,
133    #[doc = "59: Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 65 ms"]
134    EXTXOSC_0MHZ9_3MHZ_16KCK_65MS = 59,
135    #[doc = "60: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 4.1 ms"]
136    EXTXOSC_3MHZ_8MHZ_1KCK_4MS1 = 60,
137    #[doc = "61: Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 65 ms"]
138    EXTXOSC_3MHZ_8MHZ_16KCK_65MS = 61,
139    #[doc = "62: Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 4.1 ms"]
140    EXTXOSC_8MHZ_XX_1KCK_4MS1 = 62,
141    #[doc = "63: Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 65 ms"]
142    EXTXOSC_8MHZ_XX_16KCK_65MS = 63,
143}
144impl From<SUT_CKSEL_A> for u8 {
145    #[inline(always)]
146    fn from(variant: SUT_CKSEL_A) -> Self {
147        variant as _
148    }
149}
150impl SUT_CKSEL_R {
151    #[doc = "Get enumerated values variant"]
152    #[inline(always)]
153    pub fn variant(&self) -> Option<SUT_CKSEL_A> {
154        match self.bits {
155            0 => Some(SUT_CKSEL_A::EXTCLK_6CK_0MS),
156            2 => Some(SUT_CKSEL_A::INTRCOSC_6CK_0MS),
157            4 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS),
158            5 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS),
159            6 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS_INTCAP),
160            7 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS_INTCAP),
161            8 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_4MS1),
162            9 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_65MS),
163            10 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_4MS1),
164            11 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_65MS),
165            12 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_4MS1),
166            13 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_65MS),
167            14 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_4MS1),
168            15 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_65MS),
169            16 => Some(SUT_CKSEL_A::EXTCLK_6CK_4MS1),
170            18 => Some(SUT_CKSEL_A::INTRCOSC_6CK_4MS1),
171            20 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1),
172            21 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1),
173            22 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1_INTCAP),
174            23 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1_INTCAP),
175            24 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_65MS),
176            25 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_0MS),
177            26 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_65MS),
178            27 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_0MS),
179            28 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_65MS),
180            29 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_0MS),
181            30 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_65MS),
182            31 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_0MS),
183            32 => Some(SUT_CKSEL_A::EXTCLK_6CK_65MS),
184            34 => Some(SUT_CKSEL_A::INTRCOSC_6CK_65MS),
185            36 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS),
186            37 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS),
187            38 => Some(SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS_INTCAP),
188            39 => Some(SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS_INTCAP),
189            40 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_0MS),
190            41 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_4MS1),
191            42 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_0MS),
192            43 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_4MS1),
193            44 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_0MS),
194            45 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_4MS1),
195            46 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_0MS),
196            47 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_4MS1),
197            56 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_4MS1),
198            57 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_65MS),
199            58 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_4MS1),
200            59 => Some(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_65MS),
201            60 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_4MS1),
202            61 => Some(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_65MS),
203            62 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_4MS1),
204            63 => Some(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_65MS),
205            _ => None,
206        }
207    }
208    #[doc = "Checks if the value of the field is `EXTCLK_6CK_0MS`"]
209    #[inline(always)]
210    pub fn is_extclk_6ck_0ms(&self) -> bool {
211        *self == SUT_CKSEL_A::EXTCLK_6CK_0MS
212    }
213    #[doc = "Checks if the value of the field is `INTRCOSC_6CK_0MS`"]
214    #[inline(always)]
215    pub fn is_intrcosc_6ck_0ms(&self) -> bool {
216        *self == SUT_CKSEL_A::INTRCOSC_6CK_0MS
217    }
218    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_0MS`"]
219    #[inline(always)]
220    pub fn is_extlofxtal_1kck_0ms(&self) -> bool {
221        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS
222    }
223    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_0MS`"]
224    #[inline(always)]
225    pub fn is_extlofxtal_32kck_0ms(&self) -> bool {
226        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS
227    }
228    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_0MS_INTCAP`"]
229    #[inline(always)]
230    pub fn is_extlofxtal_1kck_0ms_intcap(&self) -> bool {
231        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS_INTCAP
232    }
233    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_0MS_INTCAP`"]
234    #[inline(always)]
235    pub fn is_extlofxtal_32kck_0ms_intcap(&self) -> bool {
236        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS_INTCAP
237    }
238    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_258CK_4MS1`"]
239    #[inline(always)]
240    pub fn is_extxosc_0mhz4_0mhz9_258ck_4ms1(&self) -> bool {
241        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_4MS1
242    }
243    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_1KCK_65MS`"]
244    #[inline(always)]
245    pub fn is_extxosc_0mhz4_0mhz9_1kck_65ms(&self) -> bool {
246        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_65MS
247    }
248    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_258CK_4MS1`"]
249    #[inline(always)]
250    pub fn is_extxosc_0mhz9_3mhz_258ck_4ms1(&self) -> bool {
251        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_4MS1
252    }
253    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_1KCK_65MS`"]
254    #[inline(always)]
255    pub fn is_extxosc_0mhz9_3mhz_1kck_65ms(&self) -> bool {
256        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_65MS
257    }
258    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_258CK_4MS1`"]
259    #[inline(always)]
260    pub fn is_extxosc_3mhz_8mhz_258ck_4ms1(&self) -> bool {
261        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_4MS1
262    }
263    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_1KCK_65MS`"]
264    #[inline(always)]
265    pub fn is_extxosc_3mhz_8mhz_1kck_65ms(&self) -> bool {
266        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_65MS
267    }
268    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_258CK_4MS1`"]
269    #[inline(always)]
270    pub fn is_extxosc_8mhz_xx_258ck_4ms1(&self) -> bool {
271        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_4MS1
272    }
273    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_1KCK_65MS`"]
274    #[inline(always)]
275    pub fn is_extxosc_8mhz_xx_1kck_65ms(&self) -> bool {
276        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_65MS
277    }
278    #[doc = "Checks if the value of the field is `EXTCLK_6CK_4MS1`"]
279    #[inline(always)]
280    pub fn is_extclk_6ck_4ms1(&self) -> bool {
281        *self == SUT_CKSEL_A::EXTCLK_6CK_4MS1
282    }
283    #[doc = "Checks if the value of the field is `INTRCOSC_6CK_4MS1`"]
284    #[inline(always)]
285    pub fn is_intrcosc_6ck_4ms1(&self) -> bool {
286        *self == SUT_CKSEL_A::INTRCOSC_6CK_4MS1
287    }
288    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_4MS1`"]
289    #[inline(always)]
290    pub fn is_extlofxtal_1kck_4ms1(&self) -> bool {
291        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1
292    }
293    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_4MS1`"]
294    #[inline(always)]
295    pub fn is_extlofxtal_32kck_4ms1(&self) -> bool {
296        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1
297    }
298    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_4MS1_INTCAP`"]
299    #[inline(always)]
300    pub fn is_extlofxtal_1kck_4ms1_intcap(&self) -> bool {
301        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1_INTCAP
302    }
303    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_4MS1_INTCAP`"]
304    #[inline(always)]
305    pub fn is_extlofxtal_32kck_4ms1_intcap(&self) -> bool {
306        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1_INTCAP
307    }
308    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_258CK_65MS`"]
309    #[inline(always)]
310    pub fn is_extxosc_0mhz4_0mhz9_258ck_65ms(&self) -> bool {
311        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_65MS
312    }
313    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_16KCK_0MS`"]
314    #[inline(always)]
315    pub fn is_extxosc_0mhz4_0mhz9_16kck_0ms(&self) -> bool {
316        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_0MS
317    }
318    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_258CK_65MS`"]
319    #[inline(always)]
320    pub fn is_extxosc_0mhz9_3mhz_258ck_65ms(&self) -> bool {
321        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_65MS
322    }
323    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_16KCK_0MS`"]
324    #[inline(always)]
325    pub fn is_extxosc_0mhz9_3mhz_16kck_0ms(&self) -> bool {
326        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_0MS
327    }
328    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_258CK_65MS`"]
329    #[inline(always)]
330    pub fn is_extxosc_3mhz_8mhz_258ck_65ms(&self) -> bool {
331        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_65MS
332    }
333    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_16KCK_0MS`"]
334    #[inline(always)]
335    pub fn is_extxosc_3mhz_8mhz_16kck_0ms(&self) -> bool {
336        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_0MS
337    }
338    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_258CK_65MS`"]
339    #[inline(always)]
340    pub fn is_extxosc_8mhz_xx_258ck_65ms(&self) -> bool {
341        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_65MS
342    }
343    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_16KCK_0MS`"]
344    #[inline(always)]
345    pub fn is_extxosc_8mhz_xx_16kck_0ms(&self) -> bool {
346        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_0MS
347    }
348    #[doc = "Checks if the value of the field is `EXTCLK_6CK_65MS`"]
349    #[inline(always)]
350    pub fn is_extclk_6ck_65ms(&self) -> bool {
351        *self == SUT_CKSEL_A::EXTCLK_6CK_65MS
352    }
353    #[doc = "Checks if the value of the field is `INTRCOSC_6CK_65MS`"]
354    #[inline(always)]
355    pub fn is_intrcosc_6ck_65ms(&self) -> bool {
356        *self == SUT_CKSEL_A::INTRCOSC_6CK_65MS
357    }
358    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_65MS`"]
359    #[inline(always)]
360    pub fn is_extlofxtal_1kck_65ms(&self) -> bool {
361        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS
362    }
363    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_65MS`"]
364    #[inline(always)]
365    pub fn is_extlofxtal_32kck_65ms(&self) -> bool {
366        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS
367    }
368    #[doc = "Checks if the value of the field is `EXTLOFXTAL_1KCK_65MS_INTCAP`"]
369    #[inline(always)]
370    pub fn is_extlofxtal_1kck_65ms_intcap(&self) -> bool {
371        *self == SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS_INTCAP
372    }
373    #[doc = "Checks if the value of the field is `EXTLOFXTAL_32KCK_65MS_INTCAP`"]
374    #[inline(always)]
375    pub fn is_extlofxtal_32kck_65ms_intcap(&self) -> bool {
376        *self == SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS_INTCAP
377    }
378    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_1KCK_0MS`"]
379    #[inline(always)]
380    pub fn is_extxosc_0mhz4_0mhz9_1kck_0ms(&self) -> bool {
381        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_0MS
382    }
383    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_16KCK_4MS1`"]
384    #[inline(always)]
385    pub fn is_extxosc_0mhz4_0mhz9_16kck_4ms1(&self) -> bool {
386        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_4MS1
387    }
388    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_1KCK_0MS`"]
389    #[inline(always)]
390    pub fn is_extxosc_0mhz9_3mhz_1kck_0ms(&self) -> bool {
391        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_0MS
392    }
393    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_16KCK_4MS1`"]
394    #[inline(always)]
395    pub fn is_extxosc_0mhz9_3mhz_16kck_4ms1(&self) -> bool {
396        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_4MS1
397    }
398    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_1KCK_0MS`"]
399    #[inline(always)]
400    pub fn is_extxosc_3mhz_8mhz_1kck_0ms(&self) -> bool {
401        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_0MS
402    }
403    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_16KCK_4MS1`"]
404    #[inline(always)]
405    pub fn is_extxosc_3mhz_8mhz_16kck_4ms1(&self) -> bool {
406        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_4MS1
407    }
408    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_1KCK_0MS`"]
409    #[inline(always)]
410    pub fn is_extxosc_8mhz_xx_1kck_0ms(&self) -> bool {
411        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_0MS
412    }
413    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_16KCK_4MS1`"]
414    #[inline(always)]
415    pub fn is_extxosc_8mhz_xx_16kck_4ms1(&self) -> bool {
416        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_4MS1
417    }
418    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_1KCK_4MS1`"]
419    #[inline(always)]
420    pub fn is_extxosc_0mhz4_0mhz9_1kck_4ms1(&self) -> bool {
421        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_4MS1
422    }
423    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ4_0MHZ9_16KCK_65MS`"]
424    #[inline(always)]
425    pub fn is_extxosc_0mhz4_0mhz9_16kck_65ms(&self) -> bool {
426        *self == SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_65MS
427    }
428    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_1KCK_4MS1`"]
429    #[inline(always)]
430    pub fn is_extxosc_0mhz9_3mhz_1kck_4ms1(&self) -> bool {
431        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_4MS1
432    }
433    #[doc = "Checks if the value of the field is `EXTXOSC_0MHZ9_3MHZ_16KCK_65MS`"]
434    #[inline(always)]
435    pub fn is_extxosc_0mhz9_3mhz_16kck_65ms(&self) -> bool {
436        *self == SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_65MS
437    }
438    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_1KCK_4MS1`"]
439    #[inline(always)]
440    pub fn is_extxosc_3mhz_8mhz_1kck_4ms1(&self) -> bool {
441        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_4MS1
442    }
443    #[doc = "Checks if the value of the field is `EXTXOSC_3MHZ_8MHZ_16KCK_65MS`"]
444    #[inline(always)]
445    pub fn is_extxosc_3mhz_8mhz_16kck_65ms(&self) -> bool {
446        *self == SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_65MS
447    }
448    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_1KCK_4MS1`"]
449    #[inline(always)]
450    pub fn is_extxosc_8mhz_xx_1kck_4ms1(&self) -> bool {
451        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_4MS1
452    }
453    #[doc = "Checks if the value of the field is `EXTXOSC_8MHZ_XX_16KCK_65MS`"]
454    #[inline(always)]
455    pub fn is_extxosc_8mhz_xx_16kck_65ms(&self) -> bool {
456        *self == SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_65MS
457    }
458}
459#[doc = "Field `SUT_CKSEL` writer - Select Clock Source"]
460pub type SUT_CKSEL_W<'a, const O: u8> = crate::FieldWriter<'a, u8, LOW_SPEC, u8, SUT_CKSEL_A, 6, O>;
461impl<'a, const O: u8> SUT_CKSEL_W<'a, O> {
462    #[doc = "Ext. Clock; Start-up time: 6 CK + 0 ms"]
463    #[inline(always)]
464    pub fn extclk_6ck_0ms(self) -> &'a mut W {
465        self.variant(SUT_CKSEL_A::EXTCLK_6CK_0MS)
466    }
467    #[doc = "Int. RC Osc.; Start-up time: 6 CK + 0 ms"]
468    #[inline(always)]
469    pub fn intrcosc_6ck_0ms(self) -> &'a mut W {
470        self.variant(SUT_CKSEL_A::INTRCOSC_6CK_0MS)
471    }
472    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 0 ms"]
473    #[inline(always)]
474    pub fn extlofxtal_1kck_0ms(self) -> &'a mut W {
475        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS)
476    }
477    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 0 ms"]
478    #[inline(always)]
479    pub fn extlofxtal_32kck_0ms(self) -> &'a mut W {
480        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS)
481    }
482    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 0 ms; Int. Cap."]
483    #[inline(always)]
484    pub fn extlofxtal_1kck_0ms_intcap(self) -> &'a mut W {
485        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_0MS_INTCAP)
486    }
487    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 0 ms; Int. Cap."]
488    #[inline(always)]
489    pub fn extlofxtal_32kck_0ms_intcap(self) -> &'a mut W {
490        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_0MS_INTCAP)
491    }
492    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 258 CK + 4.1 ms"]
493    #[inline(always)]
494    pub fn extxosc_0mhz4_0mhz9_258ck_4ms1(self) -> &'a mut W {
495        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_4MS1)
496    }
497    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 65 ms"]
498    #[inline(always)]
499    pub fn extxosc_0mhz4_0mhz9_1kck_65ms(self) -> &'a mut W {
500        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_65MS)
501    }
502    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 258 CK + 4.1 ms"]
503    #[inline(always)]
504    pub fn extxosc_0mhz9_3mhz_258ck_4ms1(self) -> &'a mut W {
505        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_4MS1)
506    }
507    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 65 ms"]
508    #[inline(always)]
509    pub fn extxosc_0mhz9_3mhz_1kck_65ms(self) -> &'a mut W {
510        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_65MS)
511    }
512    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 258 CK + 4.1 ms"]
513    #[inline(always)]
514    pub fn extxosc_3mhz_8mhz_258ck_4ms1(self) -> &'a mut W {
515        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_4MS1)
516    }
517    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 65 ms"]
518    #[inline(always)]
519    pub fn extxosc_3mhz_8mhz_1kck_65ms(self) -> &'a mut W {
520        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_65MS)
521    }
522    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 258 CK + 4.1 ms"]
523    #[inline(always)]
524    pub fn extxosc_8mhz_xx_258ck_4ms1(self) -> &'a mut W {
525        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_4MS1)
526    }
527    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 65 ms"]
528    #[inline(always)]
529    pub fn extxosc_8mhz_xx_1kck_65ms(self) -> &'a mut W {
530        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_65MS)
531    }
532    #[doc = "Ext. Clock; Start-up time: 6 CK + 4.1 ms"]
533    #[inline(always)]
534    pub fn extclk_6ck_4ms1(self) -> &'a mut W {
535        self.variant(SUT_CKSEL_A::EXTCLK_6CK_4MS1)
536    }
537    #[doc = "Int. RC Osc.; Start-up time: 6 CK + 4.1 ms"]
538    #[inline(always)]
539    pub fn intrcosc_6ck_4ms1(self) -> &'a mut W {
540        self.variant(SUT_CKSEL_A::INTRCOSC_6CK_4MS1)
541    }
542    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 4.1 ms"]
543    #[inline(always)]
544    pub fn extlofxtal_1kck_4ms1(self) -> &'a mut W {
545        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1)
546    }
547    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 4.1 ms"]
548    #[inline(always)]
549    pub fn extlofxtal_32kck_4ms1(self) -> &'a mut W {
550        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1)
551    }
552    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 4.1 ms; Int. Cap."]
553    #[inline(always)]
554    pub fn extlofxtal_1kck_4ms1_intcap(self) -> &'a mut W {
555        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_4MS1_INTCAP)
556    }
557    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 4.1 ms; Int. Cap."]
558    #[inline(always)]
559    pub fn extlofxtal_32kck_4ms1_intcap(self) -> &'a mut W {
560        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_4MS1_INTCAP)
561    }
562    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 258 CK + 65 ms"]
563    #[inline(always)]
564    pub fn extxosc_0mhz4_0mhz9_258ck_65ms(self) -> &'a mut W {
565        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_258CK_65MS)
566    }
567    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 0 ms"]
568    #[inline(always)]
569    pub fn extxosc_0mhz4_0mhz9_16kck_0ms(self) -> &'a mut W {
570        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_0MS)
571    }
572    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 258 CK + 65 ms"]
573    #[inline(always)]
574    pub fn extxosc_0mhz9_3mhz_258ck_65ms(self) -> &'a mut W {
575        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_258CK_65MS)
576    }
577    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 0 ms"]
578    #[inline(always)]
579    pub fn extxosc_0mhz9_3mhz_16kck_0ms(self) -> &'a mut W {
580        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_0MS)
581    }
582    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 258 CK + 65 ms"]
583    #[inline(always)]
584    pub fn extxosc_3mhz_8mhz_258ck_65ms(self) -> &'a mut W {
585        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_258CK_65MS)
586    }
587    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 0 ms"]
588    #[inline(always)]
589    pub fn extxosc_3mhz_8mhz_16kck_0ms(self) -> &'a mut W {
590        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_0MS)
591    }
592    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 258 CK + 65 ms"]
593    #[inline(always)]
594    pub fn extxosc_8mhz_xx_258ck_65ms(self) -> &'a mut W {
595        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_258CK_65MS)
596    }
597    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 0 ms"]
598    #[inline(always)]
599    pub fn extxosc_8mhz_xx_16kck_0ms(self) -> &'a mut W {
600        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_0MS)
601    }
602    #[doc = "Ext. Clock; Start-up time: 6 CK + 65 ms"]
603    #[inline(always)]
604    pub fn extclk_6ck_65ms(self) -> &'a mut W {
605        self.variant(SUT_CKSEL_A::EXTCLK_6CK_65MS)
606    }
607    #[doc = "Int. RC Osc.; Start-up time: 6 CK + 65 ms"]
608    #[inline(always)]
609    pub fn intrcosc_6ck_65ms(self) -> &'a mut W {
610        self.variant(SUT_CKSEL_A::INTRCOSC_6CK_65MS)
611    }
612    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 65 ms"]
613    #[inline(always)]
614    pub fn extlofxtal_1kck_65ms(self) -> &'a mut W {
615        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS)
616    }
617    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 65 ms"]
618    #[inline(always)]
619    pub fn extlofxtal_32kck_65ms(self) -> &'a mut W {
620        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS)
621    }
622    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 1K CK + 65 ms; Int. Cap."]
623    #[inline(always)]
624    pub fn extlofxtal_1kck_65ms_intcap(self) -> &'a mut W {
625        self.variant(SUT_CKSEL_A::EXTLOFXTAL_1KCK_65MS_INTCAP)
626    }
627    #[doc = "Ext. Low-Freq. Crystal; Start-up time: 32K CK + 65 ms; Int. Cap."]
628    #[inline(always)]
629    pub fn extlofxtal_32kck_65ms_intcap(self) -> &'a mut W {
630        self.variant(SUT_CKSEL_A::EXTLOFXTAL_32KCK_65MS_INTCAP)
631    }
632    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 0 ms"]
633    #[inline(always)]
634    pub fn extxosc_0mhz4_0mhz9_1kck_0ms(self) -> &'a mut W {
635        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_0MS)
636    }
637    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 4.1 ms"]
638    #[inline(always)]
639    pub fn extxosc_0mhz4_0mhz9_16kck_4ms1(self) -> &'a mut W {
640        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_4MS1)
641    }
642    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 0 ms"]
643    #[inline(always)]
644    pub fn extxosc_0mhz9_3mhz_1kck_0ms(self) -> &'a mut W {
645        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_0MS)
646    }
647    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 4.1 ms"]
648    #[inline(always)]
649    pub fn extxosc_0mhz9_3mhz_16kck_4ms1(self) -> &'a mut W {
650        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_4MS1)
651    }
652    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 0 ms"]
653    #[inline(always)]
654    pub fn extxosc_3mhz_8mhz_1kck_0ms(self) -> &'a mut W {
655        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_0MS)
656    }
657    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 4.1 ms"]
658    #[inline(always)]
659    pub fn extxosc_3mhz_8mhz_16kck_4ms1(self) -> &'a mut W {
660        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_4MS1)
661    }
662    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 0 ms"]
663    #[inline(always)]
664    pub fn extxosc_8mhz_xx_1kck_0ms(self) -> &'a mut W {
665        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_0MS)
666    }
667    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 4.1 ms"]
668    #[inline(always)]
669    pub fn extxosc_8mhz_xx_16kck_4ms1(self) -> &'a mut W {
670        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_4MS1)
671    }
672    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 1K CK + 4.1 ms"]
673    #[inline(always)]
674    pub fn extxosc_0mhz4_0mhz9_1kck_4ms1(self) -> &'a mut W {
675        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_1KCK_4MS1)
676    }
677    #[doc = "Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time: 16K CK + 65 ms"]
678    #[inline(always)]
679    pub fn extxosc_0mhz4_0mhz9_16kck_65ms(self) -> &'a mut W {
680        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ4_0MHZ9_16KCK_65MS)
681    }
682    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 1K CK + 4.1 ms"]
683    #[inline(always)]
684    pub fn extxosc_0mhz9_3mhz_1kck_4ms1(self) -> &'a mut W {
685        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_1KCK_4MS1)
686    }
687    #[doc = "Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time: 16K CK + 65 ms"]
688    #[inline(always)]
689    pub fn extxosc_0mhz9_3mhz_16kck_65ms(self) -> &'a mut W {
690        self.variant(SUT_CKSEL_A::EXTXOSC_0MHZ9_3MHZ_16KCK_65MS)
691    }
692    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 1K CK + 4.1 ms"]
693    #[inline(always)]
694    pub fn extxosc_3mhz_8mhz_1kck_4ms1(self) -> &'a mut W {
695        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_1KCK_4MS1)
696    }
697    #[doc = "Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 16K CK + 65 ms"]
698    #[inline(always)]
699    pub fn extxosc_3mhz_8mhz_16kck_65ms(self) -> &'a mut W {
700        self.variant(SUT_CKSEL_A::EXTXOSC_3MHZ_8MHZ_16KCK_65MS)
701    }
702    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 1K CK + 4.1 ms"]
703    #[inline(always)]
704    pub fn extxosc_8mhz_xx_1kck_4ms1(self) -> &'a mut W {
705        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_1KCK_4MS1)
706    }
707    #[doc = "Ext. Crystal Osc. 8.0- MHz; Start-up time: 16K CK + 65 ms"]
708    #[inline(always)]
709    pub fn extxosc_8mhz_xx_16kck_65ms(self) -> &'a mut W {
710        self.variant(SUT_CKSEL_A::EXTXOSC_8MHZ_XX_16KCK_65MS)
711    }
712}
713#[doc = "Field `CKOUT` reader - Clock output on PORTC7"]
714pub type CKOUT_R = crate::BitReader<bool>;
715#[doc = "Field `CKOUT` writer - Clock output on PORTC7"]
716pub type CKOUT_W<'a, const O: u8> = crate::BitWriter<'a, u8, LOW_SPEC, bool, O>;
717#[doc = "Field `CKDIV8` reader - Divide clock by 8 internally"]
718pub type CKDIV8_R = crate::BitReader<bool>;
719#[doc = "Field `CKDIV8` writer - Divide clock by 8 internally"]
720pub type CKDIV8_W<'a, const O: u8> = crate::BitWriter<'a, u8, LOW_SPEC, bool, O>;
721impl R {
722    #[doc = "Bits 0:5 - Select Clock Source"]
723    #[inline(always)]
724    pub fn sut_cksel(&self) -> SUT_CKSEL_R {
725        SUT_CKSEL_R::new(self.bits & 0x3f)
726    }
727    #[doc = "Bit 6 - Clock output on PORTC7"]
728    #[inline(always)]
729    pub fn ckout(&self) -> CKOUT_R {
730        CKOUT_R::new(((self.bits >> 6) & 1) != 0)
731    }
732    #[doc = "Bit 7 - Divide clock by 8 internally"]
733    #[inline(always)]
734    pub fn ckdiv8(&self) -> CKDIV8_R {
735        CKDIV8_R::new(((self.bits >> 7) & 1) != 0)
736    }
737}
738impl W {
739    #[doc = "Bits 0:5 - Select Clock Source"]
740    #[inline(always)]
741    #[must_use]
742    pub fn sut_cksel(&mut self) -> SUT_CKSEL_W<0> {
743        SUT_CKSEL_W::new(self)
744    }
745    #[doc = "Bit 6 - Clock output on PORTC7"]
746    #[inline(always)]
747    #[must_use]
748    pub fn ckout(&mut self) -> CKOUT_W<6> {
749        CKOUT_W::new(self)
750    }
751    #[doc = "Bit 7 - Divide clock by 8 internally"]
752    #[inline(always)]
753    #[must_use]
754    pub fn ckdiv8(&mut self) -> CKDIV8_W<7> {
755        CKDIV8_W::new(self)
756    }
757    #[doc = "Writes raw bits to the register."]
758    #[inline(always)]
759    pub unsafe fn bits(&mut self, bits: u8) -> &mut Self {
760        self.0.bits(bits);
761        self
762    }
763}
764#[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 [low](index.html) module"]
765pub struct LOW_SPEC;
766impl crate::RegisterSpec for LOW_SPEC {
767    type Ux = u8;
768}
769#[doc = "`read()` method returns [low::R](R) reader structure"]
770impl crate::Readable for LOW_SPEC {
771    type Reader = R;
772}
773#[doc = "`write(|w| ..)` method takes [low::W](W) writer structure"]
774impl crate::Writable for LOW_SPEC {
775    type Writer = W;
776    const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
777    const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
778}
779#[doc = "`reset()` method sets LOW to value 0"]
780impl crate::Resettable for LOW_SPEC {
781    const RESET_VALUE: Self::Ux = 0;
782}