avr_device/devices/atmega32u4/fuse/
low.rs1#[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}