1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
#[doc = "Register `XTAL_32K_PAD` reader"]
pub struct R(crate::R<XTAL_32K_PAD_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<XTAL_32K_PAD_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<XTAL_32K_PAD_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<XTAL_32K_PAD_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `XTAL_32K_PAD` writer"]
pub struct W(crate::W<XTAL_32K_PAD_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<XTAL_32K_PAD_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<XTAL_32K_PAD_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<XTAL_32K_PAD_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `DBIAS_XTAL_32K` reader - 32K XTAL self-bias reference control."]
pub type DBIAS_XTAL_32K_R = crate::FieldReader<u8, u8>;
#[doc = "Field `DBIAS_XTAL_32K` writer - 32K XTAL self-bias reference control."]
pub type DBIAS_XTAL_32K_W<'a, const O: u8> =
crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `DRES_XTAL_32K` reader - 32K XTAL resistor bias control."]
pub type DRES_XTAL_32K_R = crate::FieldReader<u8, u8>;
#[doc = "Field `DRES_XTAL_32K` writer - 32K XTAL resistor bias control."]
pub type DRES_XTAL_32K_W<'a, const O: u8> =
crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `X32P_FUN_IE` reader - the input enable of the pad"]
pub type X32P_FUN_IE_R = crate::BitReader<bool>;
#[doc = "Field `X32P_FUN_IE` writer - the input enable of the pad"]
pub type X32P_FUN_IE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_SLP_OE` reader - the output enable of the pad in sleep status"]
pub type X32P_SLP_OE_R = crate::BitReader<bool>;
#[doc = "Field `X32P_SLP_OE` writer - the output enable of the pad in sleep status"]
pub type X32P_SLP_OE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_SLP_IE` reader - the input enable of the pad in sleep status"]
pub type X32P_SLP_IE_R = crate::BitReader<bool>;
#[doc = "Field `X32P_SLP_IE` writer - the input enable of the pad in sleep status"]
pub type X32P_SLP_IE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_SLP_SEL` reader - the sleep status selection signal of the pad"]
pub type X32P_SLP_SEL_R = crate::BitReader<bool>;
#[doc = "Field `X32P_SLP_SEL` writer - the sleep status selection signal of the pad"]
pub type X32P_SLP_SEL_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_FUN_SEL` reader - the functional selection signal of the pad"]
pub type X32P_FUN_SEL_R = crate::FieldReader<u8, u8>;
#[doc = "Field `X32P_FUN_SEL` writer - the functional selection signal of the pad"]
pub type X32P_FUN_SEL_W<'a, const O: u8> =
crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `X32N_FUN_IE` reader - the input enable of the pad"]
pub type X32N_FUN_IE_R = crate::BitReader<bool>;
#[doc = "Field `X32N_FUN_IE` writer - the input enable of the pad"]
pub type X32N_FUN_IE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_SLP_OE` reader - the output enable of the pad in sleep status"]
pub type X32N_SLP_OE_R = crate::BitReader<bool>;
#[doc = "Field `X32N_SLP_OE` writer - the output enable of the pad in sleep status"]
pub type X32N_SLP_OE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_SLP_IE` reader - the input enable of the pad in sleep status"]
pub type X32N_SLP_IE_R = crate::BitReader<bool>;
#[doc = "Field `X32N_SLP_IE` writer - the input enable of the pad in sleep status"]
pub type X32N_SLP_IE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_SLP_SEL` reader - the sleep status selection signal of the pad"]
pub type X32N_SLP_SEL_R = crate::BitReader<bool>;
#[doc = "Field `X32N_SLP_SEL` writer - the sleep status selection signal of the pad"]
pub type X32N_SLP_SEL_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_FUN_SEL` reader - the functional selection signal of the pad"]
pub type X32N_FUN_SEL_R = crate::FieldReader<u8, u8>;
#[doc = "Field `X32N_FUN_SEL` writer - the functional selection signal of the pad"]
pub type X32N_FUN_SEL_W<'a, const O: u8> =
crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `X32P_MUX_SEL` reader - Ò1Ó select the digital function Ó0Óslection the rtc function"]
pub type X32P_MUX_SEL_R = crate::BitReader<bool>;
#[doc = "Field `X32P_MUX_SEL` writer - Ò1Ó select the digital function Ó0Óslection the rtc function"]
pub type X32P_MUX_SEL_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_MUX_SEL` reader - Ò1Ó select the digital function Ó0Óslection the rtc function"]
pub type X32N_MUX_SEL_R = crate::BitReader<bool>;
#[doc = "Field `X32N_MUX_SEL` writer - Ò1Ó select the digital function Ó0Óslection the rtc function"]
pub type X32N_MUX_SEL_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `XPD_XTAL_32K` reader - Power up 32kHz crystal oscillator"]
pub type XPD_XTAL_32K_R = crate::BitReader<bool>;
#[doc = "Field `XPD_XTAL_32K` writer - Power up 32kHz crystal oscillator"]
pub type XPD_XTAL_32K_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `DAC_XTAL_32K` reader - 32K XTAL bias current DAC."]
pub type DAC_XTAL_32K_R = crate::FieldReader<u8, u8>;
#[doc = "Field `DAC_XTAL_32K` writer - 32K XTAL bias current DAC."]
pub type DAC_XTAL_32K_W<'a, const O: u8> =
crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `X32P_RUE` reader - the pull up enable of the pad"]
pub type X32P_RUE_R = crate::BitReader<bool>;
#[doc = "Field `X32P_RUE` writer - the pull up enable of the pad"]
pub type X32P_RUE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_RDE` reader - the pull down enable of the pad"]
pub type X32P_RDE_R = crate::BitReader<bool>;
#[doc = "Field `X32P_RDE` writer - the pull down enable of the pad"]
pub type X32P_RDE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_HOLD` reader - hold the current value of the output when setting the hold to Ò1Ó"]
pub type X32P_HOLD_R = crate::BitReader<bool>;
#[doc = "Field `X32P_HOLD` writer - hold the current value of the output when setting the hold to Ò1Ó"]
pub type X32P_HOLD_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32P_DRV` reader - the driver strength of the pad"]
pub type X32P_DRV_R = crate::FieldReader<u8, u8>;
#[doc = "Field `X32P_DRV` writer - the driver strength of the pad"]
pub type X32P_DRV_W<'a, const O: u8> = crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
#[doc = "Field `X32N_RUE` reader - the pull up enable of the pad"]
pub type X32N_RUE_R = crate::BitReader<bool>;
#[doc = "Field `X32N_RUE` writer - the pull up enable of the pad"]
pub type X32N_RUE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_RDE` reader - the pull down enable of the pad"]
pub type X32N_RDE_R = crate::BitReader<bool>;
#[doc = "Field `X32N_RDE` writer - the pull down enable of the pad"]
pub type X32N_RDE_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_HOLD` reader - hold the current value of the output when setting the hold to Ò1Ó"]
pub type X32N_HOLD_R = crate::BitReader<bool>;
#[doc = "Field `X32N_HOLD` writer - hold the current value of the output when setting the hold to Ò1Ó"]
pub type X32N_HOLD_W<'a, const O: u8> = crate::BitWriter<'a, u32, XTAL_32K_PAD_SPEC, bool, O>;
#[doc = "Field `X32N_DRV` reader - the driver strength of the pad"]
pub type X32N_DRV_R = crate::FieldReader<u8, u8>;
#[doc = "Field `X32N_DRV` writer - the driver strength of the pad"]
pub type X32N_DRV_W<'a, const O: u8> = crate::FieldWriter<'a, u32, XTAL_32K_PAD_SPEC, u8, u8, 2, O>;
impl R {
#[doc = "Bits 1:2 - 32K XTAL self-bias reference control."]
#[inline(always)]
pub fn dbias_xtal_32k(&self) -> DBIAS_XTAL_32K_R {
DBIAS_XTAL_32K_R::new(((self.bits >> 1) & 3) as u8)
}
#[doc = "Bits 3:4 - 32K XTAL resistor bias control."]
#[inline(always)]
pub fn dres_xtal_32k(&self) -> DRES_XTAL_32K_R {
DRES_XTAL_32K_R::new(((self.bits >> 3) & 3) as u8)
}
#[doc = "Bit 5 - the input enable of the pad"]
#[inline(always)]
pub fn x32p_fun_ie(&self) -> X32P_FUN_IE_R {
X32P_FUN_IE_R::new(((self.bits >> 5) & 1) != 0)
}
#[doc = "Bit 6 - the output enable of the pad in sleep status"]
#[inline(always)]
pub fn x32p_slp_oe(&self) -> X32P_SLP_OE_R {
X32P_SLP_OE_R::new(((self.bits >> 6) & 1) != 0)
}
#[doc = "Bit 7 - the input enable of the pad in sleep status"]
#[inline(always)]
pub fn x32p_slp_ie(&self) -> X32P_SLP_IE_R {
X32P_SLP_IE_R::new(((self.bits >> 7) & 1) != 0)
}
#[doc = "Bit 8 - the sleep status selection signal of the pad"]
#[inline(always)]
pub fn x32p_slp_sel(&self) -> X32P_SLP_SEL_R {
X32P_SLP_SEL_R::new(((self.bits >> 8) & 1) != 0)
}
#[doc = "Bits 9:10 - the functional selection signal of the pad"]
#[inline(always)]
pub fn x32p_fun_sel(&self) -> X32P_FUN_SEL_R {
X32P_FUN_SEL_R::new(((self.bits >> 9) & 3) as u8)
}
#[doc = "Bit 11 - the input enable of the pad"]
#[inline(always)]
pub fn x32n_fun_ie(&self) -> X32N_FUN_IE_R {
X32N_FUN_IE_R::new(((self.bits >> 11) & 1) != 0)
}
#[doc = "Bit 12 - the output enable of the pad in sleep status"]
#[inline(always)]
pub fn x32n_slp_oe(&self) -> X32N_SLP_OE_R {
X32N_SLP_OE_R::new(((self.bits >> 12) & 1) != 0)
}
#[doc = "Bit 13 - the input enable of the pad in sleep status"]
#[inline(always)]
pub fn x32n_slp_ie(&self) -> X32N_SLP_IE_R {
X32N_SLP_IE_R::new(((self.bits >> 13) & 1) != 0)
}
#[doc = "Bit 14 - the sleep status selection signal of the pad"]
#[inline(always)]
pub fn x32n_slp_sel(&self) -> X32N_SLP_SEL_R {
X32N_SLP_SEL_R::new(((self.bits >> 14) & 1) != 0)
}
#[doc = "Bits 15:16 - the functional selection signal of the pad"]
#[inline(always)]
pub fn x32n_fun_sel(&self) -> X32N_FUN_SEL_R {
X32N_FUN_SEL_R::new(((self.bits >> 15) & 3) as u8)
}
#[doc = "Bit 17 - Ò1Ó select the digital function Ó0Óslection the rtc function"]
#[inline(always)]
pub fn x32p_mux_sel(&self) -> X32P_MUX_SEL_R {
X32P_MUX_SEL_R::new(((self.bits >> 17) & 1) != 0)
}
#[doc = "Bit 18 - Ò1Ó select the digital function Ó0Óslection the rtc function"]
#[inline(always)]
pub fn x32n_mux_sel(&self) -> X32N_MUX_SEL_R {
X32N_MUX_SEL_R::new(((self.bits >> 18) & 1) != 0)
}
#[doc = "Bit 19 - Power up 32kHz crystal oscillator"]
#[inline(always)]
pub fn xpd_xtal_32k(&self) -> XPD_XTAL_32K_R {
XPD_XTAL_32K_R::new(((self.bits >> 19) & 1) != 0)
}
#[doc = "Bits 20:21 - 32K XTAL bias current DAC."]
#[inline(always)]
pub fn dac_xtal_32k(&self) -> DAC_XTAL_32K_R {
DAC_XTAL_32K_R::new(((self.bits >> 20) & 3) as u8)
}
#[doc = "Bit 22 - the pull up enable of the pad"]
#[inline(always)]
pub fn x32p_rue(&self) -> X32P_RUE_R {
X32P_RUE_R::new(((self.bits >> 22) & 1) != 0)
}
#[doc = "Bit 23 - the pull down enable of the pad"]
#[inline(always)]
pub fn x32p_rde(&self) -> X32P_RDE_R {
X32P_RDE_R::new(((self.bits >> 23) & 1) != 0)
}
#[doc = "Bit 24 - hold the current value of the output when setting the hold to Ò1Ó"]
#[inline(always)]
pub fn x32p_hold(&self) -> X32P_HOLD_R {
X32P_HOLD_R::new(((self.bits >> 24) & 1) != 0)
}
#[doc = "Bits 25:26 - the driver strength of the pad"]
#[inline(always)]
pub fn x32p_drv(&self) -> X32P_DRV_R {
X32P_DRV_R::new(((self.bits >> 25) & 3) as u8)
}
#[doc = "Bit 27 - the pull up enable of the pad"]
#[inline(always)]
pub fn x32n_rue(&self) -> X32N_RUE_R {
X32N_RUE_R::new(((self.bits >> 27) & 1) != 0)
}
#[doc = "Bit 28 - the pull down enable of the pad"]
#[inline(always)]
pub fn x32n_rde(&self) -> X32N_RDE_R {
X32N_RDE_R::new(((self.bits >> 28) & 1) != 0)
}
#[doc = "Bit 29 - hold the current value of the output when setting the hold to Ò1Ó"]
#[inline(always)]
pub fn x32n_hold(&self) -> X32N_HOLD_R {
X32N_HOLD_R::new(((self.bits >> 29) & 1) != 0)
}
#[doc = "Bits 30:31 - the driver strength of the pad"]
#[inline(always)]
pub fn x32n_drv(&self) -> X32N_DRV_R {
X32N_DRV_R::new(((self.bits >> 30) & 3) as u8)
}
}
impl W {
#[doc = "Bits 1:2 - 32K XTAL self-bias reference control."]
#[inline(always)]
pub fn dbias_xtal_32k(&mut self) -> DBIAS_XTAL_32K_W<1> {
DBIAS_XTAL_32K_W::new(self)
}
#[doc = "Bits 3:4 - 32K XTAL resistor bias control."]
#[inline(always)]
pub fn dres_xtal_32k(&mut self) -> DRES_XTAL_32K_W<3> {
DRES_XTAL_32K_W::new(self)
}
#[doc = "Bit 5 - the input enable of the pad"]
#[inline(always)]
pub fn x32p_fun_ie(&mut self) -> X32P_FUN_IE_W<5> {
X32P_FUN_IE_W::new(self)
}
#[doc = "Bit 6 - the output enable of the pad in sleep status"]
#[inline(always)]
pub fn x32p_slp_oe(&mut self) -> X32P_SLP_OE_W<6> {
X32P_SLP_OE_W::new(self)
}
#[doc = "Bit 7 - the input enable of the pad in sleep status"]
#[inline(always)]
pub fn x32p_slp_ie(&mut self) -> X32P_SLP_IE_W<7> {
X32P_SLP_IE_W::new(self)
}
#[doc = "Bit 8 - the sleep status selection signal of the pad"]
#[inline(always)]
pub fn x32p_slp_sel(&mut self) -> X32P_SLP_SEL_W<8> {
X32P_SLP_SEL_W::new(self)
}
#[doc = "Bits 9:10 - the functional selection signal of the pad"]
#[inline(always)]
pub fn x32p_fun_sel(&mut self) -> X32P_FUN_SEL_W<9> {
X32P_FUN_SEL_W::new(self)
}
#[doc = "Bit 11 - the input enable of the pad"]
#[inline(always)]
pub fn x32n_fun_ie(&mut self) -> X32N_FUN_IE_W<11> {
X32N_FUN_IE_W::new(self)
}
#[doc = "Bit 12 - the output enable of the pad in sleep status"]
#[inline(always)]
pub fn x32n_slp_oe(&mut self) -> X32N_SLP_OE_W<12> {
X32N_SLP_OE_W::new(self)
}
#[doc = "Bit 13 - the input enable of the pad in sleep status"]
#[inline(always)]
pub fn x32n_slp_ie(&mut self) -> X32N_SLP_IE_W<13> {
X32N_SLP_IE_W::new(self)
}
#[doc = "Bit 14 - the sleep status selection signal of the pad"]
#[inline(always)]
pub fn x32n_slp_sel(&mut self) -> X32N_SLP_SEL_W<14> {
X32N_SLP_SEL_W::new(self)
}
#[doc = "Bits 15:16 - the functional selection signal of the pad"]
#[inline(always)]
pub fn x32n_fun_sel(&mut self) -> X32N_FUN_SEL_W<15> {
X32N_FUN_SEL_W::new(self)
}
#[doc = "Bit 17 - Ò1Ó select the digital function Ó0Óslection the rtc function"]
#[inline(always)]
pub fn x32p_mux_sel(&mut self) -> X32P_MUX_SEL_W<17> {
X32P_MUX_SEL_W::new(self)
}
#[doc = "Bit 18 - Ò1Ó select the digital function Ó0Óslection the rtc function"]
#[inline(always)]
pub fn x32n_mux_sel(&mut self) -> X32N_MUX_SEL_W<18> {
X32N_MUX_SEL_W::new(self)
}
#[doc = "Bit 19 - Power up 32kHz crystal oscillator"]
#[inline(always)]
pub fn xpd_xtal_32k(&mut self) -> XPD_XTAL_32K_W<19> {
XPD_XTAL_32K_W::new(self)
}
#[doc = "Bits 20:21 - 32K XTAL bias current DAC."]
#[inline(always)]
pub fn dac_xtal_32k(&mut self) -> DAC_XTAL_32K_W<20> {
DAC_XTAL_32K_W::new(self)
}
#[doc = "Bit 22 - the pull up enable of the pad"]
#[inline(always)]
pub fn x32p_rue(&mut self) -> X32P_RUE_W<22> {
X32P_RUE_W::new(self)
}
#[doc = "Bit 23 - the pull down enable of the pad"]
#[inline(always)]
pub fn x32p_rde(&mut self) -> X32P_RDE_W<23> {
X32P_RDE_W::new(self)
}
#[doc = "Bit 24 - hold the current value of the output when setting the hold to Ò1Ó"]
#[inline(always)]
pub fn x32p_hold(&mut self) -> X32P_HOLD_W<24> {
X32P_HOLD_W::new(self)
}
#[doc = "Bits 25:26 - the driver strength of the pad"]
#[inline(always)]
pub fn x32p_drv(&mut self) -> X32P_DRV_W<25> {
X32P_DRV_W::new(self)
}
#[doc = "Bit 27 - the pull up enable of the pad"]
#[inline(always)]
pub fn x32n_rue(&mut self) -> X32N_RUE_W<27> {
X32N_RUE_W::new(self)
}
#[doc = "Bit 28 - the pull down enable of the pad"]
#[inline(always)]
pub fn x32n_rde(&mut self) -> X32N_RDE_W<28> {
X32N_RDE_W::new(self)
}
#[doc = "Bit 29 - hold the current value of the output when setting the hold to Ò1Ó"]
#[inline(always)]
pub fn x32n_hold(&mut self) -> X32N_HOLD_W<29> {
X32N_HOLD_W::new(self)
}
#[doc = "Bits 30:31 - the driver strength of the pad"]
#[inline(always)]
pub fn x32n_drv(&mut self) -> X32N_DRV_W<30> {
X32N_DRV_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "\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 [xtal_32k_pad](index.html) module"]
pub struct XTAL_32K_PAD_SPEC;
impl crate::RegisterSpec for XTAL_32K_PAD_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [xtal_32k_pad::R](R) reader structure"]
impl crate::Readable for XTAL_32K_PAD_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [xtal_32k_pad::W](W) writer structure"]
impl crate::Writable for XTAL_32K_PAD_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets XTAL_32K_PAD to value 0x8410_0010"]
impl crate::Resettable for XTAL_32K_PAD_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0x8410_0010
}
}