Skip to main content

ra4m3_pac/
adc120.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.40.00, with svd2pac 0.6.1 on Sun, 15 Mar 2026 07:07:45 +0000
19
20#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"12-bit A/D Converter"]
28unsafe impl ::core::marker::Send for super::Adc120 {}
29unsafe impl ::core::marker::Sync for super::Adc120 {}
30impl super::Adc120 {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "A/D Control Register"]
38    #[inline(always)]
39    pub const fn adcsr(&self) -> &'static crate::common::Reg<self::Adcsr_SPEC, crate::common::RW> {
40        unsafe {
41            crate::common::Reg::<self::Adcsr_SPEC, crate::common::RW>::from_ptr(
42                self._svd2pac_as_ptr().add(0usize),
43            )
44        }
45    }
46
47    #[doc = "A/D Channel Select Register A0"]
48    #[inline(always)]
49    pub const fn adansa0(
50        &self,
51    ) -> &'static crate::common::Reg<self::Adansa0_SPEC, crate::common::RW> {
52        unsafe {
53            crate::common::Reg::<self::Adansa0_SPEC, crate::common::RW>::from_ptr(
54                self._svd2pac_as_ptr().add(4usize),
55            )
56        }
57    }
58
59    #[doc = "A/D Channel Select Register A1"]
60    #[inline(always)]
61    pub const fn adansa1(
62        &self,
63    ) -> &'static crate::common::Reg<self::Adansa1_SPEC, crate::common::RW> {
64        unsafe {
65            crate::common::Reg::<self::Adansa1_SPEC, crate::common::RW>::from_ptr(
66                self._svd2pac_as_ptr().add(6usize),
67            )
68        }
69    }
70
71    #[doc = "A/D-Converted Value Addition/Average Channel Select Register 0"]
72    #[inline(always)]
73    pub const fn adads0(
74        &self,
75    ) -> &'static crate::common::Reg<self::Adads0_SPEC, crate::common::RW> {
76        unsafe {
77            crate::common::Reg::<self::Adads0_SPEC, crate::common::RW>::from_ptr(
78                self._svd2pac_as_ptr().add(8usize),
79            )
80        }
81    }
82
83    #[doc = "A/D-Converted Value Addition/Average Channel Select Register 1"]
84    #[inline(always)]
85    pub const fn adads1(
86        &self,
87    ) -> &'static crate::common::Reg<self::Adads1_SPEC, crate::common::RW> {
88        unsafe {
89            crate::common::Reg::<self::Adads1_SPEC, crate::common::RW>::from_ptr(
90                self._svd2pac_as_ptr().add(10usize),
91            )
92        }
93    }
94
95    #[doc = "A/D-Converted Value Addition/Average Count Select Register"]
96    #[inline(always)]
97    pub const fn adadc(&self) -> &'static crate::common::Reg<self::Adadc_SPEC, crate::common::RW> {
98        unsafe {
99            crate::common::Reg::<self::Adadc_SPEC, crate::common::RW>::from_ptr(
100                self._svd2pac_as_ptr().add(12usize),
101            )
102        }
103    }
104
105    #[doc = "A/D Control Extended Register"]
106    #[inline(always)]
107    pub const fn adcer(&self) -> &'static crate::common::Reg<self::Adcer_SPEC, crate::common::RW> {
108        unsafe {
109            crate::common::Reg::<self::Adcer_SPEC, crate::common::RW>::from_ptr(
110                self._svd2pac_as_ptr().add(14usize),
111            )
112        }
113    }
114
115    #[doc = "A/D Conversion Start Trigger Select Register"]
116    #[inline(always)]
117    pub const fn adstrgr(
118        &self,
119    ) -> &'static crate::common::Reg<self::Adstrgr_SPEC, crate::common::RW> {
120        unsafe {
121            crate::common::Reg::<self::Adstrgr_SPEC, crate::common::RW>::from_ptr(
122                self._svd2pac_as_ptr().add(16usize),
123            )
124        }
125    }
126
127    #[doc = "A/D Conversion Extended Input Control Registers"]
128    #[inline(always)]
129    pub const fn adexicr(
130        &self,
131    ) -> &'static crate::common::Reg<self::Adexicr_SPEC, crate::common::RW> {
132        unsafe {
133            crate::common::Reg::<self::Adexicr_SPEC, crate::common::RW>::from_ptr(
134                self._svd2pac_as_ptr().add(18usize),
135            )
136        }
137    }
138
139    #[doc = "A/D Channel Select Register B0"]
140    #[inline(always)]
141    pub const fn adansb0(
142        &self,
143    ) -> &'static crate::common::Reg<self::Adansb0_SPEC, crate::common::RW> {
144        unsafe {
145            crate::common::Reg::<self::Adansb0_SPEC, crate::common::RW>::from_ptr(
146                self._svd2pac_as_ptr().add(20usize),
147            )
148        }
149    }
150
151    #[doc = "A/D Channel Select Register B1"]
152    #[inline(always)]
153    pub const fn adansb1(
154        &self,
155    ) -> &'static crate::common::Reg<self::Adansb1_SPEC, crate::common::RW> {
156        unsafe {
157            crate::common::Reg::<self::Adansb1_SPEC, crate::common::RW>::from_ptr(
158                self._svd2pac_as_ptr().add(22usize),
159            )
160        }
161    }
162
163    #[doc = "A/D Data Duplexing Register"]
164    #[inline(always)]
165    pub const fn addbldr(
166        &self,
167    ) -> &'static crate::common::Reg<self::Addbldr_SPEC, crate::common::R> {
168        unsafe {
169            crate::common::Reg::<self::Addbldr_SPEC, crate::common::R>::from_ptr(
170                self._svd2pac_as_ptr().add(24usize),
171            )
172        }
173    }
174
175    #[doc = "A/D Temperature Sensor Data Register"]
176    #[inline(always)]
177    pub const fn adtsdr(&self) -> &'static crate::common::Reg<self::Adtsdr_SPEC, crate::common::R> {
178        unsafe {
179            crate::common::Reg::<self::Adtsdr_SPEC, crate::common::R>::from_ptr(
180                self._svd2pac_as_ptr().add(26usize),
181            )
182        }
183    }
184
185    #[doc = "A/D Internal Reference Voltage Data Register"]
186    #[inline(always)]
187    pub const fn adocdr(&self) -> &'static crate::common::Reg<self::Adocdr_SPEC, crate::common::R> {
188        unsafe {
189            crate::common::Reg::<self::Adocdr_SPEC, crate::common::R>::from_ptr(
190                self._svd2pac_as_ptr().add(28usize),
191            )
192        }
193    }
194
195    #[doc = "A/D Self-Diagnosis Data Register"]
196    #[inline(always)]
197    pub const fn adrd(&self) -> &'static crate::common::Reg<self::Adrd_SPEC, crate::common::R> {
198        unsafe {
199            crate::common::Reg::<self::Adrd_SPEC, crate::common::R>::from_ptr(
200                self._svd2pac_as_ptr().add(30usize),
201            )
202        }
203    }
204
205    #[doc = "A/D Data Registers %s"]
206    #[inline(always)]
207    pub const fn addr(
208        &self,
209    ) -> &'static crate::common::ClusterRegisterArray<
210        crate::common::Reg<self::Addr_SPEC, crate::common::R>,
211        2,
212        0x2,
213    > {
214        unsafe {
215            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x38usize))
216        }
217    }
218    #[inline(always)]
219    pub const fn addr12(&self) -> &'static crate::common::Reg<self::Addr_SPEC, crate::common::R> {
220        unsafe {
221            crate::common::Reg::<self::Addr_SPEC, crate::common::R>::from_ptr(
222                self._svd2pac_as_ptr().add(0x38usize),
223            )
224        }
225    }
226    #[inline(always)]
227    pub const fn addr13(&self) -> &'static crate::common::Reg<self::Addr_SPEC, crate::common::R> {
228        unsafe {
229            crate::common::Reg::<self::Addr_SPEC, crate::common::R>::from_ptr(
230                self._svd2pac_as_ptr().add(0x3ausize),
231            )
232        }
233    }
234
235    #[doc = "A/D Disconnection Detection Control Register"]
236    #[inline(always)]
237    pub const fn addiscr(
238        &self,
239    ) -> &'static crate::common::Reg<self::Addiscr_SPEC, crate::common::RW> {
240        unsafe {
241            crate::common::Reg::<self::Addiscr_SPEC, crate::common::RW>::from_ptr(
242                self._svd2pac_as_ptr().add(122usize),
243            )
244        }
245    }
246
247    #[doc = "A/D Group Scan Priority Control Register"]
248    #[inline(always)]
249    pub const fn adgspcr(
250        &self,
251    ) -> &'static crate::common::Reg<self::Adgspcr_SPEC, crate::common::RW> {
252        unsafe {
253            crate::common::Reg::<self::Adgspcr_SPEC, crate::common::RW>::from_ptr(
254                self._svd2pac_as_ptr().add(128usize),
255            )
256        }
257    }
258
259    #[doc = "A/D Data Duplexing Register A"]
260    #[inline(always)]
261    pub const fn addbldra(
262        &self,
263    ) -> &'static crate::common::Reg<self::Addbldra_SPEC, crate::common::R> {
264        unsafe {
265            crate::common::Reg::<self::Addbldra_SPEC, crate::common::R>::from_ptr(
266                self._svd2pac_as_ptr().add(132usize),
267            )
268        }
269    }
270
271    #[doc = "A/D Data Duplexing Register B"]
272    #[inline(always)]
273    pub const fn addbldrb(
274        &self,
275    ) -> &'static crate::common::Reg<self::Addbldrb_SPEC, crate::common::R> {
276        unsafe {
277            crate::common::Reg::<self::Addbldrb_SPEC, crate::common::R>::from_ptr(
278                self._svd2pac_as_ptr().add(134usize),
279            )
280        }
281    }
282
283    #[doc = "A/D Compare Function Window A/B Status Monitor Register"]
284    #[inline(always)]
285    pub const fn adwinmon(
286        &self,
287    ) -> &'static crate::common::Reg<self::Adwinmon_SPEC, crate::common::R> {
288        unsafe {
289            crate::common::Reg::<self::Adwinmon_SPEC, crate::common::R>::from_ptr(
290                self._svd2pac_as_ptr().add(140usize),
291            )
292        }
293    }
294
295    #[doc = "A/D Compare Function Control Register"]
296    #[inline(always)]
297    pub const fn adcmpcr(
298        &self,
299    ) -> &'static crate::common::Reg<self::Adcmpcr_SPEC, crate::common::RW> {
300        unsafe {
301            crate::common::Reg::<self::Adcmpcr_SPEC, crate::common::RW>::from_ptr(
302                self._svd2pac_as_ptr().add(144usize),
303            )
304        }
305    }
306
307    #[doc = "A/D Compare Function Window A Extended Input Select Register"]
308    #[inline(always)]
309    pub const fn adcmpanser(
310        &self,
311    ) -> &'static crate::common::Reg<self::Adcmpanser_SPEC, crate::common::RW> {
312        unsafe {
313            crate::common::Reg::<self::Adcmpanser_SPEC, crate::common::RW>::from_ptr(
314                self._svd2pac_as_ptr().add(146usize),
315            )
316        }
317    }
318
319    #[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
320    #[inline(always)]
321    pub const fn adcmpler(
322        &self,
323    ) -> &'static crate::common::Reg<self::Adcmpler_SPEC, crate::common::RW> {
324        unsafe {
325            crate::common::Reg::<self::Adcmpler_SPEC, crate::common::RW>::from_ptr(
326                self._svd2pac_as_ptr().add(147usize),
327            )
328        }
329    }
330
331    #[doc = "A/D Compare Function Window A Channel Select Register 0"]
332    #[inline(always)]
333    pub const fn adcmpansr0(
334        &self,
335    ) -> &'static crate::common::Reg<self::Adcmpansr0_SPEC, crate::common::RW> {
336        unsafe {
337            crate::common::Reg::<self::Adcmpansr0_SPEC, crate::common::RW>::from_ptr(
338                self._svd2pac_as_ptr().add(148usize),
339            )
340        }
341    }
342
343    #[doc = "A/D Compare Function Window A Channel Select Register 1"]
344    #[inline(always)]
345    pub const fn adcmpansr1(
346        &self,
347    ) -> &'static crate::common::Reg<self::Adcmpansr1_SPEC, crate::common::RW> {
348        unsafe {
349            crate::common::Reg::<self::Adcmpansr1_SPEC, crate::common::RW>::from_ptr(
350                self._svd2pac_as_ptr().add(150usize),
351            )
352        }
353    }
354
355    #[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
356    #[inline(always)]
357    pub const fn adcmplr0(
358        &self,
359    ) -> &'static crate::common::Reg<self::Adcmplr0_SPEC, crate::common::RW> {
360        unsafe {
361            crate::common::Reg::<self::Adcmplr0_SPEC, crate::common::RW>::from_ptr(
362                self._svd2pac_as_ptr().add(152usize),
363            )
364        }
365    }
366
367    #[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
368    #[inline(always)]
369    pub const fn adcmplr1(
370        &self,
371    ) -> &'static crate::common::Reg<self::Adcmplr1_SPEC, crate::common::RW> {
372        unsafe {
373            crate::common::Reg::<self::Adcmplr1_SPEC, crate::common::RW>::from_ptr(
374                self._svd2pac_as_ptr().add(154usize),
375            )
376        }
377    }
378
379    #[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register"]
380    #[inline(always)]
381    pub const fn adcmpdr(
382        &self,
383    ) -> &'static crate::common::ClusterRegisterArray<
384        crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW>,
385        2,
386        0x2,
387    > {
388        unsafe {
389            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x9cusize))
390        }
391    }
392    #[inline(always)]
393    pub const fn adcmpdr0(
394        &self,
395    ) -> &'static crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW> {
396        unsafe {
397            crate::common::Reg::<self::Adcmpdr_SPEC, crate::common::RW>::from_ptr(
398                self._svd2pac_as_ptr().add(0x9cusize),
399            )
400        }
401    }
402    #[inline(always)]
403    pub const fn adcmpdr1(
404        &self,
405    ) -> &'static crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW> {
406        unsafe {
407            crate::common::Reg::<self::Adcmpdr_SPEC, crate::common::RW>::from_ptr(
408                self._svd2pac_as_ptr().add(0x9eusize),
409            )
410        }
411    }
412
413    #[doc = "A/D Compare Function Window A Channel Status Register 0"]
414    #[inline(always)]
415    pub const fn adcmpsr0(
416        &self,
417    ) -> &'static crate::common::Reg<self::Adcmpsr0_SPEC, crate::common::RW> {
418        unsafe {
419            crate::common::Reg::<self::Adcmpsr0_SPEC, crate::common::RW>::from_ptr(
420                self._svd2pac_as_ptr().add(160usize),
421            )
422        }
423    }
424
425    #[doc = "A/D Compare Function Window A Channel Status Register1"]
426    #[inline(always)]
427    pub const fn adcmpsr1(
428        &self,
429    ) -> &'static crate::common::Reg<self::Adcmpsr1_SPEC, crate::common::RW> {
430        unsafe {
431            crate::common::Reg::<self::Adcmpsr1_SPEC, crate::common::RW>::from_ptr(
432                self._svd2pac_as_ptr().add(162usize),
433            )
434        }
435    }
436
437    #[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
438    #[inline(always)]
439    pub const fn adcmpser(
440        &self,
441    ) -> &'static crate::common::Reg<self::Adcmpser_SPEC, crate::common::RW> {
442        unsafe {
443            crate::common::Reg::<self::Adcmpser_SPEC, crate::common::RW>::from_ptr(
444                self._svd2pac_as_ptr().add(164usize),
445            )
446        }
447    }
448
449    #[doc = "A/D Compare Function Window B Channel Select Register"]
450    #[inline(always)]
451    pub const fn adcmpbnsr(
452        &self,
453    ) -> &'static crate::common::Reg<self::Adcmpbnsr_SPEC, crate::common::RW> {
454        unsafe {
455            crate::common::Reg::<self::Adcmpbnsr_SPEC, crate::common::RW>::from_ptr(
456                self._svd2pac_as_ptr().add(166usize),
457            )
458        }
459    }
460
461    #[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
462    #[inline(always)]
463    pub const fn adwinllb(
464        &self,
465    ) -> &'static crate::common::Reg<self::Adwinllb_SPEC, crate::common::RW> {
466        unsafe {
467            crate::common::Reg::<self::Adwinllb_SPEC, crate::common::RW>::from_ptr(
468                self._svd2pac_as_ptr().add(168usize),
469            )
470        }
471    }
472
473    #[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
474    #[inline(always)]
475    pub const fn adwinulb(
476        &self,
477    ) -> &'static crate::common::Reg<self::Adwinulb_SPEC, crate::common::RW> {
478        unsafe {
479            crate::common::Reg::<self::Adwinulb_SPEC, crate::common::RW>::from_ptr(
480                self._svd2pac_as_ptr().add(170usize),
481            )
482        }
483    }
484
485    #[doc = "A/D Compare Function Window B Status Register"]
486    #[inline(always)]
487    pub const fn adcmpbsr(
488        &self,
489    ) -> &'static crate::common::Reg<self::Adcmpbsr_SPEC, crate::common::RW> {
490        unsafe {
491            crate::common::Reg::<self::Adcmpbsr_SPEC, crate::common::RW>::from_ptr(
492                self._svd2pac_as_ptr().add(172usize),
493            )
494        }
495    }
496
497    #[doc = "A/D Data Buffer Registers %s"]
498    #[inline(always)]
499    pub const fn adbuf(
500        &self,
501    ) -> &'static crate::common::ClusterRegisterArray<
502        crate::common::Reg<self::Adbuf_SPEC, crate::common::R>,
503        16,
504        0x2,
505    > {
506        unsafe {
507            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xb0usize))
508        }
509    }
510    #[inline(always)]
511    pub const fn adbuf0(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
512        unsafe {
513            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
514                self._svd2pac_as_ptr().add(0xb0usize),
515            )
516        }
517    }
518    #[inline(always)]
519    pub const fn adbuf1(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
520        unsafe {
521            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
522                self._svd2pac_as_ptr().add(0xb2usize),
523            )
524        }
525    }
526    #[inline(always)]
527    pub const fn adbuf2(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
528        unsafe {
529            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
530                self._svd2pac_as_ptr().add(0xb4usize),
531            )
532        }
533    }
534    #[inline(always)]
535    pub const fn adbuf3(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
536        unsafe {
537            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
538                self._svd2pac_as_ptr().add(0xb6usize),
539            )
540        }
541    }
542    #[inline(always)]
543    pub const fn adbuf4(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
544        unsafe {
545            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
546                self._svd2pac_as_ptr().add(0xb8usize),
547            )
548        }
549    }
550    #[inline(always)]
551    pub const fn adbuf5(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
552        unsafe {
553            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
554                self._svd2pac_as_ptr().add(0xbausize),
555            )
556        }
557    }
558    #[inline(always)]
559    pub const fn adbuf6(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
560        unsafe {
561            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
562                self._svd2pac_as_ptr().add(0xbcusize),
563            )
564        }
565    }
566    #[inline(always)]
567    pub const fn adbuf7(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
568        unsafe {
569            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
570                self._svd2pac_as_ptr().add(0xbeusize),
571            )
572        }
573    }
574    #[inline(always)]
575    pub const fn adbuf8(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
576        unsafe {
577            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
578                self._svd2pac_as_ptr().add(0xc0usize),
579            )
580        }
581    }
582    #[inline(always)]
583    pub const fn adbuf9(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
584        unsafe {
585            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
586                self._svd2pac_as_ptr().add(0xc2usize),
587            )
588        }
589    }
590    #[inline(always)]
591    pub const fn adbuf10(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
592        unsafe {
593            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
594                self._svd2pac_as_ptr().add(0xc4usize),
595            )
596        }
597    }
598    #[inline(always)]
599    pub const fn adbuf11(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
600        unsafe {
601            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
602                self._svd2pac_as_ptr().add(0xc6usize),
603            )
604        }
605    }
606    #[inline(always)]
607    pub const fn adbuf12(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
608        unsafe {
609            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
610                self._svd2pac_as_ptr().add(0xc8usize),
611            )
612        }
613    }
614    #[inline(always)]
615    pub const fn adbuf13(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
616        unsafe {
617            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
618                self._svd2pac_as_ptr().add(0xcausize),
619            )
620        }
621    }
622    #[inline(always)]
623    pub const fn adbuf14(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
624        unsafe {
625            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
626                self._svd2pac_as_ptr().add(0xccusize),
627            )
628        }
629    }
630    #[inline(always)]
631    pub const fn adbuf15(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
632        unsafe {
633            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
634                self._svd2pac_as_ptr().add(0xceusize),
635            )
636        }
637    }
638
639    #[doc = "A/D Data Buffer Enable Register"]
640    #[inline(always)]
641    pub const fn adbufen(
642        &self,
643    ) -> &'static crate::common::Reg<self::Adbufen_SPEC, crate::common::RW> {
644        unsafe {
645            crate::common::Reg::<self::Adbufen_SPEC, crate::common::RW>::from_ptr(
646                self._svd2pac_as_ptr().add(208usize),
647            )
648        }
649    }
650
651    #[doc = "A/D Data Buffer Pointer Register"]
652    #[inline(always)]
653    pub const fn adbufptr(
654        &self,
655    ) -> &'static crate::common::Reg<self::Adbufptr_SPEC, crate::common::RW> {
656        unsafe {
657            crate::common::Reg::<self::Adbufptr_SPEC, crate::common::RW>::from_ptr(
658                self._svd2pac_as_ptr().add(210usize),
659            )
660        }
661    }
662
663    #[doc = "A/D Sampling State Register"]
664    #[inline(always)]
665    pub const fn adsstrl(
666        &self,
667    ) -> &'static crate::common::Reg<self::Adsstrl_SPEC, crate::common::RW> {
668        unsafe {
669            crate::common::Reg::<self::Adsstrl_SPEC, crate::common::RW>::from_ptr(
670                self._svd2pac_as_ptr().add(221usize),
671            )
672        }
673    }
674
675    #[doc = "A/D Sampling State Register"]
676    #[inline(always)]
677    pub const fn adsstrt(
678        &self,
679    ) -> &'static crate::common::Reg<self::Adsstrt_SPEC, crate::common::RW> {
680        unsafe {
681            crate::common::Reg::<self::Adsstrt_SPEC, crate::common::RW>::from_ptr(
682                self._svd2pac_as_ptr().add(222usize),
683            )
684        }
685    }
686
687    #[doc = "A/D Sampling State Register"]
688    #[inline(always)]
689    pub const fn adsstro(
690        &self,
691    ) -> &'static crate::common::Reg<self::Adsstro_SPEC, crate::common::RW> {
692        unsafe {
693            crate::common::Reg::<self::Adsstro_SPEC, crate::common::RW>::from_ptr(
694                self._svd2pac_as_ptr().add(223usize),
695            )
696        }
697    }
698
699    #[doc = "A/D Sampling State Register"]
700    #[inline(always)]
701    pub const fn adsstr(
702        &self,
703    ) -> &'static crate::common::ClusterRegisterArray<
704        crate::common::Reg<self::Adsstr_SPEC, crate::common::RW>,
705        2,
706        0x1,
707    > {
708        unsafe {
709            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xecusize))
710        }
711    }
712    #[inline(always)]
713    pub const fn adsstr12(
714        &self,
715    ) -> &'static crate::common::Reg<self::Adsstr_SPEC, crate::common::RW> {
716        unsafe {
717            crate::common::Reg::<self::Adsstr_SPEC, crate::common::RW>::from_ptr(
718                self._svd2pac_as_ptr().add(0xecusize),
719            )
720        }
721    }
722    #[inline(always)]
723    pub const fn adsstr13(
724        &self,
725    ) -> &'static crate::common::Reg<self::Adsstr_SPEC, crate::common::RW> {
726        unsafe {
727            crate::common::Reg::<self::Adsstr_SPEC, crate::common::RW>::from_ptr(
728                self._svd2pac_as_ptr().add(0xedusize),
729            )
730        }
731    }
732}
733#[doc(hidden)]
734#[derive(Copy, Clone, Eq, PartialEq)]
735pub struct Adcsr_SPEC;
736impl crate::sealed::RegSpec for Adcsr_SPEC {
737    type DataType = u16;
738}
739
740#[doc = "A/D Control Register"]
741pub type Adcsr = crate::RegValueT<Adcsr_SPEC>;
742
743impl Adcsr {
744    #[doc = "Double Trigger Channel Select"]
745    #[inline(always)]
746    pub fn dblans(
747        self,
748    ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Adcsr_SPEC, crate::common::RW> {
749        crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Adcsr_SPEC,crate::common::RW>::from_register(self,0)
750    }
751
752    #[doc = "Group B Scan End Interrupt and ELC Event Enable"]
753    #[inline(always)]
754    pub fn gbadie(
755        self,
756    ) -> crate::common::RegisterField<
757        6,
758        0x1,
759        1,
760        0,
761        adcsr::Gbadie,
762        adcsr::Gbadie,
763        Adcsr_SPEC,
764        crate::common::RW,
765    > {
766        crate::common::RegisterField::<
767            6,
768            0x1,
769            1,
770            0,
771            adcsr::Gbadie,
772            adcsr::Gbadie,
773            Adcsr_SPEC,
774            crate::common::RW,
775        >::from_register(self, 0)
776    }
777
778    #[doc = "Double Trigger Mode Select"]
779    #[inline(always)]
780    pub fn dble(
781        self,
782    ) -> crate::common::RegisterField<
783        7,
784        0x1,
785        1,
786        0,
787        adcsr::Dble,
788        adcsr::Dble,
789        Adcsr_SPEC,
790        crate::common::RW,
791    > {
792        crate::common::RegisterField::<
793            7,
794            0x1,
795            1,
796            0,
797            adcsr::Dble,
798            adcsr::Dble,
799            Adcsr_SPEC,
800            crate::common::RW,
801        >::from_register(self, 0)
802    }
803
804    #[doc = "Trigger Select"]
805    #[inline(always)]
806    pub fn extrg(
807        self,
808    ) -> crate::common::RegisterField<
809        8,
810        0x1,
811        1,
812        0,
813        adcsr::Extrg,
814        adcsr::Extrg,
815        Adcsr_SPEC,
816        crate::common::RW,
817    > {
818        crate::common::RegisterField::<
819            8,
820            0x1,
821            1,
822            0,
823            adcsr::Extrg,
824            adcsr::Extrg,
825            Adcsr_SPEC,
826            crate::common::RW,
827        >::from_register(self, 0)
828    }
829
830    #[doc = "Trigger Start Enable"]
831    #[inline(always)]
832    pub fn trge(
833        self,
834    ) -> crate::common::RegisterField<
835        9,
836        0x1,
837        1,
838        0,
839        adcsr::Trge,
840        adcsr::Trge,
841        Adcsr_SPEC,
842        crate::common::RW,
843    > {
844        crate::common::RegisterField::<
845            9,
846            0x1,
847            1,
848            0,
849            adcsr::Trge,
850            adcsr::Trge,
851            Adcsr_SPEC,
852            crate::common::RW,
853        >::from_register(self, 0)
854    }
855
856    #[doc = "Scan Mode Select"]
857    #[inline(always)]
858    pub fn adcs(
859        self,
860    ) -> crate::common::RegisterField<
861        13,
862        0x3,
863        1,
864        0,
865        adcsr::Adcs,
866        adcsr::Adcs,
867        Adcsr_SPEC,
868        crate::common::RW,
869    > {
870        crate::common::RegisterField::<
871            13,
872            0x3,
873            1,
874            0,
875            adcsr::Adcs,
876            adcsr::Adcs,
877            Adcsr_SPEC,
878            crate::common::RW,
879        >::from_register(self, 0)
880    }
881
882    #[doc = "A/D Conversion Start"]
883    #[inline(always)]
884    pub fn adst(
885        self,
886    ) -> crate::common::RegisterField<
887        15,
888        0x1,
889        1,
890        0,
891        adcsr::Adst,
892        adcsr::Adst,
893        Adcsr_SPEC,
894        crate::common::RW,
895    > {
896        crate::common::RegisterField::<
897            15,
898            0x1,
899            1,
900            0,
901            adcsr::Adst,
902            adcsr::Adst,
903            Adcsr_SPEC,
904            crate::common::RW,
905        >::from_register(self, 0)
906    }
907}
908impl ::core::default::Default for Adcsr {
909    #[inline(always)]
910    fn default() -> Adcsr {
911        <crate::RegValueT<Adcsr_SPEC> as RegisterValue<_>>::new(0)
912    }
913}
914pub mod adcsr {
915
916    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
917    pub struct Gbadie_SPEC;
918    pub type Gbadie = crate::EnumBitfieldStruct<u8, Gbadie_SPEC>;
919    impl Gbadie {
920        #[doc = "Disable ADC12i_GBADI (i = 0, 1) interrupt generation on group B scan completion."]
921        pub const _0: Self = Self::new(0);
922
923        #[doc = "Enable ADC12i_GBADI (i = 0, 1) interrupt generation on group B scan completion."]
924        pub const _1: Self = Self::new(1);
925    }
926    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
927    pub struct Dble_SPEC;
928    pub type Dble = crate::EnumBitfieldStruct<u8, Dble_SPEC>;
929    impl Dble {
930        #[doc = "Deselect double-trigger mode."]
931        pub const _0: Self = Self::new(0);
932
933        #[doc = "Select double-trigger mode."]
934        pub const _1: Self = Self::new(1);
935    }
936    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
937    pub struct Extrg_SPEC;
938    pub type Extrg = crate::EnumBitfieldStruct<u8, Extrg_SPEC>;
939    impl Extrg {
940        #[doc = "Start A/D conversion by the synchronous trigger (ELC)."]
941        pub const _0: Self = Self::new(0);
942
943        #[doc = "Start A/D conversion by the asynchronous trigger (ADTRG0)."]
944        pub const _1: Self = Self::new(1);
945    }
946    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
947    pub struct Trge_SPEC;
948    pub type Trge = crate::EnumBitfieldStruct<u8, Trge_SPEC>;
949    impl Trge {
950        #[doc = "Disable A/D conversion to be started by the synchronous or asynchronous trigger"]
951        pub const _0: Self = Self::new(0);
952
953        #[doc = "Enable A/D conversion to be started by the synchronous or asynchronous trigger"]
954        pub const _1: Self = Self::new(1);
955    }
956    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
957    pub struct Adcs_SPEC;
958    pub type Adcs = crate::EnumBitfieldStruct<u8, Adcs_SPEC>;
959    impl Adcs {
960        #[doc = "Single scan mode"]
961        pub const _00: Self = Self::new(0);
962
963        #[doc = "Group scan mode"]
964        pub const _01: Self = Self::new(1);
965
966        #[doc = "Continuous scan mode"]
967        pub const _10: Self = Self::new(2);
968
969        #[doc = "Setting prohibited"]
970        pub const _11: Self = Self::new(3);
971    }
972    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
973    pub struct Adst_SPEC;
974    pub type Adst = crate::EnumBitfieldStruct<u8, Adst_SPEC>;
975    impl Adst {
976        #[doc = "Stop A/D conversion process."]
977        pub const _0: Self = Self::new(0);
978
979        #[doc = "Start A/D conversion process."]
980        pub const _1: Self = Self::new(1);
981    }
982}
983#[doc(hidden)]
984#[derive(Copy, Clone, Eq, PartialEq)]
985pub struct Adansa0_SPEC;
986impl crate::sealed::RegSpec for Adansa0_SPEC {
987    type DataType = u16;
988}
989
990#[doc = "A/D Channel Select Register A0"]
991pub type Adansa0 = crate::RegValueT<Adansa0_SPEC>;
992
993impl Adansa0 {
994    #[doc = "A/D Conversion Channels Select"]
995    #[inline(always)]
996    pub fn ansa0(
997        self,
998    ) -> crate::common::RegisterField<
999        0,
1000        0x1,
1001        1,
1002        0,
1003        adansa0::Ansa0,
1004        adansa0::Ansa0,
1005        Adansa0_SPEC,
1006        crate::common::RW,
1007    > {
1008        crate::common::RegisterField::<
1009            0,
1010            0x1,
1011            1,
1012            0,
1013            adansa0::Ansa0,
1014            adansa0::Ansa0,
1015            Adansa0_SPEC,
1016            crate::common::RW,
1017        >::from_register(self, 0)
1018    }
1019
1020    #[doc = "A/D Conversion Channels Select"]
1021    #[inline(always)]
1022    pub fn ansa1(
1023        self,
1024    ) -> crate::common::RegisterField<
1025        1,
1026        0x1,
1027        1,
1028        0,
1029        adansa0::Ansa1,
1030        adansa0::Ansa1,
1031        Adansa0_SPEC,
1032        crate::common::RW,
1033    > {
1034        crate::common::RegisterField::<
1035            1,
1036            0x1,
1037            1,
1038            0,
1039            adansa0::Ansa1,
1040            adansa0::Ansa1,
1041            Adansa0_SPEC,
1042            crate::common::RW,
1043        >::from_register(self, 0)
1044    }
1045
1046    #[doc = "A/D Conversion Channels Select"]
1047    #[inline(always)]
1048    pub fn ansa2(
1049        self,
1050    ) -> crate::common::RegisterField<
1051        2,
1052        0x1,
1053        1,
1054        0,
1055        adansa0::Ansa2,
1056        adansa0::Ansa2,
1057        Adansa0_SPEC,
1058        crate::common::RW,
1059    > {
1060        crate::common::RegisterField::<
1061            2,
1062            0x1,
1063            1,
1064            0,
1065            adansa0::Ansa2,
1066            adansa0::Ansa2,
1067            Adansa0_SPEC,
1068            crate::common::RW,
1069        >::from_register(self, 0)
1070    }
1071
1072    #[doc = "A/D Conversion Channels Select"]
1073    #[inline(always)]
1074    pub fn ansa3(
1075        self,
1076    ) -> crate::common::RegisterField<
1077        3,
1078        0x1,
1079        1,
1080        0,
1081        adansa0::Ansa3,
1082        adansa0::Ansa3,
1083        Adansa0_SPEC,
1084        crate::common::RW,
1085    > {
1086        crate::common::RegisterField::<
1087            3,
1088            0x1,
1089            1,
1090            0,
1091            adansa0::Ansa3,
1092            adansa0::Ansa3,
1093            Adansa0_SPEC,
1094            crate::common::RW,
1095        >::from_register(self, 0)
1096    }
1097
1098    #[doc = "A/D Conversion Channels Select"]
1099    #[inline(always)]
1100    pub fn ansa4(
1101        self,
1102    ) -> crate::common::RegisterField<
1103        4,
1104        0x1,
1105        1,
1106        0,
1107        adansa0::Ansa4,
1108        adansa0::Ansa4,
1109        Adansa0_SPEC,
1110        crate::common::RW,
1111    > {
1112        crate::common::RegisterField::<
1113            4,
1114            0x1,
1115            1,
1116            0,
1117            adansa0::Ansa4,
1118            adansa0::Ansa4,
1119            Adansa0_SPEC,
1120            crate::common::RW,
1121        >::from_register(self, 0)
1122    }
1123
1124    #[doc = "A/D Conversion Channels Select"]
1125    #[inline(always)]
1126    pub fn ansa5(
1127        self,
1128    ) -> crate::common::RegisterField<
1129        5,
1130        0x1,
1131        1,
1132        0,
1133        adansa0::Ansa5,
1134        adansa0::Ansa5,
1135        Adansa0_SPEC,
1136        crate::common::RW,
1137    > {
1138        crate::common::RegisterField::<
1139            5,
1140            0x1,
1141            1,
1142            0,
1143            adansa0::Ansa5,
1144            adansa0::Ansa5,
1145            Adansa0_SPEC,
1146            crate::common::RW,
1147        >::from_register(self, 0)
1148    }
1149
1150    #[doc = "A/D Conversion Channels Select"]
1151    #[inline(always)]
1152    pub fn ansa6(
1153        self,
1154    ) -> crate::common::RegisterField<
1155        6,
1156        0x1,
1157        1,
1158        0,
1159        adansa0::Ansa6,
1160        adansa0::Ansa6,
1161        Adansa0_SPEC,
1162        crate::common::RW,
1163    > {
1164        crate::common::RegisterField::<
1165            6,
1166            0x1,
1167            1,
1168            0,
1169            adansa0::Ansa6,
1170            adansa0::Ansa6,
1171            Adansa0_SPEC,
1172            crate::common::RW,
1173        >::from_register(self, 0)
1174    }
1175
1176    #[doc = "A/D Conversion Channels Select"]
1177    #[inline(always)]
1178    pub fn ansa7(
1179        self,
1180    ) -> crate::common::RegisterField<
1181        7,
1182        0x1,
1183        1,
1184        0,
1185        adansa0::Ansa7,
1186        adansa0::Ansa7,
1187        Adansa0_SPEC,
1188        crate::common::RW,
1189    > {
1190        crate::common::RegisterField::<
1191            7,
1192            0x1,
1193            1,
1194            0,
1195            adansa0::Ansa7,
1196            adansa0::Ansa7,
1197            Adansa0_SPEC,
1198            crate::common::RW,
1199        >::from_register(self, 0)
1200    }
1201
1202    #[doc = "A/D Conversion Channels Select"]
1203    #[inline(always)]
1204    pub fn ansa8(
1205        self,
1206    ) -> crate::common::RegisterField<
1207        8,
1208        0x1,
1209        1,
1210        0,
1211        adansa0::Ansa8,
1212        adansa0::Ansa8,
1213        Adansa0_SPEC,
1214        crate::common::RW,
1215    > {
1216        crate::common::RegisterField::<
1217            8,
1218            0x1,
1219            1,
1220            0,
1221            adansa0::Ansa8,
1222            adansa0::Ansa8,
1223            Adansa0_SPEC,
1224            crate::common::RW,
1225        >::from_register(self, 0)
1226    }
1227
1228    #[doc = "A/D Conversion Channels Select"]
1229    #[inline(always)]
1230    pub fn ansa9(
1231        self,
1232    ) -> crate::common::RegisterField<
1233        9,
1234        0x1,
1235        1,
1236        0,
1237        adansa0::Ansa9,
1238        adansa0::Ansa9,
1239        Adansa0_SPEC,
1240        crate::common::RW,
1241    > {
1242        crate::common::RegisterField::<
1243            9,
1244            0x1,
1245            1,
1246            0,
1247            adansa0::Ansa9,
1248            adansa0::Ansa9,
1249            Adansa0_SPEC,
1250            crate::common::RW,
1251        >::from_register(self, 0)
1252    }
1253
1254    #[doc = "A/D Conversion Channels Select"]
1255    #[inline(always)]
1256    pub fn ansa12(
1257        self,
1258    ) -> crate::common::RegisterField<
1259        12,
1260        0x1,
1261        1,
1262        0,
1263        adansa0::Ansa12,
1264        adansa0::Ansa12,
1265        Adansa0_SPEC,
1266        crate::common::RW,
1267    > {
1268        crate::common::RegisterField::<
1269            12,
1270            0x1,
1271            1,
1272            0,
1273            adansa0::Ansa12,
1274            adansa0::Ansa12,
1275            Adansa0_SPEC,
1276            crate::common::RW,
1277        >::from_register(self, 0)
1278    }
1279
1280    #[doc = "A/D Conversion Channels Select"]
1281    #[inline(always)]
1282    pub fn ansa13(
1283        self,
1284    ) -> crate::common::RegisterField<
1285        13,
1286        0x1,
1287        1,
1288        0,
1289        adansa0::Ansa13,
1290        adansa0::Ansa13,
1291        Adansa0_SPEC,
1292        crate::common::RW,
1293    > {
1294        crate::common::RegisterField::<
1295            13,
1296            0x1,
1297            1,
1298            0,
1299            adansa0::Ansa13,
1300            adansa0::Ansa13,
1301            Adansa0_SPEC,
1302            crate::common::RW,
1303        >::from_register(self, 0)
1304    }
1305}
1306impl ::core::default::Default for Adansa0 {
1307    #[inline(always)]
1308    fn default() -> Adansa0 {
1309        <crate::RegValueT<Adansa0_SPEC> as RegisterValue<_>>::new(0)
1310    }
1311}
1312pub mod adansa0 {
1313
1314    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1315    pub struct Ansa0_SPEC;
1316    pub type Ansa0 = crate::EnumBitfieldStruct<u8, Ansa0_SPEC>;
1317    impl Ansa0 {
1318        #[doc = "Do not select associated input channel."]
1319        pub const _0: Self = Self::new(0);
1320
1321        #[doc = "Select associated input channel."]
1322        pub const _1: Self = Self::new(1);
1323    }
1324    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1325    pub struct Ansa1_SPEC;
1326    pub type Ansa1 = crate::EnumBitfieldStruct<u8, Ansa1_SPEC>;
1327    impl Ansa1 {
1328        #[doc = "Do not select associated input channel."]
1329        pub const _0: Self = Self::new(0);
1330
1331        #[doc = "Select associated input channel."]
1332        pub const _1: Self = Self::new(1);
1333    }
1334    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1335    pub struct Ansa2_SPEC;
1336    pub type Ansa2 = crate::EnumBitfieldStruct<u8, Ansa2_SPEC>;
1337    impl Ansa2 {
1338        #[doc = "Do not select associated input channel."]
1339        pub const _0: Self = Self::new(0);
1340
1341        #[doc = "Select associated input channel."]
1342        pub const _1: Self = Self::new(1);
1343    }
1344    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1345    pub struct Ansa3_SPEC;
1346    pub type Ansa3 = crate::EnumBitfieldStruct<u8, Ansa3_SPEC>;
1347    impl Ansa3 {
1348        #[doc = "Do not select associated input channel."]
1349        pub const _0: Self = Self::new(0);
1350
1351        #[doc = "Select associated input channel."]
1352        pub const _1: Self = Self::new(1);
1353    }
1354    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1355    pub struct Ansa4_SPEC;
1356    pub type Ansa4 = crate::EnumBitfieldStruct<u8, Ansa4_SPEC>;
1357    impl Ansa4 {
1358        #[doc = "Do not select associated input channel."]
1359        pub const _0: Self = Self::new(0);
1360
1361        #[doc = "Select associated input channel."]
1362        pub const _1: Self = Self::new(1);
1363    }
1364    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1365    pub struct Ansa5_SPEC;
1366    pub type Ansa5 = crate::EnumBitfieldStruct<u8, Ansa5_SPEC>;
1367    impl Ansa5 {
1368        #[doc = "Do not select associated input channel."]
1369        pub const _0: Self = Self::new(0);
1370
1371        #[doc = "Select associated input channel."]
1372        pub const _1: Self = Self::new(1);
1373    }
1374    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1375    pub struct Ansa6_SPEC;
1376    pub type Ansa6 = crate::EnumBitfieldStruct<u8, Ansa6_SPEC>;
1377    impl Ansa6 {
1378        #[doc = "Do not select associated input channel."]
1379        pub const _0: Self = Self::new(0);
1380
1381        #[doc = "Select associated input channel."]
1382        pub const _1: Self = Self::new(1);
1383    }
1384    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1385    pub struct Ansa7_SPEC;
1386    pub type Ansa7 = crate::EnumBitfieldStruct<u8, Ansa7_SPEC>;
1387    impl Ansa7 {
1388        #[doc = "Do not select associated input channel."]
1389        pub const _0: Self = Self::new(0);
1390
1391        #[doc = "Select associated input channel."]
1392        pub const _1: Self = Self::new(1);
1393    }
1394    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1395    pub struct Ansa8_SPEC;
1396    pub type Ansa8 = crate::EnumBitfieldStruct<u8, Ansa8_SPEC>;
1397    impl Ansa8 {
1398        #[doc = "Do not select associated input channel."]
1399        pub const _0: Self = Self::new(0);
1400
1401        #[doc = "Select associated input channel."]
1402        pub const _1: Self = Self::new(1);
1403    }
1404    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1405    pub struct Ansa9_SPEC;
1406    pub type Ansa9 = crate::EnumBitfieldStruct<u8, Ansa9_SPEC>;
1407    impl Ansa9 {
1408        #[doc = "Do not select associated input channel."]
1409        pub const _0: Self = Self::new(0);
1410
1411        #[doc = "Select associated input channel."]
1412        pub const _1: Self = Self::new(1);
1413    }
1414    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1415    pub struct Ansa12_SPEC;
1416    pub type Ansa12 = crate::EnumBitfieldStruct<u8, Ansa12_SPEC>;
1417    impl Ansa12 {
1418        #[doc = "Do not select associated input channel."]
1419        pub const _0: Self = Self::new(0);
1420
1421        #[doc = "Select associated input channel."]
1422        pub const _1: Self = Self::new(1);
1423    }
1424    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1425    pub struct Ansa13_SPEC;
1426    pub type Ansa13 = crate::EnumBitfieldStruct<u8, Ansa13_SPEC>;
1427    impl Ansa13 {
1428        #[doc = "Do not select associated input channel."]
1429        pub const _0: Self = Self::new(0);
1430
1431        #[doc = "Select associated input channel."]
1432        pub const _1: Self = Self::new(1);
1433    }
1434}
1435#[doc(hidden)]
1436#[derive(Copy, Clone, Eq, PartialEq)]
1437pub struct Adansa1_SPEC;
1438impl crate::sealed::RegSpec for Adansa1_SPEC {
1439    type DataType = u16;
1440}
1441
1442#[doc = "A/D Channel Select Register A1"]
1443pub type Adansa1 = crate::RegValueT<Adansa1_SPEC>;
1444
1445impl Adansa1 {
1446    #[doc = "A/D Conversion Channels Select"]
1447    #[inline(always)]
1448    pub fn ansa16(
1449        self,
1450    ) -> crate::common::RegisterField<
1451        0,
1452        0x1,
1453        1,
1454        0,
1455        adansa1::Ansa16,
1456        adansa1::Ansa16,
1457        Adansa1_SPEC,
1458        crate::common::RW,
1459    > {
1460        crate::common::RegisterField::<
1461            0,
1462            0x1,
1463            1,
1464            0,
1465            adansa1::Ansa16,
1466            adansa1::Ansa16,
1467            Adansa1_SPEC,
1468            crate::common::RW,
1469        >::from_register(self, 0)
1470    }
1471
1472    #[doc = "A/D Conversion Channels Select"]
1473    #[inline(always)]
1474    pub fn ansa17(
1475        self,
1476    ) -> crate::common::RegisterField<
1477        1,
1478        0x1,
1479        1,
1480        0,
1481        adansa1::Ansa17,
1482        adansa1::Ansa17,
1483        Adansa1_SPEC,
1484        crate::common::RW,
1485    > {
1486        crate::common::RegisterField::<
1487            1,
1488            0x1,
1489            1,
1490            0,
1491            adansa1::Ansa17,
1492            adansa1::Ansa17,
1493            Adansa1_SPEC,
1494            crate::common::RW,
1495        >::from_register(self, 0)
1496    }
1497
1498    #[doc = "A/D Conversion Channels Select"]
1499    #[inline(always)]
1500    pub fn ansa18(
1501        self,
1502    ) -> crate::common::RegisterField<
1503        2,
1504        0x1,
1505        1,
1506        0,
1507        adansa1::Ansa18,
1508        adansa1::Ansa18,
1509        Adansa1_SPEC,
1510        crate::common::RW,
1511    > {
1512        crate::common::RegisterField::<
1513            2,
1514            0x1,
1515            1,
1516            0,
1517            adansa1::Ansa18,
1518            adansa1::Ansa18,
1519            Adansa1_SPEC,
1520            crate::common::RW,
1521        >::from_register(self, 0)
1522    }
1523
1524    #[doc = "A/D Conversion Channels Select"]
1525    #[inline(always)]
1526    pub fn ansa19(
1527        self,
1528    ) -> crate::common::RegisterField<
1529        3,
1530        0x1,
1531        1,
1532        0,
1533        adansa1::Ansa19,
1534        adansa1::Ansa19,
1535        Adansa1_SPEC,
1536        crate::common::RW,
1537    > {
1538        crate::common::RegisterField::<
1539            3,
1540            0x1,
1541            1,
1542            0,
1543            adansa1::Ansa19,
1544            adansa1::Ansa19,
1545            Adansa1_SPEC,
1546            crate::common::RW,
1547        >::from_register(self, 0)
1548    }
1549
1550    #[doc = "A/D Conversion Channels Select"]
1551    #[inline(always)]
1552    pub fn ansa20(
1553        self,
1554    ) -> crate::common::RegisterField<
1555        4,
1556        0x1,
1557        1,
1558        0,
1559        adansa1::Ansa20,
1560        adansa1::Ansa20,
1561        Adansa1_SPEC,
1562        crate::common::RW,
1563    > {
1564        crate::common::RegisterField::<
1565            4,
1566            0x1,
1567            1,
1568            0,
1569            adansa1::Ansa20,
1570            adansa1::Ansa20,
1571            Adansa1_SPEC,
1572            crate::common::RW,
1573        >::from_register(self, 0)
1574    }
1575
1576    #[doc = "A/D Conversion Channels Select"]
1577    #[inline(always)]
1578    pub fn ansa21(
1579        self,
1580    ) -> crate::common::RegisterField<
1581        5,
1582        0x1,
1583        1,
1584        0,
1585        adansa1::Ansa21,
1586        adansa1::Ansa21,
1587        Adansa1_SPEC,
1588        crate::common::RW,
1589    > {
1590        crate::common::RegisterField::<
1591            5,
1592            0x1,
1593            1,
1594            0,
1595            adansa1::Ansa21,
1596            adansa1::Ansa21,
1597            Adansa1_SPEC,
1598            crate::common::RW,
1599        >::from_register(self, 0)
1600    }
1601
1602    #[doc = "A/D Conversion Channels Select"]
1603    #[inline(always)]
1604    pub fn ansa22(
1605        self,
1606    ) -> crate::common::RegisterField<
1607        6,
1608        0x1,
1609        1,
1610        0,
1611        adansa1::Ansa22,
1612        adansa1::Ansa22,
1613        Adansa1_SPEC,
1614        crate::common::RW,
1615    > {
1616        crate::common::RegisterField::<
1617            6,
1618            0x1,
1619            1,
1620            0,
1621            adansa1::Ansa22,
1622            adansa1::Ansa22,
1623            Adansa1_SPEC,
1624            crate::common::RW,
1625        >::from_register(self, 0)
1626    }
1627}
1628impl ::core::default::Default for Adansa1 {
1629    #[inline(always)]
1630    fn default() -> Adansa1 {
1631        <crate::RegValueT<Adansa1_SPEC> as RegisterValue<_>>::new(0)
1632    }
1633}
1634pub mod adansa1 {
1635
1636    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1637    pub struct Ansa16_SPEC;
1638    pub type Ansa16 = crate::EnumBitfieldStruct<u8, Ansa16_SPEC>;
1639    impl Ansa16 {
1640        #[doc = "Do not select associated input channel."]
1641        pub const _0: Self = Self::new(0);
1642
1643        #[doc = "Select associated input channel."]
1644        pub const _1: Self = Self::new(1);
1645    }
1646    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1647    pub struct Ansa17_SPEC;
1648    pub type Ansa17 = crate::EnumBitfieldStruct<u8, Ansa17_SPEC>;
1649    impl Ansa17 {
1650        #[doc = "Do not select associated input channel."]
1651        pub const _0: Self = Self::new(0);
1652
1653        #[doc = "Select associated input channel."]
1654        pub const _1: Self = Self::new(1);
1655    }
1656    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1657    pub struct Ansa18_SPEC;
1658    pub type Ansa18 = crate::EnumBitfieldStruct<u8, Ansa18_SPEC>;
1659    impl Ansa18 {
1660        #[doc = "Do not select associated input channel."]
1661        pub const _0: Self = Self::new(0);
1662
1663        #[doc = "Select associated input channel."]
1664        pub const _1: Self = Self::new(1);
1665    }
1666    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1667    pub struct Ansa19_SPEC;
1668    pub type Ansa19 = crate::EnumBitfieldStruct<u8, Ansa19_SPEC>;
1669    impl Ansa19 {
1670        #[doc = "Do not select associated input channel."]
1671        pub const _0: Self = Self::new(0);
1672
1673        #[doc = "Select associated input channel."]
1674        pub const _1: Self = Self::new(1);
1675    }
1676    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1677    pub struct Ansa20_SPEC;
1678    pub type Ansa20 = crate::EnumBitfieldStruct<u8, Ansa20_SPEC>;
1679    impl Ansa20 {
1680        #[doc = "Do not select associated input channel."]
1681        pub const _0: Self = Self::new(0);
1682
1683        #[doc = "Select associated input channel."]
1684        pub const _1: Self = Self::new(1);
1685    }
1686    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1687    pub struct Ansa21_SPEC;
1688    pub type Ansa21 = crate::EnumBitfieldStruct<u8, Ansa21_SPEC>;
1689    impl Ansa21 {
1690        #[doc = "Do not select associated input channel."]
1691        pub const _0: Self = Self::new(0);
1692
1693        #[doc = "Select associated input channel."]
1694        pub const _1: Self = Self::new(1);
1695    }
1696    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1697    pub struct Ansa22_SPEC;
1698    pub type Ansa22 = crate::EnumBitfieldStruct<u8, Ansa22_SPEC>;
1699    impl Ansa22 {
1700        #[doc = "Do not select associated input channel."]
1701        pub const _0: Self = Self::new(0);
1702
1703        #[doc = "Select associated input channel."]
1704        pub const _1: Self = Self::new(1);
1705    }
1706}
1707#[doc(hidden)]
1708#[derive(Copy, Clone, Eq, PartialEq)]
1709pub struct Adads0_SPEC;
1710impl crate::sealed::RegSpec for Adads0_SPEC {
1711    type DataType = u16;
1712}
1713
1714#[doc = "A/D-Converted Value Addition/Average Channel Select Register 0"]
1715pub type Adads0 = crate::RegValueT<Adads0_SPEC>;
1716
1717impl Adads0 {
1718    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1719    #[inline(always)]
1720    pub fn ads0(
1721        self,
1722    ) -> crate::common::RegisterField<
1723        0,
1724        0x1,
1725        1,
1726        0,
1727        adads0::Ads0,
1728        adads0::Ads0,
1729        Adads0_SPEC,
1730        crate::common::RW,
1731    > {
1732        crate::common::RegisterField::<
1733            0,
1734            0x1,
1735            1,
1736            0,
1737            adads0::Ads0,
1738            adads0::Ads0,
1739            Adads0_SPEC,
1740            crate::common::RW,
1741        >::from_register(self, 0)
1742    }
1743
1744    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1745    #[inline(always)]
1746    pub fn ads1(
1747        self,
1748    ) -> crate::common::RegisterField<
1749        1,
1750        0x1,
1751        1,
1752        0,
1753        adads0::Ads1,
1754        adads0::Ads1,
1755        Adads0_SPEC,
1756        crate::common::RW,
1757    > {
1758        crate::common::RegisterField::<
1759            1,
1760            0x1,
1761            1,
1762            0,
1763            adads0::Ads1,
1764            adads0::Ads1,
1765            Adads0_SPEC,
1766            crate::common::RW,
1767        >::from_register(self, 0)
1768    }
1769
1770    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1771    #[inline(always)]
1772    pub fn ads2(
1773        self,
1774    ) -> crate::common::RegisterField<
1775        2,
1776        0x1,
1777        1,
1778        0,
1779        adads0::Ads2,
1780        adads0::Ads2,
1781        Adads0_SPEC,
1782        crate::common::RW,
1783    > {
1784        crate::common::RegisterField::<
1785            2,
1786            0x1,
1787            1,
1788            0,
1789            adads0::Ads2,
1790            adads0::Ads2,
1791            Adads0_SPEC,
1792            crate::common::RW,
1793        >::from_register(self, 0)
1794    }
1795
1796    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1797    #[inline(always)]
1798    pub fn ads3(
1799        self,
1800    ) -> crate::common::RegisterField<
1801        3,
1802        0x1,
1803        1,
1804        0,
1805        adads0::Ads3,
1806        adads0::Ads3,
1807        Adads0_SPEC,
1808        crate::common::RW,
1809    > {
1810        crate::common::RegisterField::<
1811            3,
1812            0x1,
1813            1,
1814            0,
1815            adads0::Ads3,
1816            adads0::Ads3,
1817            Adads0_SPEC,
1818            crate::common::RW,
1819        >::from_register(self, 0)
1820    }
1821
1822    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1823    #[inline(always)]
1824    pub fn ads4(
1825        self,
1826    ) -> crate::common::RegisterField<
1827        4,
1828        0x1,
1829        1,
1830        0,
1831        adads0::Ads4,
1832        adads0::Ads4,
1833        Adads0_SPEC,
1834        crate::common::RW,
1835    > {
1836        crate::common::RegisterField::<
1837            4,
1838            0x1,
1839            1,
1840            0,
1841            adads0::Ads4,
1842            adads0::Ads4,
1843            Adads0_SPEC,
1844            crate::common::RW,
1845        >::from_register(self, 0)
1846    }
1847
1848    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1849    #[inline(always)]
1850    pub fn ads5(
1851        self,
1852    ) -> crate::common::RegisterField<
1853        5,
1854        0x1,
1855        1,
1856        0,
1857        adads0::Ads5,
1858        adads0::Ads5,
1859        Adads0_SPEC,
1860        crate::common::RW,
1861    > {
1862        crate::common::RegisterField::<
1863            5,
1864            0x1,
1865            1,
1866            0,
1867            adads0::Ads5,
1868            adads0::Ads5,
1869            Adads0_SPEC,
1870            crate::common::RW,
1871        >::from_register(self, 0)
1872    }
1873
1874    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1875    #[inline(always)]
1876    pub fn ads6(
1877        self,
1878    ) -> crate::common::RegisterField<
1879        6,
1880        0x1,
1881        1,
1882        0,
1883        adads0::Ads6,
1884        adads0::Ads6,
1885        Adads0_SPEC,
1886        crate::common::RW,
1887    > {
1888        crate::common::RegisterField::<
1889            6,
1890            0x1,
1891            1,
1892            0,
1893            adads0::Ads6,
1894            adads0::Ads6,
1895            Adads0_SPEC,
1896            crate::common::RW,
1897        >::from_register(self, 0)
1898    }
1899
1900    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1901    #[inline(always)]
1902    pub fn ads7(
1903        self,
1904    ) -> crate::common::RegisterField<
1905        7,
1906        0x1,
1907        1,
1908        0,
1909        adads0::Ads7,
1910        adads0::Ads7,
1911        Adads0_SPEC,
1912        crate::common::RW,
1913    > {
1914        crate::common::RegisterField::<
1915            7,
1916            0x1,
1917            1,
1918            0,
1919            adads0::Ads7,
1920            adads0::Ads7,
1921            Adads0_SPEC,
1922            crate::common::RW,
1923        >::from_register(self, 0)
1924    }
1925
1926    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1927    #[inline(always)]
1928    pub fn ads8(
1929        self,
1930    ) -> crate::common::RegisterField<
1931        8,
1932        0x1,
1933        1,
1934        0,
1935        adads0::Ads8,
1936        adads0::Ads8,
1937        Adads0_SPEC,
1938        crate::common::RW,
1939    > {
1940        crate::common::RegisterField::<
1941            8,
1942            0x1,
1943            1,
1944            0,
1945            adads0::Ads8,
1946            adads0::Ads8,
1947            Adads0_SPEC,
1948            crate::common::RW,
1949        >::from_register(self, 0)
1950    }
1951
1952    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1953    #[inline(always)]
1954    pub fn ads9(
1955        self,
1956    ) -> crate::common::RegisterField<
1957        9,
1958        0x1,
1959        1,
1960        0,
1961        adads0::Ads9,
1962        adads0::Ads9,
1963        Adads0_SPEC,
1964        crate::common::RW,
1965    > {
1966        crate::common::RegisterField::<
1967            9,
1968            0x1,
1969            1,
1970            0,
1971            adads0::Ads9,
1972            adads0::Ads9,
1973            Adads0_SPEC,
1974            crate::common::RW,
1975        >::from_register(self, 0)
1976    }
1977
1978    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
1979    #[inline(always)]
1980    pub fn ads12(
1981        self,
1982    ) -> crate::common::RegisterField<
1983        12,
1984        0x1,
1985        1,
1986        0,
1987        adads0::Ads12,
1988        adads0::Ads12,
1989        Adads0_SPEC,
1990        crate::common::RW,
1991    > {
1992        crate::common::RegisterField::<
1993            12,
1994            0x1,
1995            1,
1996            0,
1997            adads0::Ads12,
1998            adads0::Ads12,
1999            Adads0_SPEC,
2000            crate::common::RW,
2001        >::from_register(self, 0)
2002    }
2003
2004    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2005    #[inline(always)]
2006    pub fn ads13(
2007        self,
2008    ) -> crate::common::RegisterField<
2009        13,
2010        0x1,
2011        1,
2012        0,
2013        adads0::Ads13,
2014        adads0::Ads13,
2015        Adads0_SPEC,
2016        crate::common::RW,
2017    > {
2018        crate::common::RegisterField::<
2019            13,
2020            0x1,
2021            1,
2022            0,
2023            adads0::Ads13,
2024            adads0::Ads13,
2025            Adads0_SPEC,
2026            crate::common::RW,
2027        >::from_register(self, 0)
2028    }
2029}
2030impl ::core::default::Default for Adads0 {
2031    #[inline(always)]
2032    fn default() -> Adads0 {
2033        <crate::RegValueT<Adads0_SPEC> as RegisterValue<_>>::new(0)
2034    }
2035}
2036pub mod adads0 {
2037
2038    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2039    pub struct Ads0_SPEC;
2040    pub type Ads0 = crate::EnumBitfieldStruct<u8, Ads0_SPEC>;
2041    impl Ads0 {
2042        #[doc = "Do not select associated input channel."]
2043        pub const _0: Self = Self::new(0);
2044
2045        #[doc = "Select associated input channel."]
2046        pub const _1: Self = Self::new(1);
2047    }
2048    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2049    pub struct Ads1_SPEC;
2050    pub type Ads1 = crate::EnumBitfieldStruct<u8, Ads1_SPEC>;
2051    impl Ads1 {
2052        #[doc = "Do not select associated input channel."]
2053        pub const _0: Self = Self::new(0);
2054
2055        #[doc = "Select associated input channel."]
2056        pub const _1: Self = Self::new(1);
2057    }
2058    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2059    pub struct Ads2_SPEC;
2060    pub type Ads2 = crate::EnumBitfieldStruct<u8, Ads2_SPEC>;
2061    impl Ads2 {
2062        #[doc = "Do not select associated input channel."]
2063        pub const _0: Self = Self::new(0);
2064
2065        #[doc = "Select associated input channel."]
2066        pub const _1: Self = Self::new(1);
2067    }
2068    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2069    pub struct Ads3_SPEC;
2070    pub type Ads3 = crate::EnumBitfieldStruct<u8, Ads3_SPEC>;
2071    impl Ads3 {
2072        #[doc = "Do not select associated input channel."]
2073        pub const _0: Self = Self::new(0);
2074
2075        #[doc = "Select associated input channel."]
2076        pub const _1: Self = Self::new(1);
2077    }
2078    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2079    pub struct Ads4_SPEC;
2080    pub type Ads4 = crate::EnumBitfieldStruct<u8, Ads4_SPEC>;
2081    impl Ads4 {
2082        #[doc = "Do not select associated input channel."]
2083        pub const _0: Self = Self::new(0);
2084
2085        #[doc = "Select associated input channel."]
2086        pub const _1: Self = Self::new(1);
2087    }
2088    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2089    pub struct Ads5_SPEC;
2090    pub type Ads5 = crate::EnumBitfieldStruct<u8, Ads5_SPEC>;
2091    impl Ads5 {
2092        #[doc = "Do not select associated input channel."]
2093        pub const _0: Self = Self::new(0);
2094
2095        #[doc = "Select associated input channel."]
2096        pub const _1: Self = Self::new(1);
2097    }
2098    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2099    pub struct Ads6_SPEC;
2100    pub type Ads6 = crate::EnumBitfieldStruct<u8, Ads6_SPEC>;
2101    impl Ads6 {
2102        #[doc = "Do not select associated input channel."]
2103        pub const _0: Self = Self::new(0);
2104
2105        #[doc = "Select associated input channel."]
2106        pub const _1: Self = Self::new(1);
2107    }
2108    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2109    pub struct Ads7_SPEC;
2110    pub type Ads7 = crate::EnumBitfieldStruct<u8, Ads7_SPEC>;
2111    impl Ads7 {
2112        #[doc = "Do not select associated input channel."]
2113        pub const _0: Self = Self::new(0);
2114
2115        #[doc = "Select associated input channel."]
2116        pub const _1: Self = Self::new(1);
2117    }
2118    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2119    pub struct Ads8_SPEC;
2120    pub type Ads8 = crate::EnumBitfieldStruct<u8, Ads8_SPEC>;
2121    impl Ads8 {
2122        #[doc = "Do not select associated input channel."]
2123        pub const _0: Self = Self::new(0);
2124
2125        #[doc = "Select associated input channel."]
2126        pub const _1: Self = Self::new(1);
2127    }
2128    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2129    pub struct Ads9_SPEC;
2130    pub type Ads9 = crate::EnumBitfieldStruct<u8, Ads9_SPEC>;
2131    impl Ads9 {
2132        #[doc = "Do not select associated input channel."]
2133        pub const _0: Self = Self::new(0);
2134
2135        #[doc = "Select associated input channel."]
2136        pub const _1: Self = Self::new(1);
2137    }
2138    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2139    pub struct Ads12_SPEC;
2140    pub type Ads12 = crate::EnumBitfieldStruct<u8, Ads12_SPEC>;
2141    impl Ads12 {
2142        #[doc = "Do not select associated input channel."]
2143        pub const _0: Self = Self::new(0);
2144
2145        #[doc = "Select associated input channel."]
2146        pub const _1: Self = Self::new(1);
2147    }
2148    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2149    pub struct Ads13_SPEC;
2150    pub type Ads13 = crate::EnumBitfieldStruct<u8, Ads13_SPEC>;
2151    impl Ads13 {
2152        #[doc = "Do not select associated input channel."]
2153        pub const _0: Self = Self::new(0);
2154
2155        #[doc = "Select associated input channel."]
2156        pub const _1: Self = Self::new(1);
2157    }
2158}
2159#[doc(hidden)]
2160#[derive(Copy, Clone, Eq, PartialEq)]
2161pub struct Adads1_SPEC;
2162impl crate::sealed::RegSpec for Adads1_SPEC {
2163    type DataType = u16;
2164}
2165
2166#[doc = "A/D-Converted Value Addition/Average Channel Select Register 1"]
2167pub type Adads1 = crate::RegValueT<Adads1_SPEC>;
2168
2169impl Adads1 {
2170    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2171    #[inline(always)]
2172    pub fn ads16(
2173        self,
2174    ) -> crate::common::RegisterField<
2175        0,
2176        0x1,
2177        1,
2178        0,
2179        adads1::Ads16,
2180        adads1::Ads16,
2181        Adads1_SPEC,
2182        crate::common::RW,
2183    > {
2184        crate::common::RegisterField::<
2185            0,
2186            0x1,
2187            1,
2188            0,
2189            adads1::Ads16,
2190            adads1::Ads16,
2191            Adads1_SPEC,
2192            crate::common::RW,
2193        >::from_register(self, 0)
2194    }
2195
2196    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2197    #[inline(always)]
2198    pub fn ads17(
2199        self,
2200    ) -> crate::common::RegisterField<
2201        1,
2202        0x1,
2203        1,
2204        0,
2205        adads1::Ads17,
2206        adads1::Ads17,
2207        Adads1_SPEC,
2208        crate::common::RW,
2209    > {
2210        crate::common::RegisterField::<
2211            1,
2212            0x1,
2213            1,
2214            0,
2215            adads1::Ads17,
2216            adads1::Ads17,
2217            Adads1_SPEC,
2218            crate::common::RW,
2219        >::from_register(self, 0)
2220    }
2221
2222    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2223    #[inline(always)]
2224    pub fn ads18(
2225        self,
2226    ) -> crate::common::RegisterField<
2227        2,
2228        0x1,
2229        1,
2230        0,
2231        adads1::Ads18,
2232        adads1::Ads18,
2233        Adads1_SPEC,
2234        crate::common::RW,
2235    > {
2236        crate::common::RegisterField::<
2237            2,
2238            0x1,
2239            1,
2240            0,
2241            adads1::Ads18,
2242            adads1::Ads18,
2243            Adads1_SPEC,
2244            crate::common::RW,
2245        >::from_register(self, 0)
2246    }
2247
2248    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2249    #[inline(always)]
2250    pub fn ads19(
2251        self,
2252    ) -> crate::common::RegisterField<
2253        3,
2254        0x1,
2255        1,
2256        0,
2257        adads1::Ads19,
2258        adads1::Ads19,
2259        Adads1_SPEC,
2260        crate::common::RW,
2261    > {
2262        crate::common::RegisterField::<
2263            3,
2264            0x1,
2265            1,
2266            0,
2267            adads1::Ads19,
2268            adads1::Ads19,
2269            Adads1_SPEC,
2270            crate::common::RW,
2271        >::from_register(self, 0)
2272    }
2273
2274    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2275    #[inline(always)]
2276    pub fn ads20(
2277        self,
2278    ) -> crate::common::RegisterField<
2279        4,
2280        0x1,
2281        1,
2282        0,
2283        adads1::Ads20,
2284        adads1::Ads20,
2285        Adads1_SPEC,
2286        crate::common::RW,
2287    > {
2288        crate::common::RegisterField::<
2289            4,
2290            0x1,
2291            1,
2292            0,
2293            adads1::Ads20,
2294            adads1::Ads20,
2295            Adads1_SPEC,
2296            crate::common::RW,
2297        >::from_register(self, 0)
2298    }
2299
2300    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2301    #[inline(always)]
2302    pub fn ads21(
2303        self,
2304    ) -> crate::common::RegisterField<
2305        5,
2306        0x1,
2307        1,
2308        0,
2309        adads1::Ads21,
2310        adads1::Ads21,
2311        Adads1_SPEC,
2312        crate::common::RW,
2313    > {
2314        crate::common::RegisterField::<
2315            5,
2316            0x1,
2317            1,
2318            0,
2319            adads1::Ads21,
2320            adads1::Ads21,
2321            Adads1_SPEC,
2322            crate::common::RW,
2323        >::from_register(self, 0)
2324    }
2325
2326    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2327    #[inline(always)]
2328    pub fn ads22(
2329        self,
2330    ) -> crate::common::RegisterField<
2331        6,
2332        0x1,
2333        1,
2334        0,
2335        adads1::Ads22,
2336        adads1::Ads22,
2337        Adads1_SPEC,
2338        crate::common::RW,
2339    > {
2340        crate::common::RegisterField::<
2341            6,
2342            0x1,
2343            1,
2344            0,
2345            adads1::Ads22,
2346            adads1::Ads22,
2347            Adads1_SPEC,
2348            crate::common::RW,
2349        >::from_register(self, 0)
2350    }
2351}
2352impl ::core::default::Default for Adads1 {
2353    #[inline(always)]
2354    fn default() -> Adads1 {
2355        <crate::RegValueT<Adads1_SPEC> as RegisterValue<_>>::new(0)
2356    }
2357}
2358pub mod adads1 {
2359
2360    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2361    pub struct Ads16_SPEC;
2362    pub type Ads16 = crate::EnumBitfieldStruct<u8, Ads16_SPEC>;
2363    impl Ads16 {
2364        #[doc = "Do not select associated input channel."]
2365        pub const _0: Self = Self::new(0);
2366
2367        #[doc = "Select associated input channel."]
2368        pub const _1: Self = Self::new(1);
2369    }
2370    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2371    pub struct Ads17_SPEC;
2372    pub type Ads17 = crate::EnumBitfieldStruct<u8, Ads17_SPEC>;
2373    impl Ads17 {
2374        #[doc = "Do not select associated input channel."]
2375        pub const _0: Self = Self::new(0);
2376
2377        #[doc = "Select associated input channel."]
2378        pub const _1: Self = Self::new(1);
2379    }
2380    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2381    pub struct Ads18_SPEC;
2382    pub type Ads18 = crate::EnumBitfieldStruct<u8, Ads18_SPEC>;
2383    impl Ads18 {
2384        #[doc = "Do not select associated input channel."]
2385        pub const _0: Self = Self::new(0);
2386
2387        #[doc = "Select associated input channel."]
2388        pub const _1: Self = Self::new(1);
2389    }
2390    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2391    pub struct Ads19_SPEC;
2392    pub type Ads19 = crate::EnumBitfieldStruct<u8, Ads19_SPEC>;
2393    impl Ads19 {
2394        #[doc = "Do not select associated input channel."]
2395        pub const _0: Self = Self::new(0);
2396
2397        #[doc = "Select associated input channel."]
2398        pub const _1: Self = Self::new(1);
2399    }
2400    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2401    pub struct Ads20_SPEC;
2402    pub type Ads20 = crate::EnumBitfieldStruct<u8, Ads20_SPEC>;
2403    impl Ads20 {
2404        #[doc = "Do not select associated input channel."]
2405        pub const _0: Self = Self::new(0);
2406
2407        #[doc = "Select associated input channel."]
2408        pub const _1: Self = Self::new(1);
2409    }
2410    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2411    pub struct Ads21_SPEC;
2412    pub type Ads21 = crate::EnumBitfieldStruct<u8, Ads21_SPEC>;
2413    impl Ads21 {
2414        #[doc = "Do not select associated input channel."]
2415        pub const _0: Self = Self::new(0);
2416
2417        #[doc = "Select associated input channel."]
2418        pub const _1: Self = Self::new(1);
2419    }
2420    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2421    pub struct Ads22_SPEC;
2422    pub type Ads22 = crate::EnumBitfieldStruct<u8, Ads22_SPEC>;
2423    impl Ads22 {
2424        #[doc = "Do not select associated input channel."]
2425        pub const _0: Self = Self::new(0);
2426
2427        #[doc = "Select associated input channel."]
2428        pub const _1: Self = Self::new(1);
2429    }
2430}
2431#[doc(hidden)]
2432#[derive(Copy, Clone, Eq, PartialEq)]
2433pub struct Adadc_SPEC;
2434impl crate::sealed::RegSpec for Adadc_SPEC {
2435    type DataType = u8;
2436}
2437
2438#[doc = "A/D-Converted Value Addition/Average Count Select Register"]
2439pub type Adadc = crate::RegValueT<Adadc_SPEC>;
2440
2441impl Adadc {
2442    #[doc = "Addition/Average Count Select"]
2443    #[inline(always)]
2444    pub fn adc(
2445        self,
2446    ) -> crate::common::RegisterField<
2447        0,
2448        0x7,
2449        1,
2450        0,
2451        adadc::Adc,
2452        adadc::Adc,
2453        Adadc_SPEC,
2454        crate::common::RW,
2455    > {
2456        crate::common::RegisterField::<
2457            0,
2458            0x7,
2459            1,
2460            0,
2461            adadc::Adc,
2462            adadc::Adc,
2463            Adadc_SPEC,
2464            crate::common::RW,
2465        >::from_register(self, 0)
2466    }
2467
2468    #[doc = "Average Mode Select"]
2469    #[inline(always)]
2470    pub fn avee(
2471        self,
2472    ) -> crate::common::RegisterField<
2473        7,
2474        0x1,
2475        1,
2476        0,
2477        adadc::Avee,
2478        adadc::Avee,
2479        Adadc_SPEC,
2480        crate::common::RW,
2481    > {
2482        crate::common::RegisterField::<
2483            7,
2484            0x1,
2485            1,
2486            0,
2487            adadc::Avee,
2488            adadc::Avee,
2489            Adadc_SPEC,
2490            crate::common::RW,
2491        >::from_register(self, 0)
2492    }
2493}
2494impl ::core::default::Default for Adadc {
2495    #[inline(always)]
2496    fn default() -> Adadc {
2497        <crate::RegValueT<Adadc_SPEC> as RegisterValue<_>>::new(0)
2498    }
2499}
2500pub mod adadc {
2501
2502    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2503    pub struct Adc_SPEC;
2504    pub type Adc = crate::EnumBitfieldStruct<u8, Adc_SPEC>;
2505    impl Adc {
2506        #[doc = "1-time conversion (no addition, same as normal conversion)"]
2507        pub const _000: Self = Self::new(0);
2508
2509        #[doc = "2-time conversion (1 addition)"]
2510        pub const _001: Self = Self::new(1);
2511
2512        #[doc = "3-time conversion (2 additions)"]
2513        pub const _010: Self = Self::new(2);
2514
2515        #[doc = "4-time conversion (3 additions)"]
2516        pub const _011: Self = Self::new(3);
2517
2518        #[doc = "16-time conversion (15 additions)"]
2519        pub const _101: Self = Self::new(5);
2520    }
2521    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2522    pub struct Avee_SPEC;
2523    pub type Avee = crate::EnumBitfieldStruct<u8, Avee_SPEC>;
2524    impl Avee {
2525        #[doc = "Enable addition mode"]
2526        pub const _0: Self = Self::new(0);
2527
2528        #[doc = "Enable average mode"]
2529        pub const _1: Self = Self::new(1);
2530    }
2531}
2532#[doc(hidden)]
2533#[derive(Copy, Clone, Eq, PartialEq)]
2534pub struct Adcer_SPEC;
2535impl crate::sealed::RegSpec for Adcer_SPEC {
2536    type DataType = u16;
2537}
2538
2539#[doc = "A/D Control Extended Register"]
2540pub type Adcer = crate::RegValueT<Adcer_SPEC>;
2541
2542impl Adcer {
2543    #[inline(always)]
2544    pub fn adprc(
2545        self,
2546    ) -> crate::common::RegisterField<
2547        1,
2548        0x3,
2549        1,
2550        0,
2551        adcer::Adprc,
2552        adcer::Adprc,
2553        Adcer_SPEC,
2554        crate::common::RW,
2555    > {
2556        crate::common::RegisterField::<
2557            1,
2558            0x3,
2559            1,
2560            0,
2561            adcer::Adprc,
2562            adcer::Adprc,
2563            Adcer_SPEC,
2564            crate::common::RW,
2565        >::from_register(self, 0)
2566    }
2567
2568    #[doc = "A/D Data Register Automatic Clearing Enable"]
2569    #[inline(always)]
2570    pub fn ace(
2571        self,
2572    ) -> crate::common::RegisterField<
2573        5,
2574        0x1,
2575        1,
2576        0,
2577        adcer::Ace,
2578        adcer::Ace,
2579        Adcer_SPEC,
2580        crate::common::RW,
2581    > {
2582        crate::common::RegisterField::<
2583            5,
2584            0x1,
2585            1,
2586            0,
2587            adcer::Ace,
2588            adcer::Ace,
2589            Adcer_SPEC,
2590            crate::common::RW,
2591        >::from_register(self, 0)
2592    }
2593
2594    #[doc = "Self-Diagnosis Conversion Voltage Select"]
2595    #[inline(always)]
2596    pub fn diagval(
2597        self,
2598    ) -> crate::common::RegisterField<
2599        8,
2600        0x3,
2601        1,
2602        0,
2603        adcer::Diagval,
2604        adcer::Diagval,
2605        Adcer_SPEC,
2606        crate::common::RW,
2607    > {
2608        crate::common::RegisterField::<
2609            8,
2610            0x3,
2611            1,
2612            0,
2613            adcer::Diagval,
2614            adcer::Diagval,
2615            Adcer_SPEC,
2616            crate::common::RW,
2617        >::from_register(self, 0)
2618    }
2619
2620    #[doc = "Self-Diagnosis Mode Select"]
2621    #[inline(always)]
2622    pub fn diagld(
2623        self,
2624    ) -> crate::common::RegisterField<
2625        10,
2626        0x1,
2627        1,
2628        0,
2629        adcer::Diagld,
2630        adcer::Diagld,
2631        Adcer_SPEC,
2632        crate::common::RW,
2633    > {
2634        crate::common::RegisterField::<
2635            10,
2636            0x1,
2637            1,
2638            0,
2639            adcer::Diagld,
2640            adcer::Diagld,
2641            Adcer_SPEC,
2642            crate::common::RW,
2643        >::from_register(self, 0)
2644    }
2645
2646    #[doc = "Self-Diagnosis Enable"]
2647    #[inline(always)]
2648    pub fn diagm(
2649        self,
2650    ) -> crate::common::RegisterField<
2651        11,
2652        0x1,
2653        1,
2654        0,
2655        adcer::Diagm,
2656        adcer::Diagm,
2657        Adcer_SPEC,
2658        crate::common::RW,
2659    > {
2660        crate::common::RegisterField::<
2661            11,
2662            0x1,
2663            1,
2664            0,
2665            adcer::Diagm,
2666            adcer::Diagm,
2667            Adcer_SPEC,
2668            crate::common::RW,
2669        >::from_register(self, 0)
2670    }
2671
2672    #[doc = "A/D Data Register Format Select"]
2673    #[inline(always)]
2674    pub fn adrfmt(
2675        self,
2676    ) -> crate::common::RegisterField<
2677        15,
2678        0x1,
2679        1,
2680        0,
2681        adcer::Adrfmt,
2682        adcer::Adrfmt,
2683        Adcer_SPEC,
2684        crate::common::RW,
2685    > {
2686        crate::common::RegisterField::<
2687            15,
2688            0x1,
2689            1,
2690            0,
2691            adcer::Adrfmt,
2692            adcer::Adrfmt,
2693            Adcer_SPEC,
2694            crate::common::RW,
2695        >::from_register(self, 0)
2696    }
2697}
2698impl ::core::default::Default for Adcer {
2699    #[inline(always)]
2700    fn default() -> Adcer {
2701        <crate::RegValueT<Adcer_SPEC> as RegisterValue<_>>::new(0)
2702    }
2703}
2704pub mod adcer {
2705
2706    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2707    pub struct Adprc_SPEC;
2708    pub type Adprc = crate::EnumBitfieldStruct<u8, Adprc_SPEC>;
2709    impl Adprc {
2710        #[doc = "12-bit accuracy"]
2711        pub const _00: Self = Self::new(0);
2712
2713        #[doc = "10-bit accuracy"]
2714        pub const _01: Self = Self::new(1);
2715
2716        #[doc = "8-bit accuracy"]
2717        pub const _10: Self = Self::new(2);
2718
2719        #[doc = "Setting prohibited"]
2720        pub const _11: Self = Self::new(3);
2721    }
2722    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2723    pub struct Ace_SPEC;
2724    pub type Ace = crate::EnumBitfieldStruct<u8, Ace_SPEC>;
2725    impl Ace {
2726        #[doc = "Disable automatic clearing"]
2727        pub const _0: Self = Self::new(0);
2728
2729        #[doc = "Enable automatic clearing"]
2730        pub const _1: Self = Self::new(1);
2731    }
2732    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2733    pub struct Diagval_SPEC;
2734    pub type Diagval = crate::EnumBitfieldStruct<u8, Diagval_SPEC>;
2735    impl Diagval {
2736        #[doc = "Setting prohibited when self-diagnosis is enabled"]
2737        pub const _00: Self = Self::new(0);
2738
2739        #[doc = "0 volts"]
2740        pub const _01: Self = Self::new(1);
2741
2742        #[doc = "Reference voltage × 1/2"]
2743        pub const _10: Self = Self::new(2);
2744
2745        #[doc = "Reference voltage"]
2746        pub const _11: Self = Self::new(3);
2747    }
2748    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2749    pub struct Diagld_SPEC;
2750    pub type Diagld = crate::EnumBitfieldStruct<u8, Diagld_SPEC>;
2751    impl Diagld {
2752        #[doc = "Select rotation mode for self-diagnosis voltage"]
2753        pub const _0: Self = Self::new(0);
2754
2755        #[doc = "Select mixed mode for self-diagnosis voltage"]
2756        pub const _1: Self = Self::new(1);
2757    }
2758    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2759    pub struct Diagm_SPEC;
2760    pub type Diagm = crate::EnumBitfieldStruct<u8, Diagm_SPEC>;
2761    impl Diagm {
2762        #[doc = "Disable ADC12 self-diagnosis"]
2763        pub const _0: Self = Self::new(0);
2764
2765        #[doc = "Enable ADC12 self-diagnosis"]
2766        pub const _1: Self = Self::new(1);
2767    }
2768    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2769    pub struct Adrfmt_SPEC;
2770    pub type Adrfmt = crate::EnumBitfieldStruct<u8, Adrfmt_SPEC>;
2771    impl Adrfmt {
2772        #[doc = "Select right-justified for the A/D data register format"]
2773        pub const _0: Self = Self::new(0);
2774
2775        #[doc = "Select left-justified for the A/D data register format"]
2776        pub const _1: Self = Self::new(1);
2777    }
2778}
2779#[doc(hidden)]
2780#[derive(Copy, Clone, Eq, PartialEq)]
2781pub struct Adstrgr_SPEC;
2782impl crate::sealed::RegSpec for Adstrgr_SPEC {
2783    type DataType = u16;
2784}
2785
2786#[doc = "A/D Conversion Start Trigger Select Register"]
2787pub type Adstrgr = crate::RegValueT<Adstrgr_SPEC>;
2788
2789impl Adstrgr {
2790    #[doc = "A/D Conversion Start Trigger Select for Group B"]
2791    #[inline(always)]
2792    pub fn trsb(
2793        self,
2794    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
2795        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
2796    }
2797
2798    #[doc = "A/D Conversion Start Trigger Select"]
2799    #[inline(always)]
2800    pub fn trsa(
2801        self,
2802    ) -> crate::common::RegisterField<8, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
2803        crate::common::RegisterField::<8,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
2804    }
2805}
2806impl ::core::default::Default for Adstrgr {
2807    #[inline(always)]
2808    fn default() -> Adstrgr {
2809        <crate::RegValueT<Adstrgr_SPEC> as RegisterValue<_>>::new(0)
2810    }
2811}
2812
2813#[doc(hidden)]
2814#[derive(Copy, Clone, Eq, PartialEq)]
2815pub struct Adexicr_SPEC;
2816impl crate::sealed::RegSpec for Adexicr_SPEC {
2817    type DataType = u16;
2818}
2819
2820#[doc = "A/D Conversion Extended Input Control Registers"]
2821pub type Adexicr = crate::RegValueT<Adexicr_SPEC>;
2822
2823impl Adexicr {
2824    #[doc = "Temperature Sensor Output A/D-Converted Value Addition/Average Mode Select"]
2825    #[inline(always)]
2826    pub fn tssad(
2827        self,
2828    ) -> crate::common::RegisterField<
2829        0,
2830        0x1,
2831        1,
2832        0,
2833        adexicr::Tssad,
2834        adexicr::Tssad,
2835        Adexicr_SPEC,
2836        crate::common::RW,
2837    > {
2838        crate::common::RegisterField::<
2839            0,
2840            0x1,
2841            1,
2842            0,
2843            adexicr::Tssad,
2844            adexicr::Tssad,
2845            Adexicr_SPEC,
2846            crate::common::RW,
2847        >::from_register(self, 0)
2848    }
2849
2850    #[doc = "Internal Reference Voltage A/D-Converted Value Addition/Average Mode Select"]
2851    #[inline(always)]
2852    pub fn ocsad(
2853        self,
2854    ) -> crate::common::RegisterField<
2855        1,
2856        0x1,
2857        1,
2858        0,
2859        adexicr::Ocsad,
2860        adexicr::Ocsad,
2861        Adexicr_SPEC,
2862        crate::common::RW,
2863    > {
2864        crate::common::RegisterField::<
2865            1,
2866            0x1,
2867            1,
2868            0,
2869            adexicr::Ocsad,
2870            adexicr::Ocsad,
2871            Adexicr_SPEC,
2872            crate::common::RW,
2873        >::from_register(self, 0)
2874    }
2875
2876    #[doc = "Temperature Sensor Output A/D Conversion Select"]
2877    #[inline(always)]
2878    pub fn tssa(
2879        self,
2880    ) -> crate::common::RegisterField<
2881        8,
2882        0x1,
2883        1,
2884        0,
2885        adexicr::Tssa,
2886        adexicr::Tssa,
2887        Adexicr_SPEC,
2888        crate::common::RW,
2889    > {
2890        crate::common::RegisterField::<
2891            8,
2892            0x1,
2893            1,
2894            0,
2895            adexicr::Tssa,
2896            adexicr::Tssa,
2897            Adexicr_SPEC,
2898            crate::common::RW,
2899        >::from_register(self, 0)
2900    }
2901
2902    #[doc = "Internal Reference Voltage A/D Conversion Select"]
2903    #[inline(always)]
2904    pub fn ocsa(
2905        self,
2906    ) -> crate::common::RegisterField<
2907        9,
2908        0x1,
2909        1,
2910        0,
2911        adexicr::Ocsa,
2912        adexicr::Ocsa,
2913        Adexicr_SPEC,
2914        crate::common::RW,
2915    > {
2916        crate::common::RegisterField::<
2917            9,
2918            0x1,
2919            1,
2920            0,
2921            adexicr::Ocsa,
2922            adexicr::Ocsa,
2923            Adexicr_SPEC,
2924            crate::common::RW,
2925        >::from_register(self, 0)
2926    }
2927
2928    #[doc = "Temperature Sensor Output A/D Conversion Select for Group B"]
2929    #[inline(always)]
2930    pub fn tssb(
2931        self,
2932    ) -> crate::common::RegisterField<
2933        10,
2934        0x1,
2935        1,
2936        0,
2937        adexicr::Tssb,
2938        adexicr::Tssb,
2939        Adexicr_SPEC,
2940        crate::common::RW,
2941    > {
2942        crate::common::RegisterField::<
2943            10,
2944            0x1,
2945            1,
2946            0,
2947            adexicr::Tssb,
2948            adexicr::Tssb,
2949            Adexicr_SPEC,
2950            crate::common::RW,
2951        >::from_register(self, 0)
2952    }
2953
2954    #[doc = "Internal Reference Voltage A/D Conversion Select for Group B"]
2955    #[inline(always)]
2956    pub fn ocsb(
2957        self,
2958    ) -> crate::common::RegisterField<
2959        11,
2960        0x1,
2961        1,
2962        0,
2963        adexicr::Ocsb,
2964        adexicr::Ocsb,
2965        Adexicr_SPEC,
2966        crate::common::RW,
2967    > {
2968        crate::common::RegisterField::<
2969            11,
2970            0x1,
2971            1,
2972            0,
2973            adexicr::Ocsb,
2974            adexicr::Ocsb,
2975            Adexicr_SPEC,
2976            crate::common::RW,
2977        >::from_register(self, 0)
2978    }
2979}
2980impl ::core::default::Default for Adexicr {
2981    #[inline(always)]
2982    fn default() -> Adexicr {
2983        <crate::RegValueT<Adexicr_SPEC> as RegisterValue<_>>::new(0)
2984    }
2985}
2986pub mod adexicr {
2987
2988    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2989    pub struct Tssad_SPEC;
2990    pub type Tssad = crate::EnumBitfieldStruct<u8, Tssad_SPEC>;
2991    impl Tssad {
2992        #[doc = "Do not select addition/average mode for temperature sensor output."]
2993        pub const _0: Self = Self::new(0);
2994
2995        #[doc = "Select addition/average mode for temperature sensor output."]
2996        pub const _1: Self = Self::new(1);
2997    }
2998    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2999    pub struct Ocsad_SPEC;
3000    pub type Ocsad = crate::EnumBitfieldStruct<u8, Ocsad_SPEC>;
3001    impl Ocsad {
3002        #[doc = "Do not select addition/average mode for internal reference voltage."]
3003        pub const _0: Self = Self::new(0);
3004
3005        #[doc = "Select addition/average mode for internal reference voltage."]
3006        pub const _1: Self = Self::new(1);
3007    }
3008    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3009    pub struct Tssa_SPEC;
3010    pub type Tssa = crate::EnumBitfieldStruct<u8, Tssa_SPEC>;
3011    impl Tssa {
3012        #[doc = "Disable A/D conversion of temperature sensor output"]
3013        pub const _0: Self = Self::new(0);
3014
3015        #[doc = "Enable A/D conversion of temperature sensor output"]
3016        pub const _1: Self = Self::new(1);
3017    }
3018    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3019    pub struct Ocsa_SPEC;
3020    pub type Ocsa = crate::EnumBitfieldStruct<u8, Ocsa_SPEC>;
3021    impl Ocsa {
3022        #[doc = "Disable A/D conversion of internal reference voltage"]
3023        pub const _0: Self = Self::new(0);
3024
3025        #[doc = "Enable A/D conversion of internal reference voltage"]
3026        pub const _1: Self = Self::new(1);
3027    }
3028    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3029    pub struct Tssb_SPEC;
3030    pub type Tssb = crate::EnumBitfieldStruct<u8, Tssb_SPEC>;
3031    impl Tssb {
3032        #[doc = "Disable A/D conversion of temperature sensor output"]
3033        pub const _0: Self = Self::new(0);
3034
3035        #[doc = "Enable A/D conversion of temperature sensor output"]
3036        pub const _1: Self = Self::new(1);
3037    }
3038    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3039    pub struct Ocsb_SPEC;
3040    pub type Ocsb = crate::EnumBitfieldStruct<u8, Ocsb_SPEC>;
3041    impl Ocsb {
3042        #[doc = "Disable A/D conversion of internal reference voltage"]
3043        pub const _0: Self = Self::new(0);
3044
3045        #[doc = "Enable A/D conversion of internal reference voltage"]
3046        pub const _1: Self = Self::new(1);
3047    }
3048}
3049#[doc(hidden)]
3050#[derive(Copy, Clone, Eq, PartialEq)]
3051pub struct Adansb0_SPEC;
3052impl crate::sealed::RegSpec for Adansb0_SPEC {
3053    type DataType = u16;
3054}
3055
3056#[doc = "A/D Channel Select Register B0"]
3057pub type Adansb0 = crate::RegValueT<Adansb0_SPEC>;
3058
3059impl Adansb0 {
3060    #[doc = "A/D Conversion Channels Select"]
3061    #[inline(always)]
3062    pub fn ansb0(
3063        self,
3064    ) -> crate::common::RegisterField<
3065        0,
3066        0x1,
3067        1,
3068        0,
3069        adansb0::Ansb0,
3070        adansb0::Ansb0,
3071        Adansb0_SPEC,
3072        crate::common::RW,
3073    > {
3074        crate::common::RegisterField::<
3075            0,
3076            0x1,
3077            1,
3078            0,
3079            adansb0::Ansb0,
3080            adansb0::Ansb0,
3081            Adansb0_SPEC,
3082            crate::common::RW,
3083        >::from_register(self, 0)
3084    }
3085
3086    #[doc = "A/D Conversion Channels Select"]
3087    #[inline(always)]
3088    pub fn ansb1(
3089        self,
3090    ) -> crate::common::RegisterField<
3091        1,
3092        0x1,
3093        1,
3094        0,
3095        adansb0::Ansb1,
3096        adansb0::Ansb1,
3097        Adansb0_SPEC,
3098        crate::common::RW,
3099    > {
3100        crate::common::RegisterField::<
3101            1,
3102            0x1,
3103            1,
3104            0,
3105            adansb0::Ansb1,
3106            adansb0::Ansb1,
3107            Adansb0_SPEC,
3108            crate::common::RW,
3109        >::from_register(self, 0)
3110    }
3111
3112    #[doc = "A/D Conversion Channels Select"]
3113    #[inline(always)]
3114    pub fn ansb2(
3115        self,
3116    ) -> crate::common::RegisterField<
3117        2,
3118        0x1,
3119        1,
3120        0,
3121        adansb0::Ansb2,
3122        adansb0::Ansb2,
3123        Adansb0_SPEC,
3124        crate::common::RW,
3125    > {
3126        crate::common::RegisterField::<
3127            2,
3128            0x1,
3129            1,
3130            0,
3131            adansb0::Ansb2,
3132            adansb0::Ansb2,
3133            Adansb0_SPEC,
3134            crate::common::RW,
3135        >::from_register(self, 0)
3136    }
3137
3138    #[doc = "A/D Conversion Channels Select"]
3139    #[inline(always)]
3140    pub fn ansb3(
3141        self,
3142    ) -> crate::common::RegisterField<
3143        3,
3144        0x1,
3145        1,
3146        0,
3147        adansb0::Ansb3,
3148        adansb0::Ansb3,
3149        Adansb0_SPEC,
3150        crate::common::RW,
3151    > {
3152        crate::common::RegisterField::<
3153            3,
3154            0x1,
3155            1,
3156            0,
3157            adansb0::Ansb3,
3158            adansb0::Ansb3,
3159            Adansb0_SPEC,
3160            crate::common::RW,
3161        >::from_register(self, 0)
3162    }
3163
3164    #[doc = "A/D Conversion Channels Select"]
3165    #[inline(always)]
3166    pub fn ansb4(
3167        self,
3168    ) -> crate::common::RegisterField<
3169        4,
3170        0x1,
3171        1,
3172        0,
3173        adansb0::Ansb4,
3174        adansb0::Ansb4,
3175        Adansb0_SPEC,
3176        crate::common::RW,
3177    > {
3178        crate::common::RegisterField::<
3179            4,
3180            0x1,
3181            1,
3182            0,
3183            adansb0::Ansb4,
3184            adansb0::Ansb4,
3185            Adansb0_SPEC,
3186            crate::common::RW,
3187        >::from_register(self, 0)
3188    }
3189
3190    #[doc = "A/D Conversion Channels Select"]
3191    #[inline(always)]
3192    pub fn ansb5(
3193        self,
3194    ) -> crate::common::RegisterField<
3195        5,
3196        0x1,
3197        1,
3198        0,
3199        adansb0::Ansb5,
3200        adansb0::Ansb5,
3201        Adansb0_SPEC,
3202        crate::common::RW,
3203    > {
3204        crate::common::RegisterField::<
3205            5,
3206            0x1,
3207            1,
3208            0,
3209            adansb0::Ansb5,
3210            adansb0::Ansb5,
3211            Adansb0_SPEC,
3212            crate::common::RW,
3213        >::from_register(self, 0)
3214    }
3215
3216    #[doc = "A/D Conversion Channels Select"]
3217    #[inline(always)]
3218    pub fn ansb6(
3219        self,
3220    ) -> crate::common::RegisterField<
3221        6,
3222        0x1,
3223        1,
3224        0,
3225        adansb0::Ansb6,
3226        adansb0::Ansb6,
3227        Adansb0_SPEC,
3228        crate::common::RW,
3229    > {
3230        crate::common::RegisterField::<
3231            6,
3232            0x1,
3233            1,
3234            0,
3235            adansb0::Ansb6,
3236            adansb0::Ansb6,
3237            Adansb0_SPEC,
3238            crate::common::RW,
3239        >::from_register(self, 0)
3240    }
3241
3242    #[doc = "A/D Conversion Channels Select"]
3243    #[inline(always)]
3244    pub fn ansb7(
3245        self,
3246    ) -> crate::common::RegisterField<
3247        7,
3248        0x1,
3249        1,
3250        0,
3251        adansb0::Ansb7,
3252        adansb0::Ansb7,
3253        Adansb0_SPEC,
3254        crate::common::RW,
3255    > {
3256        crate::common::RegisterField::<
3257            7,
3258            0x1,
3259            1,
3260            0,
3261            adansb0::Ansb7,
3262            adansb0::Ansb7,
3263            Adansb0_SPEC,
3264            crate::common::RW,
3265        >::from_register(self, 0)
3266    }
3267
3268    #[doc = "A/D Conversion Channels Select"]
3269    #[inline(always)]
3270    pub fn ansb8(
3271        self,
3272    ) -> crate::common::RegisterField<
3273        8,
3274        0x1,
3275        1,
3276        0,
3277        adansb0::Ansb8,
3278        adansb0::Ansb8,
3279        Adansb0_SPEC,
3280        crate::common::RW,
3281    > {
3282        crate::common::RegisterField::<
3283            8,
3284            0x1,
3285            1,
3286            0,
3287            adansb0::Ansb8,
3288            adansb0::Ansb8,
3289            Adansb0_SPEC,
3290            crate::common::RW,
3291        >::from_register(self, 0)
3292    }
3293
3294    #[doc = "A/D Conversion Channels Select"]
3295    #[inline(always)]
3296    pub fn ansb9(
3297        self,
3298    ) -> crate::common::RegisterField<
3299        9,
3300        0x1,
3301        1,
3302        0,
3303        adansb0::Ansb9,
3304        adansb0::Ansb9,
3305        Adansb0_SPEC,
3306        crate::common::RW,
3307    > {
3308        crate::common::RegisterField::<
3309            9,
3310            0x1,
3311            1,
3312            0,
3313            adansb0::Ansb9,
3314            adansb0::Ansb9,
3315            Adansb0_SPEC,
3316            crate::common::RW,
3317        >::from_register(self, 0)
3318    }
3319
3320    #[doc = "A/D Conversion Channels Select"]
3321    #[inline(always)]
3322    pub fn ansb12(
3323        self,
3324    ) -> crate::common::RegisterField<
3325        12,
3326        0x1,
3327        1,
3328        0,
3329        adansb0::Ansb12,
3330        adansb0::Ansb12,
3331        Adansb0_SPEC,
3332        crate::common::RW,
3333    > {
3334        crate::common::RegisterField::<
3335            12,
3336            0x1,
3337            1,
3338            0,
3339            adansb0::Ansb12,
3340            adansb0::Ansb12,
3341            Adansb0_SPEC,
3342            crate::common::RW,
3343        >::from_register(self, 0)
3344    }
3345
3346    #[doc = "A/D Conversion Channels Select"]
3347    #[inline(always)]
3348    pub fn ansb13(
3349        self,
3350    ) -> crate::common::RegisterField<
3351        13,
3352        0x1,
3353        1,
3354        0,
3355        adansb0::Ansb13,
3356        adansb0::Ansb13,
3357        Adansb0_SPEC,
3358        crate::common::RW,
3359    > {
3360        crate::common::RegisterField::<
3361            13,
3362            0x1,
3363            1,
3364            0,
3365            adansb0::Ansb13,
3366            adansb0::Ansb13,
3367            Adansb0_SPEC,
3368            crate::common::RW,
3369        >::from_register(self, 0)
3370    }
3371}
3372impl ::core::default::Default for Adansb0 {
3373    #[inline(always)]
3374    fn default() -> Adansb0 {
3375        <crate::RegValueT<Adansb0_SPEC> as RegisterValue<_>>::new(0)
3376    }
3377}
3378pub mod adansb0 {
3379
3380    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3381    pub struct Ansb0_SPEC;
3382    pub type Ansb0 = crate::EnumBitfieldStruct<u8, Ansb0_SPEC>;
3383    impl Ansb0 {
3384        #[doc = "Do not select associated input channel."]
3385        pub const _0: Self = Self::new(0);
3386
3387        #[doc = "Select associated input channel."]
3388        pub const _1: Self = Self::new(1);
3389    }
3390    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3391    pub struct Ansb1_SPEC;
3392    pub type Ansb1 = crate::EnumBitfieldStruct<u8, Ansb1_SPEC>;
3393    impl Ansb1 {
3394        #[doc = "Do not select associated input channel."]
3395        pub const _0: Self = Self::new(0);
3396
3397        #[doc = "Select associated input channel."]
3398        pub const _1: Self = Self::new(1);
3399    }
3400    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3401    pub struct Ansb2_SPEC;
3402    pub type Ansb2 = crate::EnumBitfieldStruct<u8, Ansb2_SPEC>;
3403    impl Ansb2 {
3404        #[doc = "Do not select associated input channel."]
3405        pub const _0: Self = Self::new(0);
3406
3407        #[doc = "Select associated input channel."]
3408        pub const _1: Self = Self::new(1);
3409    }
3410    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3411    pub struct Ansb3_SPEC;
3412    pub type Ansb3 = crate::EnumBitfieldStruct<u8, Ansb3_SPEC>;
3413    impl Ansb3 {
3414        #[doc = "Do not select associated input channel."]
3415        pub const _0: Self = Self::new(0);
3416
3417        #[doc = "Select associated input channel."]
3418        pub const _1: Self = Self::new(1);
3419    }
3420    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3421    pub struct Ansb4_SPEC;
3422    pub type Ansb4 = crate::EnumBitfieldStruct<u8, Ansb4_SPEC>;
3423    impl Ansb4 {
3424        #[doc = "Do not select associated input channel."]
3425        pub const _0: Self = Self::new(0);
3426
3427        #[doc = "Select associated input channel."]
3428        pub const _1: Self = Self::new(1);
3429    }
3430    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3431    pub struct Ansb5_SPEC;
3432    pub type Ansb5 = crate::EnumBitfieldStruct<u8, Ansb5_SPEC>;
3433    impl Ansb5 {
3434        #[doc = "Do not select associated input channel."]
3435        pub const _0: Self = Self::new(0);
3436
3437        #[doc = "Select associated input channel."]
3438        pub const _1: Self = Self::new(1);
3439    }
3440    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3441    pub struct Ansb6_SPEC;
3442    pub type Ansb6 = crate::EnumBitfieldStruct<u8, Ansb6_SPEC>;
3443    impl Ansb6 {
3444        #[doc = "Do not select associated input channel."]
3445        pub const _0: Self = Self::new(0);
3446
3447        #[doc = "Select associated input channel."]
3448        pub const _1: Self = Self::new(1);
3449    }
3450    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3451    pub struct Ansb7_SPEC;
3452    pub type Ansb7 = crate::EnumBitfieldStruct<u8, Ansb7_SPEC>;
3453    impl Ansb7 {
3454        #[doc = "Do not select associated input channel."]
3455        pub const _0: Self = Self::new(0);
3456
3457        #[doc = "Select associated input channel."]
3458        pub const _1: Self = Self::new(1);
3459    }
3460    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3461    pub struct Ansb8_SPEC;
3462    pub type Ansb8 = crate::EnumBitfieldStruct<u8, Ansb8_SPEC>;
3463    impl Ansb8 {
3464        #[doc = "Do not select associated input channel."]
3465        pub const _0: Self = Self::new(0);
3466
3467        #[doc = "Select associated input channel."]
3468        pub const _1: Self = Self::new(1);
3469    }
3470    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3471    pub struct Ansb9_SPEC;
3472    pub type Ansb9 = crate::EnumBitfieldStruct<u8, Ansb9_SPEC>;
3473    impl Ansb9 {
3474        #[doc = "Do not select associated input channel."]
3475        pub const _0: Self = Self::new(0);
3476
3477        #[doc = "Select associated input channel."]
3478        pub const _1: Self = Self::new(1);
3479    }
3480    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3481    pub struct Ansb12_SPEC;
3482    pub type Ansb12 = crate::EnumBitfieldStruct<u8, Ansb12_SPEC>;
3483    impl Ansb12 {
3484        #[doc = "Do not select associated input channel."]
3485        pub const _0: Self = Self::new(0);
3486
3487        #[doc = "Select associated input channel."]
3488        pub const _1: Self = Self::new(1);
3489    }
3490    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3491    pub struct Ansb13_SPEC;
3492    pub type Ansb13 = crate::EnumBitfieldStruct<u8, Ansb13_SPEC>;
3493    impl Ansb13 {
3494        #[doc = "Do not select associated input channel."]
3495        pub const _0: Self = Self::new(0);
3496
3497        #[doc = "Select associated input channel."]
3498        pub const _1: Self = Self::new(1);
3499    }
3500}
3501#[doc(hidden)]
3502#[derive(Copy, Clone, Eq, PartialEq)]
3503pub struct Adansb1_SPEC;
3504impl crate::sealed::RegSpec for Adansb1_SPEC {
3505    type DataType = u16;
3506}
3507
3508#[doc = "A/D Channel Select Register B1"]
3509pub type Adansb1 = crate::RegValueT<Adansb1_SPEC>;
3510
3511impl Adansb1 {
3512    #[doc = "A/D Conversion Channels Select"]
3513    #[inline(always)]
3514    pub fn ansb16(
3515        self,
3516    ) -> crate::common::RegisterField<
3517        0,
3518        0x1,
3519        1,
3520        0,
3521        adansb1::Ansb16,
3522        adansb1::Ansb16,
3523        Adansb1_SPEC,
3524        crate::common::RW,
3525    > {
3526        crate::common::RegisterField::<
3527            0,
3528            0x1,
3529            1,
3530            0,
3531            adansb1::Ansb16,
3532            adansb1::Ansb16,
3533            Adansb1_SPEC,
3534            crate::common::RW,
3535        >::from_register(self, 0)
3536    }
3537
3538    #[doc = "A/D Conversion Channels Select"]
3539    #[inline(always)]
3540    pub fn ansb17(
3541        self,
3542    ) -> crate::common::RegisterField<
3543        1,
3544        0x1,
3545        1,
3546        0,
3547        adansb1::Ansb17,
3548        adansb1::Ansb17,
3549        Adansb1_SPEC,
3550        crate::common::RW,
3551    > {
3552        crate::common::RegisterField::<
3553            1,
3554            0x1,
3555            1,
3556            0,
3557            adansb1::Ansb17,
3558            adansb1::Ansb17,
3559            Adansb1_SPEC,
3560            crate::common::RW,
3561        >::from_register(self, 0)
3562    }
3563
3564    #[doc = "A/D Conversion Channels Select"]
3565    #[inline(always)]
3566    pub fn ansb18(
3567        self,
3568    ) -> crate::common::RegisterField<
3569        2,
3570        0x1,
3571        1,
3572        0,
3573        adansb1::Ansb18,
3574        adansb1::Ansb18,
3575        Adansb1_SPEC,
3576        crate::common::RW,
3577    > {
3578        crate::common::RegisterField::<
3579            2,
3580            0x1,
3581            1,
3582            0,
3583            adansb1::Ansb18,
3584            adansb1::Ansb18,
3585            Adansb1_SPEC,
3586            crate::common::RW,
3587        >::from_register(self, 0)
3588    }
3589
3590    #[doc = "A/D Conversion Channels Select"]
3591    #[inline(always)]
3592    pub fn ansb19(
3593        self,
3594    ) -> crate::common::RegisterField<
3595        3,
3596        0x1,
3597        1,
3598        0,
3599        adansb1::Ansb19,
3600        adansb1::Ansb19,
3601        Adansb1_SPEC,
3602        crate::common::RW,
3603    > {
3604        crate::common::RegisterField::<
3605            3,
3606            0x1,
3607            1,
3608            0,
3609            adansb1::Ansb19,
3610            adansb1::Ansb19,
3611            Adansb1_SPEC,
3612            crate::common::RW,
3613        >::from_register(self, 0)
3614    }
3615
3616    #[doc = "A/D Conversion Channels Select"]
3617    #[inline(always)]
3618    pub fn ansb20(
3619        self,
3620    ) -> crate::common::RegisterField<
3621        4,
3622        0x1,
3623        1,
3624        0,
3625        adansb1::Ansb20,
3626        adansb1::Ansb20,
3627        Adansb1_SPEC,
3628        crate::common::RW,
3629    > {
3630        crate::common::RegisterField::<
3631            4,
3632            0x1,
3633            1,
3634            0,
3635            adansb1::Ansb20,
3636            adansb1::Ansb20,
3637            Adansb1_SPEC,
3638            crate::common::RW,
3639        >::from_register(self, 0)
3640    }
3641
3642    #[doc = "A/D Conversion Channels Select"]
3643    #[inline(always)]
3644    pub fn ansb21(
3645        self,
3646    ) -> crate::common::RegisterField<
3647        5,
3648        0x1,
3649        1,
3650        0,
3651        adansb1::Ansb21,
3652        adansb1::Ansb21,
3653        Adansb1_SPEC,
3654        crate::common::RW,
3655    > {
3656        crate::common::RegisterField::<
3657            5,
3658            0x1,
3659            1,
3660            0,
3661            adansb1::Ansb21,
3662            adansb1::Ansb21,
3663            Adansb1_SPEC,
3664            crate::common::RW,
3665        >::from_register(self, 0)
3666    }
3667
3668    #[doc = "A/D Conversion Channels Select"]
3669    #[inline(always)]
3670    pub fn ansb22(
3671        self,
3672    ) -> crate::common::RegisterField<
3673        6,
3674        0x1,
3675        1,
3676        0,
3677        adansb1::Ansb22,
3678        adansb1::Ansb22,
3679        Adansb1_SPEC,
3680        crate::common::RW,
3681    > {
3682        crate::common::RegisterField::<
3683            6,
3684            0x1,
3685            1,
3686            0,
3687            adansb1::Ansb22,
3688            adansb1::Ansb22,
3689            Adansb1_SPEC,
3690            crate::common::RW,
3691        >::from_register(self, 0)
3692    }
3693}
3694impl ::core::default::Default for Adansb1 {
3695    #[inline(always)]
3696    fn default() -> Adansb1 {
3697        <crate::RegValueT<Adansb1_SPEC> as RegisterValue<_>>::new(0)
3698    }
3699}
3700pub mod adansb1 {
3701
3702    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3703    pub struct Ansb16_SPEC;
3704    pub type Ansb16 = crate::EnumBitfieldStruct<u8, Ansb16_SPEC>;
3705    impl Ansb16 {
3706        #[doc = "Do not select associated input channel."]
3707        pub const _0: Self = Self::new(0);
3708
3709        #[doc = "Select associated input channel."]
3710        pub const _1: Self = Self::new(1);
3711    }
3712    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3713    pub struct Ansb17_SPEC;
3714    pub type Ansb17 = crate::EnumBitfieldStruct<u8, Ansb17_SPEC>;
3715    impl Ansb17 {
3716        #[doc = "Do not select associated input channel."]
3717        pub const _0: Self = Self::new(0);
3718
3719        #[doc = "Select associated input channel."]
3720        pub const _1: Self = Self::new(1);
3721    }
3722    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3723    pub struct Ansb18_SPEC;
3724    pub type Ansb18 = crate::EnumBitfieldStruct<u8, Ansb18_SPEC>;
3725    impl Ansb18 {
3726        #[doc = "Do not select associated input channel."]
3727        pub const _0: Self = Self::new(0);
3728
3729        #[doc = "Select associated input channel."]
3730        pub const _1: Self = Self::new(1);
3731    }
3732    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3733    pub struct Ansb19_SPEC;
3734    pub type Ansb19 = crate::EnumBitfieldStruct<u8, Ansb19_SPEC>;
3735    impl Ansb19 {
3736        #[doc = "Do not select associated input channel."]
3737        pub const _0: Self = Self::new(0);
3738
3739        #[doc = "Select associated input channel."]
3740        pub const _1: Self = Self::new(1);
3741    }
3742    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3743    pub struct Ansb20_SPEC;
3744    pub type Ansb20 = crate::EnumBitfieldStruct<u8, Ansb20_SPEC>;
3745    impl Ansb20 {
3746        #[doc = "Do not select associated input channel."]
3747        pub const _0: Self = Self::new(0);
3748
3749        #[doc = "Select associated input channel."]
3750        pub const _1: Self = Self::new(1);
3751    }
3752    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3753    pub struct Ansb21_SPEC;
3754    pub type Ansb21 = crate::EnumBitfieldStruct<u8, Ansb21_SPEC>;
3755    impl Ansb21 {
3756        #[doc = "Do not select associated input channel."]
3757        pub const _0: Self = Self::new(0);
3758
3759        #[doc = "Select associated input channel."]
3760        pub const _1: Self = Self::new(1);
3761    }
3762    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3763    pub struct Ansb22_SPEC;
3764    pub type Ansb22 = crate::EnumBitfieldStruct<u8, Ansb22_SPEC>;
3765    impl Ansb22 {
3766        #[doc = "Do not select associated input channel."]
3767        pub const _0: Self = Self::new(0);
3768
3769        #[doc = "Select associated input channel."]
3770        pub const _1: Self = Self::new(1);
3771    }
3772}
3773#[doc(hidden)]
3774#[derive(Copy, Clone, Eq, PartialEq)]
3775pub struct Addbldr_SPEC;
3776impl crate::sealed::RegSpec for Addbldr_SPEC {
3777    type DataType = u16;
3778}
3779
3780#[doc = "A/D Data Duplexing Register"]
3781pub type Addbldr = crate::RegValueT<Addbldr_SPEC>;
3782
3783impl Addbldr {
3784    #[doc = "Converted Value 15 to 0"]
3785    #[inline(always)]
3786    pub fn addbldr(
3787        self,
3788    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldr_SPEC, crate::common::R>
3789    {
3790        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldr_SPEC,crate::common::R>::from_register(self,0)
3791    }
3792}
3793impl ::core::default::Default for Addbldr {
3794    #[inline(always)]
3795    fn default() -> Addbldr {
3796        <crate::RegValueT<Addbldr_SPEC> as RegisterValue<_>>::new(0)
3797    }
3798}
3799
3800#[doc(hidden)]
3801#[derive(Copy, Clone, Eq, PartialEq)]
3802pub struct Adtsdr_SPEC;
3803impl crate::sealed::RegSpec for Adtsdr_SPEC {
3804    type DataType = u16;
3805}
3806
3807#[doc = "A/D Temperature Sensor Data Register"]
3808pub type Adtsdr = crate::RegValueT<Adtsdr_SPEC>;
3809
3810impl Adtsdr {
3811    #[doc = "Converted Value 15 to 0"]
3812    #[inline(always)]
3813    pub fn adtsdr(
3814        self,
3815    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adtsdr_SPEC, crate::common::R>
3816    {
3817        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adtsdr_SPEC,crate::common::R>::from_register(self,0)
3818    }
3819}
3820impl ::core::default::Default for Adtsdr {
3821    #[inline(always)]
3822    fn default() -> Adtsdr {
3823        <crate::RegValueT<Adtsdr_SPEC> as RegisterValue<_>>::new(0)
3824    }
3825}
3826
3827#[doc(hidden)]
3828#[derive(Copy, Clone, Eq, PartialEq)]
3829pub struct Adocdr_SPEC;
3830impl crate::sealed::RegSpec for Adocdr_SPEC {
3831    type DataType = u16;
3832}
3833
3834#[doc = "A/D Internal Reference Voltage Data Register"]
3835pub type Adocdr = crate::RegValueT<Adocdr_SPEC>;
3836
3837impl Adocdr {
3838    #[doc = "Converted Value 15 to 0"]
3839    #[inline(always)]
3840    pub fn adocdr(
3841        self,
3842    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adocdr_SPEC, crate::common::R>
3843    {
3844        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adocdr_SPEC,crate::common::R>::from_register(self,0)
3845    }
3846}
3847impl ::core::default::Default for Adocdr {
3848    #[inline(always)]
3849    fn default() -> Adocdr {
3850        <crate::RegValueT<Adocdr_SPEC> as RegisterValue<_>>::new(0)
3851    }
3852}
3853
3854#[doc(hidden)]
3855#[derive(Copy, Clone, Eq, PartialEq)]
3856pub struct Adrd_SPEC;
3857impl crate::sealed::RegSpec for Adrd_SPEC {
3858    type DataType = u16;
3859}
3860
3861#[doc = "A/D Self-Diagnosis Data Register"]
3862pub type Adrd = crate::RegValueT<Adrd_SPEC>;
3863
3864impl Adrd {
3865    #[doc = "Converted Value 11 to 0"]
3866    #[inline(always)]
3867    pub fn ad(
3868        self,
3869    ) -> crate::common::RegisterField<0, 0xfff, 1, 0, u16, u16, Adrd_SPEC, crate::common::R> {
3870        crate::common::RegisterField::<0,0xfff,1,0,u16,u16,Adrd_SPEC,crate::common::R>::from_register(self,0)
3871    }
3872
3873    #[doc = "Self-Diagnosis Status"]
3874    #[inline(always)]
3875    pub fn diagst(
3876        self,
3877    ) -> crate::common::RegisterField<
3878        14,
3879        0x3,
3880        1,
3881        0,
3882        adrd::Diagst,
3883        adrd::Diagst,
3884        Adrd_SPEC,
3885        crate::common::R,
3886    > {
3887        crate::common::RegisterField::<
3888            14,
3889            0x3,
3890            1,
3891            0,
3892            adrd::Diagst,
3893            adrd::Diagst,
3894            Adrd_SPEC,
3895            crate::common::R,
3896        >::from_register(self, 0)
3897    }
3898}
3899impl ::core::default::Default for Adrd {
3900    #[inline(always)]
3901    fn default() -> Adrd {
3902        <crate::RegValueT<Adrd_SPEC> as RegisterValue<_>>::new(0)
3903    }
3904}
3905pub mod adrd {
3906
3907    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3908    pub struct Diagst_SPEC;
3909    pub type Diagst = crate::EnumBitfieldStruct<u8, Diagst_SPEC>;
3910    impl Diagst {
3911        #[doc = "Self-diagnosis not executed after power-on."]
3912        pub const _00: Self = Self::new(0);
3913
3914        #[doc = "Self-diagnosis was executed using the 0 V voltage."]
3915        pub const _01: Self = Self::new(1);
3916
3917        #[doc = "Self-diagnosis was executed using the reference voltage × 1/2."]
3918        pub const _10: Self = Self::new(2);
3919
3920        #[doc = "Self-diagnosis was executed using the reference voltage ."]
3921        pub const _11: Self = Self::new(3);
3922    }
3923}
3924#[doc(hidden)]
3925#[derive(Copy, Clone, Eq, PartialEq)]
3926pub struct Addr_SPEC;
3927impl crate::sealed::RegSpec for Addr_SPEC {
3928    type DataType = u16;
3929}
3930
3931#[doc = "A/D Data Registers %s"]
3932pub type Addr = crate::RegValueT<Addr_SPEC>;
3933
3934impl Addr {
3935    #[doc = "Converted Value 15 to 0"]
3936    #[inline(always)]
3937    pub fn addr(
3938        self,
3939    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addr_SPEC, crate::common::R> {
3940        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addr_SPEC,crate::common::R>::from_register(self,0)
3941    }
3942}
3943impl ::core::default::Default for Addr {
3944    #[inline(always)]
3945    fn default() -> Addr {
3946        <crate::RegValueT<Addr_SPEC> as RegisterValue<_>>::new(0)
3947    }
3948}
3949
3950#[doc(hidden)]
3951#[derive(Copy, Clone, Eq, PartialEq)]
3952pub struct Addiscr_SPEC;
3953impl crate::sealed::RegSpec for Addiscr_SPEC {
3954    type DataType = u8;
3955}
3956
3957#[doc = "A/D Disconnection Detection Control Register"]
3958pub type Addiscr = crate::RegValueT<Addiscr_SPEC>;
3959
3960impl Addiscr {
3961    #[doc = "Disconnection Detection Assist Setting"]
3962    #[inline(always)]
3963    pub fn adndis(
3964        self,
3965    ) -> crate::common::RegisterField<
3966        0,
3967        0xf,
3968        1,
3969        0,
3970        addiscr::Adndis,
3971        addiscr::Adndis,
3972        Addiscr_SPEC,
3973        crate::common::RW,
3974    > {
3975        crate::common::RegisterField::<
3976            0,
3977            0xf,
3978            1,
3979            0,
3980            addiscr::Adndis,
3981            addiscr::Adndis,
3982            Addiscr_SPEC,
3983            crate::common::RW,
3984        >::from_register(self, 0)
3985    }
3986
3987    #[doc = "Precharge/discharge select"]
3988    #[inline(always)]
3989    pub fn pchg(
3990        self,
3991    ) -> crate::common::RegisterField<
3992        4,
3993        0x1,
3994        1,
3995        0,
3996        addiscr::Pchg,
3997        addiscr::Pchg,
3998        Addiscr_SPEC,
3999        crate::common::RW,
4000    > {
4001        crate::common::RegisterField::<
4002            4,
4003            0x1,
4004            1,
4005            0,
4006            addiscr::Pchg,
4007            addiscr::Pchg,
4008            Addiscr_SPEC,
4009            crate::common::RW,
4010        >::from_register(self, 0)
4011    }
4012}
4013impl ::core::default::Default for Addiscr {
4014    #[inline(always)]
4015    fn default() -> Addiscr {
4016        <crate::RegValueT<Addiscr_SPEC> as RegisterValue<_>>::new(0)
4017    }
4018}
4019pub mod addiscr {
4020
4021    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4022    pub struct Adndis_SPEC;
4023    pub type Adndis = crate::EnumBitfieldStruct<u8, Adndis_SPEC>;
4024    impl Adndis {
4025        #[doc = "The disconnection detection assist function is disabled"]
4026        pub const _0_X_0: Self = Self::new(0);
4027
4028        #[doc = "Setting prohibited"]
4029        pub const _0_X_1: Self = Self::new(1);
4030    }
4031    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4032    pub struct Pchg_SPEC;
4033    pub type Pchg = crate::EnumBitfieldStruct<u8, Pchg_SPEC>;
4034    impl Pchg {
4035        #[doc = "Discharge"]
4036        pub const _0: Self = Self::new(0);
4037
4038        #[doc = "Precharge"]
4039        pub const _1: Self = Self::new(1);
4040    }
4041}
4042#[doc(hidden)]
4043#[derive(Copy, Clone, Eq, PartialEq)]
4044pub struct Adgspcr_SPEC;
4045impl crate::sealed::RegSpec for Adgspcr_SPEC {
4046    type DataType = u16;
4047}
4048
4049#[doc = "A/D Group Scan Priority Control Register"]
4050pub type Adgspcr = crate::RegValueT<Adgspcr_SPEC>;
4051
4052impl Adgspcr {
4053    #[doc = "Group Priority Operation Setting"]
4054    #[inline(always)]
4055    pub fn pgs(
4056        self,
4057    ) -> crate::common::RegisterField<
4058        0,
4059        0x1,
4060        1,
4061        0,
4062        adgspcr::Pgs,
4063        adgspcr::Pgs,
4064        Adgspcr_SPEC,
4065        crate::common::RW,
4066    > {
4067        crate::common::RegisterField::<
4068            0,
4069            0x1,
4070            1,
4071            0,
4072            adgspcr::Pgs,
4073            adgspcr::Pgs,
4074            Adgspcr_SPEC,
4075            crate::common::RW,
4076        >::from_register(self, 0)
4077    }
4078
4079    #[doc = "Lower-Priority Group Restart Setting"]
4080    #[inline(always)]
4081    pub fn gbrscn(
4082        self,
4083    ) -> crate::common::RegisterField<
4084        1,
4085        0x1,
4086        1,
4087        0,
4088        adgspcr::Gbrscn,
4089        adgspcr::Gbrscn,
4090        Adgspcr_SPEC,
4091        crate::common::RW,
4092    > {
4093        crate::common::RegisterField::<
4094            1,
4095            0x1,
4096            1,
4097            0,
4098            adgspcr::Gbrscn,
4099            adgspcr::Gbrscn,
4100            Adgspcr_SPEC,
4101            crate::common::RW,
4102        >::from_register(self, 0)
4103    }
4104
4105    #[doc = "Enabled only when PGS = 1 and GBRSCN = 1."]
4106    #[inline(always)]
4107    pub fn lgrrs(
4108        self,
4109    ) -> crate::common::RegisterField<
4110        14,
4111        0x1,
4112        1,
4113        0,
4114        adgspcr::Lgrrs,
4115        adgspcr::Lgrrs,
4116        Adgspcr_SPEC,
4117        crate::common::RW,
4118    > {
4119        crate::common::RegisterField::<
4120            14,
4121            0x1,
4122            1,
4123            0,
4124            adgspcr::Lgrrs,
4125            adgspcr::Lgrrs,
4126            Adgspcr_SPEC,
4127            crate::common::RW,
4128        >::from_register(self, 0)
4129    }
4130
4131    #[doc = "Single Scan Continuous Start"]
4132    #[inline(always)]
4133    pub fn gbrp(
4134        self,
4135    ) -> crate::common::RegisterField<
4136        15,
4137        0x1,
4138        1,
4139        0,
4140        adgspcr::Gbrp,
4141        adgspcr::Gbrp,
4142        Adgspcr_SPEC,
4143        crate::common::RW,
4144    > {
4145        crate::common::RegisterField::<
4146            15,
4147            0x1,
4148            1,
4149            0,
4150            adgspcr::Gbrp,
4151            adgspcr::Gbrp,
4152            Adgspcr_SPEC,
4153            crate::common::RW,
4154        >::from_register(self, 0)
4155    }
4156}
4157impl ::core::default::Default for Adgspcr {
4158    #[inline(always)]
4159    fn default() -> Adgspcr {
4160        <crate::RegValueT<Adgspcr_SPEC> as RegisterValue<_>>::new(0)
4161    }
4162}
4163pub mod adgspcr {
4164
4165    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4166    pub struct Pgs_SPEC;
4167    pub type Pgs = crate::EnumBitfieldStruct<u8, Pgs_SPEC>;
4168    impl Pgs {
4169        #[doc = "Operate without group priority control."]
4170        pub const _0: Self = Self::new(0);
4171
4172        #[doc = "Operate with group priority control."]
4173        pub const _1: Self = Self::new(1);
4174    }
4175    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4176    pub struct Gbrscn_SPEC;
4177    pub type Gbrscn = crate::EnumBitfieldStruct<u8, Gbrscn_SPEC>;
4178    impl Gbrscn {
4179        #[doc = "Disable rescanning of the group that was stopped in group priority operation"]
4180        pub const _0: Self = Self::new(0);
4181
4182        #[doc = "Enable rescanning of the group that was stopped in group priority operation."]
4183        pub const _1: Self = Self::new(1);
4184    }
4185    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4186    pub struct Lgrrs_SPEC;
4187    pub type Lgrrs = crate::EnumBitfieldStruct<u8, Lgrrs_SPEC>;
4188    impl Lgrrs {
4189        #[doc = "Start rescanning from the first channel for scanning"]
4190        pub const _0: Self = Self::new(0);
4191
4192        #[doc = "Start rescanning from the channel for which A/D conversion is not completed."]
4193        pub const _1: Self = Self::new(1);
4194    }
4195    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4196    pub struct Gbrp_SPEC;
4197    pub type Gbrp = crate::EnumBitfieldStruct<u8, Gbrp_SPEC>;
4198    impl Gbrp {
4199        #[doc = "Single scan is not continuously activated."]
4200        pub const _0: Self = Self::new(0);
4201
4202        #[doc = "Single scan for the group with the lower-priority is continuously activated."]
4203        pub const _1: Self = Self::new(1);
4204    }
4205}
4206#[doc(hidden)]
4207#[derive(Copy, Clone, Eq, PartialEq)]
4208pub struct Addbldra_SPEC;
4209impl crate::sealed::RegSpec for Addbldra_SPEC {
4210    type DataType = u16;
4211}
4212
4213#[doc = "A/D Data Duplexing Register A"]
4214pub type Addbldra = crate::RegValueT<Addbldra_SPEC>;
4215
4216impl Addbldra {
4217    #[doc = "Converted Value 15 to 0"]
4218    #[inline(always)]
4219    pub fn addbldr(
4220        self,
4221    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldra_SPEC, crate::common::R>
4222    {
4223        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldra_SPEC,crate::common::R>::from_register(self,0)
4224    }
4225}
4226impl ::core::default::Default for Addbldra {
4227    #[inline(always)]
4228    fn default() -> Addbldra {
4229        <crate::RegValueT<Addbldra_SPEC> as RegisterValue<_>>::new(0)
4230    }
4231}
4232
4233#[doc(hidden)]
4234#[derive(Copy, Clone, Eq, PartialEq)]
4235pub struct Addbldrb_SPEC;
4236impl crate::sealed::RegSpec for Addbldrb_SPEC {
4237    type DataType = u16;
4238}
4239
4240#[doc = "A/D Data Duplexing Register B"]
4241pub type Addbldrb = crate::RegValueT<Addbldrb_SPEC>;
4242
4243impl Addbldrb {
4244    #[doc = "Converted Value 15 to 0"]
4245    #[inline(always)]
4246    pub fn addbldr(
4247        self,
4248    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldrb_SPEC, crate::common::R>
4249    {
4250        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldrb_SPEC,crate::common::R>::from_register(self,0)
4251    }
4252}
4253impl ::core::default::Default for Addbldrb {
4254    #[inline(always)]
4255    fn default() -> Addbldrb {
4256        <crate::RegValueT<Addbldrb_SPEC> as RegisterValue<_>>::new(0)
4257    }
4258}
4259
4260#[doc(hidden)]
4261#[derive(Copy, Clone, Eq, PartialEq)]
4262pub struct Adwinmon_SPEC;
4263impl crate::sealed::RegSpec for Adwinmon_SPEC {
4264    type DataType = u8;
4265}
4266
4267#[doc = "A/D Compare Function Window A/B Status Monitor Register"]
4268pub type Adwinmon = crate::RegValueT<Adwinmon_SPEC>;
4269
4270impl Adwinmon {
4271    #[doc = "Combination Result Monitor"]
4272    #[inline(always)]
4273    pub fn moncomb(
4274        self,
4275    ) -> crate::common::RegisterField<
4276        0,
4277        0x1,
4278        1,
4279        0,
4280        adwinmon::Moncomb,
4281        adwinmon::Moncomb,
4282        Adwinmon_SPEC,
4283        crate::common::R,
4284    > {
4285        crate::common::RegisterField::<
4286            0,
4287            0x1,
4288            1,
4289            0,
4290            adwinmon::Moncomb,
4291            adwinmon::Moncomb,
4292            Adwinmon_SPEC,
4293            crate::common::R,
4294        >::from_register(self, 0)
4295    }
4296
4297    #[doc = "Comparison Result Monitor A"]
4298    #[inline(always)]
4299    pub fn moncmpa(
4300        self,
4301    ) -> crate::common::RegisterField<
4302        4,
4303        0x1,
4304        1,
4305        0,
4306        adwinmon::Moncmpa,
4307        adwinmon::Moncmpa,
4308        Adwinmon_SPEC,
4309        crate::common::R,
4310    > {
4311        crate::common::RegisterField::<
4312            4,
4313            0x1,
4314            1,
4315            0,
4316            adwinmon::Moncmpa,
4317            adwinmon::Moncmpa,
4318            Adwinmon_SPEC,
4319            crate::common::R,
4320        >::from_register(self, 0)
4321    }
4322
4323    #[doc = "Comparison Result Monitor B"]
4324    #[inline(always)]
4325    pub fn moncmpb(
4326        self,
4327    ) -> crate::common::RegisterField<
4328        5,
4329        0x1,
4330        1,
4331        0,
4332        adwinmon::Moncmpb,
4333        adwinmon::Moncmpb,
4334        Adwinmon_SPEC,
4335        crate::common::R,
4336    > {
4337        crate::common::RegisterField::<
4338            5,
4339            0x1,
4340            1,
4341            0,
4342            adwinmon::Moncmpb,
4343            adwinmon::Moncmpb,
4344            Adwinmon_SPEC,
4345            crate::common::R,
4346        >::from_register(self, 0)
4347    }
4348}
4349impl ::core::default::Default for Adwinmon {
4350    #[inline(always)]
4351    fn default() -> Adwinmon {
4352        <crate::RegValueT<Adwinmon_SPEC> as RegisterValue<_>>::new(0)
4353    }
4354}
4355pub mod adwinmon {
4356
4357    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4358    pub struct Moncomb_SPEC;
4359    pub type Moncomb = crate::EnumBitfieldStruct<u8, Moncomb_SPEC>;
4360    impl Moncomb {
4361        #[doc = "Window A/B composite conditions are not met."]
4362        pub const _0: Self = Self::new(0);
4363
4364        #[doc = "Window A/B composite conditions are met."]
4365        pub const _1: Self = Self::new(1);
4366    }
4367    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4368    pub struct Moncmpa_SPEC;
4369    pub type Moncmpa = crate::EnumBitfieldStruct<u8, Moncmpa_SPEC>;
4370    impl Moncmpa {
4371        #[doc = "Window A comparison conditions are not met."]
4372        pub const _0: Self = Self::new(0);
4373
4374        #[doc = "Window A comparison conditions are met."]
4375        pub const _1: Self = Self::new(1);
4376    }
4377    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4378    pub struct Moncmpb_SPEC;
4379    pub type Moncmpb = crate::EnumBitfieldStruct<u8, Moncmpb_SPEC>;
4380    impl Moncmpb {
4381        #[doc = "Window B comparison conditions are not met."]
4382        pub const _0: Self = Self::new(0);
4383
4384        #[doc = "Window B comparison conditions are met."]
4385        pub const _1: Self = Self::new(1);
4386    }
4387}
4388#[doc(hidden)]
4389#[derive(Copy, Clone, Eq, PartialEq)]
4390pub struct Adcmpcr_SPEC;
4391impl crate::sealed::RegSpec for Adcmpcr_SPEC {
4392    type DataType = u16;
4393}
4394
4395#[doc = "A/D Compare Function Control Register"]
4396pub type Adcmpcr = crate::RegValueT<Adcmpcr_SPEC>;
4397
4398impl Adcmpcr {
4399    #[doc = "Window A/B Composite Conditions Setting"]
4400    #[inline(always)]
4401    pub fn cmpab(
4402        self,
4403    ) -> crate::common::RegisterField<
4404        0,
4405        0x3,
4406        1,
4407        0,
4408        adcmpcr::Cmpab,
4409        adcmpcr::Cmpab,
4410        Adcmpcr_SPEC,
4411        crate::common::RW,
4412    > {
4413        crate::common::RegisterField::<
4414            0,
4415            0x3,
4416            1,
4417            0,
4418            adcmpcr::Cmpab,
4419            adcmpcr::Cmpab,
4420            Adcmpcr_SPEC,
4421            crate::common::RW,
4422        >::from_register(self, 0)
4423    }
4424
4425    #[doc = "Compare Window B Operation Enable"]
4426    #[inline(always)]
4427    pub fn cmpbe(
4428        self,
4429    ) -> crate::common::RegisterField<
4430        9,
4431        0x1,
4432        1,
4433        0,
4434        adcmpcr::Cmpbe,
4435        adcmpcr::Cmpbe,
4436        Adcmpcr_SPEC,
4437        crate::common::RW,
4438    > {
4439        crate::common::RegisterField::<
4440            9,
4441            0x1,
4442            1,
4443            0,
4444            adcmpcr::Cmpbe,
4445            adcmpcr::Cmpbe,
4446            Adcmpcr_SPEC,
4447            crate::common::RW,
4448        >::from_register(self, 0)
4449    }
4450
4451    #[doc = "Compare Window A Operation Enable"]
4452    #[inline(always)]
4453    pub fn cmpae(
4454        self,
4455    ) -> crate::common::RegisterField<
4456        11,
4457        0x1,
4458        1,
4459        0,
4460        adcmpcr::Cmpae,
4461        adcmpcr::Cmpae,
4462        Adcmpcr_SPEC,
4463        crate::common::RW,
4464    > {
4465        crate::common::RegisterField::<
4466            11,
4467            0x1,
4468            1,
4469            0,
4470            adcmpcr::Cmpae,
4471            adcmpcr::Cmpae,
4472            Adcmpcr_SPEC,
4473            crate::common::RW,
4474        >::from_register(self, 0)
4475    }
4476
4477    #[doc = "Compare B Interrupt Enable"]
4478    #[inline(always)]
4479    pub fn cmpbie(
4480        self,
4481    ) -> crate::common::RegisterField<
4482        13,
4483        0x1,
4484        1,
4485        0,
4486        adcmpcr::Cmpbie,
4487        adcmpcr::Cmpbie,
4488        Adcmpcr_SPEC,
4489        crate::common::RW,
4490    > {
4491        crate::common::RegisterField::<
4492            13,
4493            0x1,
4494            1,
4495            0,
4496            adcmpcr::Cmpbie,
4497            adcmpcr::Cmpbie,
4498            Adcmpcr_SPEC,
4499            crate::common::RW,
4500        >::from_register(self, 0)
4501    }
4502
4503    #[doc = "Window Function Setting"]
4504    #[inline(always)]
4505    pub fn wcmpe(
4506        self,
4507    ) -> crate::common::RegisterField<
4508        14,
4509        0x1,
4510        1,
4511        0,
4512        adcmpcr::Wcmpe,
4513        adcmpcr::Wcmpe,
4514        Adcmpcr_SPEC,
4515        crate::common::RW,
4516    > {
4517        crate::common::RegisterField::<
4518            14,
4519            0x1,
4520            1,
4521            0,
4522            adcmpcr::Wcmpe,
4523            adcmpcr::Wcmpe,
4524            Adcmpcr_SPEC,
4525            crate::common::RW,
4526        >::from_register(self, 0)
4527    }
4528
4529    #[doc = "Compare A Interrupt Enable"]
4530    #[inline(always)]
4531    pub fn cmpaie(
4532        self,
4533    ) -> crate::common::RegisterField<
4534        15,
4535        0x1,
4536        1,
4537        0,
4538        adcmpcr::Cmpaie,
4539        adcmpcr::Cmpaie,
4540        Adcmpcr_SPEC,
4541        crate::common::RW,
4542    > {
4543        crate::common::RegisterField::<
4544            15,
4545            0x1,
4546            1,
4547            0,
4548            adcmpcr::Cmpaie,
4549            adcmpcr::Cmpaie,
4550            Adcmpcr_SPEC,
4551            crate::common::RW,
4552        >::from_register(self, 0)
4553    }
4554}
4555impl ::core::default::Default for Adcmpcr {
4556    #[inline(always)]
4557    fn default() -> Adcmpcr {
4558        <crate::RegValueT<Adcmpcr_SPEC> as RegisterValue<_>>::new(0)
4559    }
4560}
4561pub mod adcmpcr {
4562
4563    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4564    pub struct Cmpab_SPEC;
4565    pub type Cmpab = crate::EnumBitfieldStruct<u8, Cmpab_SPEC>;
4566    impl Cmpab {
4567        #[doc = "Output ADC12i_WCMPM (i = 0, 1) when window A OR window B comparison conditions are met. Otherwise, output ADC12i_WCMPUM (i = 0, 1)."]
4568        pub const _00: Self = Self::new(0);
4569
4570        #[doc = "Output ADC12i_WCMPM (i = 0, 1) when window A EXOR window B comparison conditions are met. Otherwise, output ADC12i_WCMPUM (i = 0, 1)."]
4571        pub const _01: Self = Self::new(1);
4572
4573        #[doc = "Output ADC12i_WCMPM (i = 0, 1) when window A AND window B comparison conditions are met. Otherwise, output ADC12i_WCMPUM (i = 0, 1)."]
4574        pub const _10: Self = Self::new(2);
4575
4576        #[doc = "Setting prohibited."]
4577        pub const _11: Self = Self::new(3);
4578    }
4579    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4580    pub struct Cmpbe_SPEC;
4581    pub type Cmpbe = crate::EnumBitfieldStruct<u8, Cmpbe_SPEC>;
4582    impl Cmpbe {
4583        #[doc = "Disable compare window B operation. Disable ADC12i_WCMPM (i = 0, 1) and ADC12i_WCMPUM (i = 0, 1) outputs."]
4584        pub const _0: Self = Self::new(0);
4585
4586        #[doc = "Enable compare window B operation."]
4587        pub const _1: Self = Self::new(1);
4588    }
4589    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4590    pub struct Cmpae_SPEC;
4591    pub type Cmpae = crate::EnumBitfieldStruct<u8, Cmpae_SPEC>;
4592    impl Cmpae {
4593        #[doc = "Disable compare window A operation. Disable ADC12i_WCMPM (i = 0, 1) and ADC12i_WCMPUM (i = 0, 1) outputs."]
4594        pub const _0: Self = Self::new(0);
4595
4596        #[doc = "Enable compare window A operation."]
4597        pub const _1: Self = Self::new(1);
4598    }
4599    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4600    pub struct Cmpbie_SPEC;
4601    pub type Cmpbie = crate::EnumBitfieldStruct<u8, Cmpbie_SPEC>;
4602    impl Cmpbie {
4603        #[doc = "Disable ADC12i_CMPBI (i = 0, 1) interrupt when comparison conditions (window B) are met."]
4604        pub const _0: Self = Self::new(0);
4605
4606        #[doc = "Enable ADC12i_CMPBI (i = 0, 1) interrupt when comparison conditions (window B) are met."]
4607        pub const _1: Self = Self::new(1);
4608    }
4609    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4610    pub struct Wcmpe_SPEC;
4611    pub type Wcmpe = crate::EnumBitfieldStruct<u8, Wcmpe_SPEC>;
4612    impl Wcmpe {
4613        #[doc = "Disable window function Window A and window B operate as a comparator to compare the single value on the lower side with the A/D conversion result."]
4614        pub const _0: Self = Self::new(0);
4615
4616        #[doc = "Enable window function Window A and window B operate as a comparator to compare the two values on the upper and lower sides with the A/D conversion result."]
4617        pub const _1: Self = Self::new(1);
4618    }
4619    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4620    pub struct Cmpaie_SPEC;
4621    pub type Cmpaie = crate::EnumBitfieldStruct<u8, Cmpaie_SPEC>;
4622    impl Cmpaie {
4623        #[doc = "Disable ADC12i_CMPAI (i = 0, 1) interrupt when comparison conditions (window A) are met."]
4624        pub const _0: Self = Self::new(0);
4625
4626        #[doc = "Enable ADC12i_CMPAI (i = 0, 1) interrupt when comparison conditions (window A) are met."]
4627        pub const _1: Self = Self::new(1);
4628    }
4629}
4630#[doc(hidden)]
4631#[derive(Copy, Clone, Eq, PartialEq)]
4632pub struct Adcmpanser_SPEC;
4633impl crate::sealed::RegSpec for Adcmpanser_SPEC {
4634    type DataType = u8;
4635}
4636
4637#[doc = "A/D Compare Function Window A Extended Input Select Register"]
4638pub type Adcmpanser = crate::RegValueT<Adcmpanser_SPEC>;
4639
4640impl Adcmpanser {
4641    #[doc = "Temperature Sensor Output Compare Select"]
4642    #[inline(always)]
4643    pub fn cmptsa(
4644        self,
4645    ) -> crate::common::RegisterField<
4646        0,
4647        0x1,
4648        1,
4649        0,
4650        adcmpanser::Cmptsa,
4651        adcmpanser::Cmptsa,
4652        Adcmpanser_SPEC,
4653        crate::common::RW,
4654    > {
4655        crate::common::RegisterField::<
4656            0,
4657            0x1,
4658            1,
4659            0,
4660            adcmpanser::Cmptsa,
4661            adcmpanser::Cmptsa,
4662            Adcmpanser_SPEC,
4663            crate::common::RW,
4664        >::from_register(self, 0)
4665    }
4666
4667    #[doc = "Internal Reference Voltage Compare Select"]
4668    #[inline(always)]
4669    pub fn cmpoca(
4670        self,
4671    ) -> crate::common::RegisterField<
4672        1,
4673        0x1,
4674        1,
4675        0,
4676        adcmpanser::Cmpoca,
4677        adcmpanser::Cmpoca,
4678        Adcmpanser_SPEC,
4679        crate::common::RW,
4680    > {
4681        crate::common::RegisterField::<
4682            1,
4683            0x1,
4684            1,
4685            0,
4686            adcmpanser::Cmpoca,
4687            adcmpanser::Cmpoca,
4688            Adcmpanser_SPEC,
4689            crate::common::RW,
4690        >::from_register(self, 0)
4691    }
4692}
4693impl ::core::default::Default for Adcmpanser {
4694    #[inline(always)]
4695    fn default() -> Adcmpanser {
4696        <crate::RegValueT<Adcmpanser_SPEC> as RegisterValue<_>>::new(0)
4697    }
4698}
4699pub mod adcmpanser {
4700
4701    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4702    pub struct Cmptsa_SPEC;
4703    pub type Cmptsa = crate::EnumBitfieldStruct<u8, Cmptsa_SPEC>;
4704    impl Cmptsa {
4705        #[doc = "Exclude the temperature sensor output from the compare Window A target range."]
4706        pub const _0: Self = Self::new(0);
4707
4708        #[doc = "Include the temperature sensor output in the compare Window A target range."]
4709        pub const _1: Self = Self::new(1);
4710    }
4711    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4712    pub struct Cmpoca_SPEC;
4713    pub type Cmpoca = crate::EnumBitfieldStruct<u8, Cmpoca_SPEC>;
4714    impl Cmpoca {
4715        #[doc = "Exclude the internal reference voltage from the compare Window A target range."]
4716        pub const _0: Self = Self::new(0);
4717
4718        #[doc = "Include the internal reference voltage in the compare Window A target range."]
4719        pub const _1: Self = Self::new(1);
4720    }
4721}
4722#[doc(hidden)]
4723#[derive(Copy, Clone, Eq, PartialEq)]
4724pub struct Adcmpler_SPEC;
4725impl crate::sealed::RegSpec for Adcmpler_SPEC {
4726    type DataType = u8;
4727}
4728
4729#[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
4730pub type Adcmpler = crate::RegValueT<Adcmpler_SPEC>;
4731
4732impl Adcmpler {
4733    #[doc = "Compare Window A Temperature Sensor Output Comparison Condition Select"]
4734    #[inline(always)]
4735    pub fn cmpltsa(
4736        self,
4737    ) -> crate::common::RegisterField<
4738        0,
4739        0x1,
4740        1,
4741        0,
4742        adcmpler::Cmpltsa,
4743        adcmpler::Cmpltsa,
4744        Adcmpler_SPEC,
4745        crate::common::RW,
4746    > {
4747        crate::common::RegisterField::<
4748            0,
4749            0x1,
4750            1,
4751            0,
4752            adcmpler::Cmpltsa,
4753            adcmpler::Cmpltsa,
4754            Adcmpler_SPEC,
4755            crate::common::RW,
4756        >::from_register(self, 0)
4757    }
4758
4759    #[doc = "Compare Window A Internal Reference Voltage Comparison Condition Select"]
4760    #[inline(always)]
4761    pub fn cmploca(
4762        self,
4763    ) -> crate::common::RegisterField<
4764        1,
4765        0x1,
4766        1,
4767        0,
4768        adcmpler::Cmploca,
4769        adcmpler::Cmploca,
4770        Adcmpler_SPEC,
4771        crate::common::RW,
4772    > {
4773        crate::common::RegisterField::<
4774            1,
4775            0x1,
4776            1,
4777            0,
4778            adcmpler::Cmploca,
4779            adcmpler::Cmploca,
4780            Adcmpler_SPEC,
4781            crate::common::RW,
4782        >::from_register(self, 0)
4783    }
4784}
4785impl ::core::default::Default for Adcmpler {
4786    #[inline(always)]
4787    fn default() -> Adcmpler {
4788        <crate::RegValueT<Adcmpler_SPEC> as RegisterValue<_>>::new(0)
4789    }
4790}
4791pub mod adcmpler {
4792
4793    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4794    pub struct Cmpltsa_SPEC;
4795    pub type Cmpltsa = crate::EnumBitfieldStruct<u8, Cmpltsa_SPEC>;
4796    impl Cmpltsa {
4797        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0) : ADCMPDR0 value > A/D-converted value Compare Window A Temperature Sensor Output Comparison Condition Select When window function is enabled (ADCMPCR.WCMPE = 1) : Compare Window A Temperature Sensor Output Comparison Condition A/D-converted value < ADCMPDR0 value, or A/D-converted value > ADCMPDR1 value"]
4798        pub const _0: Self = Self::new(0);
4799
4800        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0) : ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1) : ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
4801        pub const _1: Self = Self::new(1);
4802    }
4803    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4804    pub struct Cmploca_SPEC;
4805    pub type Cmploca = crate::EnumBitfieldStruct<u8, Cmploca_SPEC>;
4806    impl Cmploca {
4807        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0) : ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or A/D-converted value > ADCMPDR1 value"]
4808        pub const _0: Self = Self::new(0);
4809
4810        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
4811        pub const _1: Self = Self::new(1);
4812    }
4813}
4814#[doc(hidden)]
4815#[derive(Copy, Clone, Eq, PartialEq)]
4816pub struct Adcmpansr0_SPEC;
4817impl crate::sealed::RegSpec for Adcmpansr0_SPEC {
4818    type DataType = u16;
4819}
4820
4821#[doc = "A/D Compare Function Window A Channel Select Register 0"]
4822pub type Adcmpansr0 = crate::RegValueT<Adcmpansr0_SPEC>;
4823
4824impl Adcmpansr0 {
4825    #[doc = "Compare Window A Channel Select"]
4826    #[inline(always)]
4827    pub fn cmpcha0(
4828        self,
4829    ) -> crate::common::RegisterField<
4830        0,
4831        0x1,
4832        1,
4833        0,
4834        adcmpansr0::Cmpcha0,
4835        adcmpansr0::Cmpcha0,
4836        Adcmpansr0_SPEC,
4837        crate::common::RW,
4838    > {
4839        crate::common::RegisterField::<
4840            0,
4841            0x1,
4842            1,
4843            0,
4844            adcmpansr0::Cmpcha0,
4845            adcmpansr0::Cmpcha0,
4846            Adcmpansr0_SPEC,
4847            crate::common::RW,
4848        >::from_register(self, 0)
4849    }
4850
4851    #[doc = "Compare Window A Channel Select"]
4852    #[inline(always)]
4853    pub fn cmpcha1(
4854        self,
4855    ) -> crate::common::RegisterField<
4856        1,
4857        0x1,
4858        1,
4859        0,
4860        adcmpansr0::Cmpcha1,
4861        adcmpansr0::Cmpcha1,
4862        Adcmpansr0_SPEC,
4863        crate::common::RW,
4864    > {
4865        crate::common::RegisterField::<
4866            1,
4867            0x1,
4868            1,
4869            0,
4870            adcmpansr0::Cmpcha1,
4871            adcmpansr0::Cmpcha1,
4872            Adcmpansr0_SPEC,
4873            crate::common::RW,
4874        >::from_register(self, 0)
4875    }
4876
4877    #[doc = "Compare Window A Channel Select"]
4878    #[inline(always)]
4879    pub fn cmpcha2(
4880        self,
4881    ) -> crate::common::RegisterField<
4882        2,
4883        0x1,
4884        1,
4885        0,
4886        adcmpansr0::Cmpcha2,
4887        adcmpansr0::Cmpcha2,
4888        Adcmpansr0_SPEC,
4889        crate::common::RW,
4890    > {
4891        crate::common::RegisterField::<
4892            2,
4893            0x1,
4894            1,
4895            0,
4896            adcmpansr0::Cmpcha2,
4897            adcmpansr0::Cmpcha2,
4898            Adcmpansr0_SPEC,
4899            crate::common::RW,
4900        >::from_register(self, 0)
4901    }
4902
4903    #[doc = "Compare Window A Channel Select"]
4904    #[inline(always)]
4905    pub fn cmpcha3(
4906        self,
4907    ) -> crate::common::RegisterField<
4908        3,
4909        0x1,
4910        1,
4911        0,
4912        adcmpansr0::Cmpcha3,
4913        adcmpansr0::Cmpcha3,
4914        Adcmpansr0_SPEC,
4915        crate::common::RW,
4916    > {
4917        crate::common::RegisterField::<
4918            3,
4919            0x1,
4920            1,
4921            0,
4922            adcmpansr0::Cmpcha3,
4923            adcmpansr0::Cmpcha3,
4924            Adcmpansr0_SPEC,
4925            crate::common::RW,
4926        >::from_register(self, 0)
4927    }
4928
4929    #[doc = "Compare Window A Channel Select"]
4930    #[inline(always)]
4931    pub fn cmpcha4(
4932        self,
4933    ) -> crate::common::RegisterField<
4934        4,
4935        0x1,
4936        1,
4937        0,
4938        adcmpansr0::Cmpcha4,
4939        adcmpansr0::Cmpcha4,
4940        Adcmpansr0_SPEC,
4941        crate::common::RW,
4942    > {
4943        crate::common::RegisterField::<
4944            4,
4945            0x1,
4946            1,
4947            0,
4948            adcmpansr0::Cmpcha4,
4949            adcmpansr0::Cmpcha4,
4950            Adcmpansr0_SPEC,
4951            crate::common::RW,
4952        >::from_register(self, 0)
4953    }
4954
4955    #[doc = "Compare Window A Channel Select"]
4956    #[inline(always)]
4957    pub fn cmpcha5(
4958        self,
4959    ) -> crate::common::RegisterField<
4960        5,
4961        0x1,
4962        1,
4963        0,
4964        adcmpansr0::Cmpcha5,
4965        adcmpansr0::Cmpcha5,
4966        Adcmpansr0_SPEC,
4967        crate::common::RW,
4968    > {
4969        crate::common::RegisterField::<
4970            5,
4971            0x1,
4972            1,
4973            0,
4974            adcmpansr0::Cmpcha5,
4975            adcmpansr0::Cmpcha5,
4976            Adcmpansr0_SPEC,
4977            crate::common::RW,
4978        >::from_register(self, 0)
4979    }
4980
4981    #[doc = "Compare Window A Channel Select"]
4982    #[inline(always)]
4983    pub fn cmpcha6(
4984        self,
4985    ) -> crate::common::RegisterField<
4986        6,
4987        0x1,
4988        1,
4989        0,
4990        adcmpansr0::Cmpcha6,
4991        adcmpansr0::Cmpcha6,
4992        Adcmpansr0_SPEC,
4993        crate::common::RW,
4994    > {
4995        crate::common::RegisterField::<
4996            6,
4997            0x1,
4998            1,
4999            0,
5000            adcmpansr0::Cmpcha6,
5001            adcmpansr0::Cmpcha6,
5002            Adcmpansr0_SPEC,
5003            crate::common::RW,
5004        >::from_register(self, 0)
5005    }
5006
5007    #[doc = "Compare Window A Channel Select"]
5008    #[inline(always)]
5009    pub fn cmpcha7(
5010        self,
5011    ) -> crate::common::RegisterField<
5012        7,
5013        0x1,
5014        1,
5015        0,
5016        adcmpansr0::Cmpcha7,
5017        adcmpansr0::Cmpcha7,
5018        Adcmpansr0_SPEC,
5019        crate::common::RW,
5020    > {
5021        crate::common::RegisterField::<
5022            7,
5023            0x1,
5024            1,
5025            0,
5026            adcmpansr0::Cmpcha7,
5027            adcmpansr0::Cmpcha7,
5028            Adcmpansr0_SPEC,
5029            crate::common::RW,
5030        >::from_register(self, 0)
5031    }
5032
5033    #[doc = "Compare Window A Channel Select"]
5034    #[inline(always)]
5035    pub fn cmpcha8(
5036        self,
5037    ) -> crate::common::RegisterField<
5038        8,
5039        0x1,
5040        1,
5041        0,
5042        adcmpansr0::Cmpcha8,
5043        adcmpansr0::Cmpcha8,
5044        Adcmpansr0_SPEC,
5045        crate::common::RW,
5046    > {
5047        crate::common::RegisterField::<
5048            8,
5049            0x1,
5050            1,
5051            0,
5052            adcmpansr0::Cmpcha8,
5053            adcmpansr0::Cmpcha8,
5054            Adcmpansr0_SPEC,
5055            crate::common::RW,
5056        >::from_register(self, 0)
5057    }
5058
5059    #[doc = "Compare Window A Channel Select"]
5060    #[inline(always)]
5061    pub fn cmpcha9(
5062        self,
5063    ) -> crate::common::RegisterField<
5064        9,
5065        0x1,
5066        1,
5067        0,
5068        adcmpansr0::Cmpcha9,
5069        adcmpansr0::Cmpcha9,
5070        Adcmpansr0_SPEC,
5071        crate::common::RW,
5072    > {
5073        crate::common::RegisterField::<
5074            9,
5075            0x1,
5076            1,
5077            0,
5078            adcmpansr0::Cmpcha9,
5079            adcmpansr0::Cmpcha9,
5080            Adcmpansr0_SPEC,
5081            crate::common::RW,
5082        >::from_register(self, 0)
5083    }
5084
5085    #[doc = "Compare Window A Channel Select"]
5086    #[inline(always)]
5087    pub fn cmpcha12(
5088        self,
5089    ) -> crate::common::RegisterField<
5090        12,
5091        0x1,
5092        1,
5093        0,
5094        adcmpansr0::Cmpcha12,
5095        adcmpansr0::Cmpcha12,
5096        Adcmpansr0_SPEC,
5097        crate::common::RW,
5098    > {
5099        crate::common::RegisterField::<
5100            12,
5101            0x1,
5102            1,
5103            0,
5104            adcmpansr0::Cmpcha12,
5105            adcmpansr0::Cmpcha12,
5106            Adcmpansr0_SPEC,
5107            crate::common::RW,
5108        >::from_register(self, 0)
5109    }
5110
5111    #[doc = "Compare Window A Channel Select"]
5112    #[inline(always)]
5113    pub fn cmpcha13(
5114        self,
5115    ) -> crate::common::RegisterField<
5116        13,
5117        0x1,
5118        1,
5119        0,
5120        adcmpansr0::Cmpcha13,
5121        adcmpansr0::Cmpcha13,
5122        Adcmpansr0_SPEC,
5123        crate::common::RW,
5124    > {
5125        crate::common::RegisterField::<
5126            13,
5127            0x1,
5128            1,
5129            0,
5130            adcmpansr0::Cmpcha13,
5131            adcmpansr0::Cmpcha13,
5132            Adcmpansr0_SPEC,
5133            crate::common::RW,
5134        >::from_register(self, 0)
5135    }
5136}
5137impl ::core::default::Default for Adcmpansr0 {
5138    #[inline(always)]
5139    fn default() -> Adcmpansr0 {
5140        <crate::RegValueT<Adcmpansr0_SPEC> as RegisterValue<_>>::new(0)
5141    }
5142}
5143pub mod adcmpansr0 {
5144
5145    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5146    pub struct Cmpcha0_SPEC;
5147    pub type Cmpcha0 = crate::EnumBitfieldStruct<u8, Cmpcha0_SPEC>;
5148    impl Cmpcha0 {
5149        #[doc = "Disable compare function for associated input channel"]
5150        pub const _0: Self = Self::new(0);
5151
5152        #[doc = "Enable compare function for associated input channel"]
5153        pub const _1: Self = Self::new(1);
5154    }
5155    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5156    pub struct Cmpcha1_SPEC;
5157    pub type Cmpcha1 = crate::EnumBitfieldStruct<u8, Cmpcha1_SPEC>;
5158    impl Cmpcha1 {
5159        #[doc = "Disable compare function for associated input channel"]
5160        pub const _0: Self = Self::new(0);
5161
5162        #[doc = "Enable compare function for associated input channel"]
5163        pub const _1: Self = Self::new(1);
5164    }
5165    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5166    pub struct Cmpcha2_SPEC;
5167    pub type Cmpcha2 = crate::EnumBitfieldStruct<u8, Cmpcha2_SPEC>;
5168    impl Cmpcha2 {
5169        #[doc = "Disable compare function for associated input channel"]
5170        pub const _0: Self = Self::new(0);
5171
5172        #[doc = "Enable compare function for associated input channel"]
5173        pub const _1: Self = Self::new(1);
5174    }
5175    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5176    pub struct Cmpcha3_SPEC;
5177    pub type Cmpcha3 = crate::EnumBitfieldStruct<u8, Cmpcha3_SPEC>;
5178    impl Cmpcha3 {
5179        #[doc = "Disable compare function for associated input channel"]
5180        pub const _0: Self = Self::new(0);
5181
5182        #[doc = "Enable compare function for associated input channel"]
5183        pub const _1: Self = Self::new(1);
5184    }
5185    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5186    pub struct Cmpcha4_SPEC;
5187    pub type Cmpcha4 = crate::EnumBitfieldStruct<u8, Cmpcha4_SPEC>;
5188    impl Cmpcha4 {
5189        #[doc = "Disable compare function for associated input channel"]
5190        pub const _0: Self = Self::new(0);
5191
5192        #[doc = "Enable compare function for associated input channel"]
5193        pub const _1: Self = Self::new(1);
5194    }
5195    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5196    pub struct Cmpcha5_SPEC;
5197    pub type Cmpcha5 = crate::EnumBitfieldStruct<u8, Cmpcha5_SPEC>;
5198    impl Cmpcha5 {
5199        #[doc = "Disable compare function for associated input channel"]
5200        pub const _0: Self = Self::new(0);
5201
5202        #[doc = "Enable compare function for associated input channel"]
5203        pub const _1: Self = Self::new(1);
5204    }
5205    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5206    pub struct Cmpcha6_SPEC;
5207    pub type Cmpcha6 = crate::EnumBitfieldStruct<u8, Cmpcha6_SPEC>;
5208    impl Cmpcha6 {
5209        #[doc = "Disable compare function for associated input channel"]
5210        pub const _0: Self = Self::new(0);
5211
5212        #[doc = "Enable compare function for associated input channel"]
5213        pub const _1: Self = Self::new(1);
5214    }
5215    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5216    pub struct Cmpcha7_SPEC;
5217    pub type Cmpcha7 = crate::EnumBitfieldStruct<u8, Cmpcha7_SPEC>;
5218    impl Cmpcha7 {
5219        #[doc = "Disable compare function for associated input channel"]
5220        pub const _0: Self = Self::new(0);
5221
5222        #[doc = "Enable compare function for associated input channel"]
5223        pub const _1: Self = Self::new(1);
5224    }
5225    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5226    pub struct Cmpcha8_SPEC;
5227    pub type Cmpcha8 = crate::EnumBitfieldStruct<u8, Cmpcha8_SPEC>;
5228    impl Cmpcha8 {
5229        #[doc = "Disable compare function for associated input channel"]
5230        pub const _0: Self = Self::new(0);
5231
5232        #[doc = "Enable compare function for associated input channel"]
5233        pub const _1: Self = Self::new(1);
5234    }
5235    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5236    pub struct Cmpcha9_SPEC;
5237    pub type Cmpcha9 = crate::EnumBitfieldStruct<u8, Cmpcha9_SPEC>;
5238    impl Cmpcha9 {
5239        #[doc = "Disable compare function for associated input channel"]
5240        pub const _0: Self = Self::new(0);
5241
5242        #[doc = "Enable compare function for associated input channel"]
5243        pub const _1: Self = Self::new(1);
5244    }
5245    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5246    pub struct Cmpcha12_SPEC;
5247    pub type Cmpcha12 = crate::EnumBitfieldStruct<u8, Cmpcha12_SPEC>;
5248    impl Cmpcha12 {
5249        #[doc = "Disable compare function for associated input channel"]
5250        pub const _0: Self = Self::new(0);
5251
5252        #[doc = "Enable compare function for associated input channel"]
5253        pub const _1: Self = Self::new(1);
5254    }
5255    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5256    pub struct Cmpcha13_SPEC;
5257    pub type Cmpcha13 = crate::EnumBitfieldStruct<u8, Cmpcha13_SPEC>;
5258    impl Cmpcha13 {
5259        #[doc = "Disable compare function for associated input channel"]
5260        pub const _0: Self = Self::new(0);
5261
5262        #[doc = "Enable compare function for associated input channel"]
5263        pub const _1: Self = Self::new(1);
5264    }
5265}
5266#[doc(hidden)]
5267#[derive(Copy, Clone, Eq, PartialEq)]
5268pub struct Adcmpansr1_SPEC;
5269impl crate::sealed::RegSpec for Adcmpansr1_SPEC {
5270    type DataType = u16;
5271}
5272
5273#[doc = "A/D Compare Function Window A Channel Select Register 1"]
5274pub type Adcmpansr1 = crate::RegValueT<Adcmpansr1_SPEC>;
5275
5276impl Adcmpansr1 {
5277    #[doc = "Compare Window A Channel Select"]
5278    #[inline(always)]
5279    pub fn cmpcha16(
5280        self,
5281    ) -> crate::common::RegisterField<
5282        0,
5283        0x1,
5284        1,
5285        0,
5286        adcmpansr1::Cmpcha16,
5287        adcmpansr1::Cmpcha16,
5288        Adcmpansr1_SPEC,
5289        crate::common::RW,
5290    > {
5291        crate::common::RegisterField::<
5292            0,
5293            0x1,
5294            1,
5295            0,
5296            adcmpansr1::Cmpcha16,
5297            adcmpansr1::Cmpcha16,
5298            Adcmpansr1_SPEC,
5299            crate::common::RW,
5300        >::from_register(self, 0)
5301    }
5302
5303    #[doc = "Compare Window A Channel Select"]
5304    #[inline(always)]
5305    pub fn cmpcha17(
5306        self,
5307    ) -> crate::common::RegisterField<
5308        1,
5309        0x1,
5310        1,
5311        0,
5312        adcmpansr1::Cmpcha17,
5313        adcmpansr1::Cmpcha17,
5314        Adcmpansr1_SPEC,
5315        crate::common::RW,
5316    > {
5317        crate::common::RegisterField::<
5318            1,
5319            0x1,
5320            1,
5321            0,
5322            adcmpansr1::Cmpcha17,
5323            adcmpansr1::Cmpcha17,
5324            Adcmpansr1_SPEC,
5325            crate::common::RW,
5326        >::from_register(self, 0)
5327    }
5328
5329    #[doc = "Compare Window A Channel Select"]
5330    #[inline(always)]
5331    pub fn cmpcha18(
5332        self,
5333    ) -> crate::common::RegisterField<
5334        2,
5335        0x1,
5336        1,
5337        0,
5338        adcmpansr1::Cmpcha18,
5339        adcmpansr1::Cmpcha18,
5340        Adcmpansr1_SPEC,
5341        crate::common::RW,
5342    > {
5343        crate::common::RegisterField::<
5344            2,
5345            0x1,
5346            1,
5347            0,
5348            adcmpansr1::Cmpcha18,
5349            adcmpansr1::Cmpcha18,
5350            Adcmpansr1_SPEC,
5351            crate::common::RW,
5352        >::from_register(self, 0)
5353    }
5354
5355    #[doc = "Compare Window A Channel Select"]
5356    #[inline(always)]
5357    pub fn cmpcha19(
5358        self,
5359    ) -> crate::common::RegisterField<
5360        3,
5361        0x1,
5362        1,
5363        0,
5364        adcmpansr1::Cmpcha19,
5365        adcmpansr1::Cmpcha19,
5366        Adcmpansr1_SPEC,
5367        crate::common::RW,
5368    > {
5369        crate::common::RegisterField::<
5370            3,
5371            0x1,
5372            1,
5373            0,
5374            adcmpansr1::Cmpcha19,
5375            adcmpansr1::Cmpcha19,
5376            Adcmpansr1_SPEC,
5377            crate::common::RW,
5378        >::from_register(self, 0)
5379    }
5380
5381    #[doc = "Compare Window A Channel Select"]
5382    #[inline(always)]
5383    pub fn cmpcha20(
5384        self,
5385    ) -> crate::common::RegisterField<
5386        4,
5387        0x1,
5388        1,
5389        0,
5390        adcmpansr1::Cmpcha20,
5391        adcmpansr1::Cmpcha20,
5392        Adcmpansr1_SPEC,
5393        crate::common::RW,
5394    > {
5395        crate::common::RegisterField::<
5396            4,
5397            0x1,
5398            1,
5399            0,
5400            adcmpansr1::Cmpcha20,
5401            adcmpansr1::Cmpcha20,
5402            Adcmpansr1_SPEC,
5403            crate::common::RW,
5404        >::from_register(self, 0)
5405    }
5406
5407    #[doc = "Compare Window A Channel Select"]
5408    #[inline(always)]
5409    pub fn cmpcha21(
5410        self,
5411    ) -> crate::common::RegisterField<
5412        5,
5413        0x1,
5414        1,
5415        0,
5416        adcmpansr1::Cmpcha21,
5417        adcmpansr1::Cmpcha21,
5418        Adcmpansr1_SPEC,
5419        crate::common::RW,
5420    > {
5421        crate::common::RegisterField::<
5422            5,
5423            0x1,
5424            1,
5425            0,
5426            adcmpansr1::Cmpcha21,
5427            adcmpansr1::Cmpcha21,
5428            Adcmpansr1_SPEC,
5429            crate::common::RW,
5430        >::from_register(self, 0)
5431    }
5432
5433    #[doc = "Compare Window A Channel Select"]
5434    #[inline(always)]
5435    pub fn cmpcha22(
5436        self,
5437    ) -> crate::common::RegisterField<
5438        6,
5439        0x1,
5440        1,
5441        0,
5442        adcmpansr1::Cmpcha22,
5443        adcmpansr1::Cmpcha22,
5444        Adcmpansr1_SPEC,
5445        crate::common::RW,
5446    > {
5447        crate::common::RegisterField::<
5448            6,
5449            0x1,
5450            1,
5451            0,
5452            adcmpansr1::Cmpcha22,
5453            adcmpansr1::Cmpcha22,
5454            Adcmpansr1_SPEC,
5455            crate::common::RW,
5456        >::from_register(self, 0)
5457    }
5458}
5459impl ::core::default::Default for Adcmpansr1 {
5460    #[inline(always)]
5461    fn default() -> Adcmpansr1 {
5462        <crate::RegValueT<Adcmpansr1_SPEC> as RegisterValue<_>>::new(0)
5463    }
5464}
5465pub mod adcmpansr1 {
5466
5467    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5468    pub struct Cmpcha16_SPEC;
5469    pub type Cmpcha16 = crate::EnumBitfieldStruct<u8, Cmpcha16_SPEC>;
5470    impl Cmpcha16 {
5471        #[doc = "Disable compare function for associated input channel"]
5472        pub const _0: Self = Self::new(0);
5473
5474        #[doc = "Enable compare function for associated input channel"]
5475        pub const _1: Self = Self::new(1);
5476    }
5477    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5478    pub struct Cmpcha17_SPEC;
5479    pub type Cmpcha17 = crate::EnumBitfieldStruct<u8, Cmpcha17_SPEC>;
5480    impl Cmpcha17 {
5481        #[doc = "Disable compare function for associated input channel"]
5482        pub const _0: Self = Self::new(0);
5483
5484        #[doc = "Enable compare function for associated input channel"]
5485        pub const _1: Self = Self::new(1);
5486    }
5487    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5488    pub struct Cmpcha18_SPEC;
5489    pub type Cmpcha18 = crate::EnumBitfieldStruct<u8, Cmpcha18_SPEC>;
5490    impl Cmpcha18 {
5491        #[doc = "Disable compare function for associated input channel"]
5492        pub const _0: Self = Self::new(0);
5493
5494        #[doc = "Enable compare function for associated input channel"]
5495        pub const _1: Self = Self::new(1);
5496    }
5497    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5498    pub struct Cmpcha19_SPEC;
5499    pub type Cmpcha19 = crate::EnumBitfieldStruct<u8, Cmpcha19_SPEC>;
5500    impl Cmpcha19 {
5501        #[doc = "Disable compare function for associated input channel"]
5502        pub const _0: Self = Self::new(0);
5503
5504        #[doc = "Enable compare function for associated input channel"]
5505        pub const _1: Self = Self::new(1);
5506    }
5507    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5508    pub struct Cmpcha20_SPEC;
5509    pub type Cmpcha20 = crate::EnumBitfieldStruct<u8, Cmpcha20_SPEC>;
5510    impl Cmpcha20 {
5511        #[doc = "Disable compare function for associated input channel"]
5512        pub const _0: Self = Self::new(0);
5513
5514        #[doc = "Enable compare function for associated input channel"]
5515        pub const _1: Self = Self::new(1);
5516    }
5517    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5518    pub struct Cmpcha21_SPEC;
5519    pub type Cmpcha21 = crate::EnumBitfieldStruct<u8, Cmpcha21_SPEC>;
5520    impl Cmpcha21 {
5521        #[doc = "Disable compare function for associated input channel"]
5522        pub const _0: Self = Self::new(0);
5523
5524        #[doc = "Enable compare function for associated input channel"]
5525        pub const _1: Self = Self::new(1);
5526    }
5527    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5528    pub struct Cmpcha22_SPEC;
5529    pub type Cmpcha22 = crate::EnumBitfieldStruct<u8, Cmpcha22_SPEC>;
5530    impl Cmpcha22 {
5531        #[doc = "Disable compare function for associated input channel"]
5532        pub const _0: Self = Self::new(0);
5533
5534        #[doc = "Enable compare function for associated input channel"]
5535        pub const _1: Self = Self::new(1);
5536    }
5537}
5538#[doc(hidden)]
5539#[derive(Copy, Clone, Eq, PartialEq)]
5540pub struct Adcmplr0_SPEC;
5541impl crate::sealed::RegSpec for Adcmplr0_SPEC {
5542    type DataType = u16;
5543}
5544
5545#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
5546pub type Adcmplr0 = crate::RegValueT<Adcmplr0_SPEC>;
5547
5548impl Adcmplr0 {
5549    #[doc = "Compare Window A Comparison Condition Select"]
5550    #[inline(always)]
5551    pub fn cmplcha0(
5552        self,
5553    ) -> crate::common::RegisterField<
5554        0,
5555        0x1,
5556        1,
5557        0,
5558        adcmplr0::Cmplcha0,
5559        adcmplr0::Cmplcha0,
5560        Adcmplr0_SPEC,
5561        crate::common::RW,
5562    > {
5563        crate::common::RegisterField::<
5564            0,
5565            0x1,
5566            1,
5567            0,
5568            adcmplr0::Cmplcha0,
5569            adcmplr0::Cmplcha0,
5570            Adcmplr0_SPEC,
5571            crate::common::RW,
5572        >::from_register(self, 0)
5573    }
5574
5575    #[doc = "Compare Window A Comparison Condition Select"]
5576    #[inline(always)]
5577    pub fn cmplcha1(
5578        self,
5579    ) -> crate::common::RegisterField<
5580        1,
5581        0x1,
5582        1,
5583        0,
5584        adcmplr0::Cmplcha1,
5585        adcmplr0::Cmplcha1,
5586        Adcmplr0_SPEC,
5587        crate::common::RW,
5588    > {
5589        crate::common::RegisterField::<
5590            1,
5591            0x1,
5592            1,
5593            0,
5594            adcmplr0::Cmplcha1,
5595            adcmplr0::Cmplcha1,
5596            Adcmplr0_SPEC,
5597            crate::common::RW,
5598        >::from_register(self, 0)
5599    }
5600
5601    #[doc = "Compare Window A Comparison Condition Select"]
5602    #[inline(always)]
5603    pub fn cmplcha2(
5604        self,
5605    ) -> crate::common::RegisterField<
5606        2,
5607        0x1,
5608        1,
5609        0,
5610        adcmplr0::Cmplcha2,
5611        adcmplr0::Cmplcha2,
5612        Adcmplr0_SPEC,
5613        crate::common::RW,
5614    > {
5615        crate::common::RegisterField::<
5616            2,
5617            0x1,
5618            1,
5619            0,
5620            adcmplr0::Cmplcha2,
5621            adcmplr0::Cmplcha2,
5622            Adcmplr0_SPEC,
5623            crate::common::RW,
5624        >::from_register(self, 0)
5625    }
5626
5627    #[doc = "Compare Window A Comparison Condition Select"]
5628    #[inline(always)]
5629    pub fn cmplcha3(
5630        self,
5631    ) -> crate::common::RegisterField<
5632        3,
5633        0x1,
5634        1,
5635        0,
5636        adcmplr0::Cmplcha3,
5637        adcmplr0::Cmplcha3,
5638        Adcmplr0_SPEC,
5639        crate::common::RW,
5640    > {
5641        crate::common::RegisterField::<
5642            3,
5643            0x1,
5644            1,
5645            0,
5646            adcmplr0::Cmplcha3,
5647            adcmplr0::Cmplcha3,
5648            Adcmplr0_SPEC,
5649            crate::common::RW,
5650        >::from_register(self, 0)
5651    }
5652
5653    #[doc = "Compare Window A Comparison Condition Select"]
5654    #[inline(always)]
5655    pub fn cmplcha4(
5656        self,
5657    ) -> crate::common::RegisterField<
5658        4,
5659        0x1,
5660        1,
5661        0,
5662        adcmplr0::Cmplcha4,
5663        adcmplr0::Cmplcha4,
5664        Adcmplr0_SPEC,
5665        crate::common::RW,
5666    > {
5667        crate::common::RegisterField::<
5668            4,
5669            0x1,
5670            1,
5671            0,
5672            adcmplr0::Cmplcha4,
5673            adcmplr0::Cmplcha4,
5674            Adcmplr0_SPEC,
5675            crate::common::RW,
5676        >::from_register(self, 0)
5677    }
5678
5679    #[doc = "Compare Window A Comparison Condition Select"]
5680    #[inline(always)]
5681    pub fn cmplcha5(
5682        self,
5683    ) -> crate::common::RegisterField<
5684        5,
5685        0x1,
5686        1,
5687        0,
5688        adcmplr0::Cmplcha5,
5689        adcmplr0::Cmplcha5,
5690        Adcmplr0_SPEC,
5691        crate::common::RW,
5692    > {
5693        crate::common::RegisterField::<
5694            5,
5695            0x1,
5696            1,
5697            0,
5698            adcmplr0::Cmplcha5,
5699            adcmplr0::Cmplcha5,
5700            Adcmplr0_SPEC,
5701            crate::common::RW,
5702        >::from_register(self, 0)
5703    }
5704
5705    #[doc = "Compare Window A Comparison Condition Select"]
5706    #[inline(always)]
5707    pub fn cmplcha6(
5708        self,
5709    ) -> crate::common::RegisterField<
5710        6,
5711        0x1,
5712        1,
5713        0,
5714        adcmplr0::Cmplcha6,
5715        adcmplr0::Cmplcha6,
5716        Adcmplr0_SPEC,
5717        crate::common::RW,
5718    > {
5719        crate::common::RegisterField::<
5720            6,
5721            0x1,
5722            1,
5723            0,
5724            adcmplr0::Cmplcha6,
5725            adcmplr0::Cmplcha6,
5726            Adcmplr0_SPEC,
5727            crate::common::RW,
5728        >::from_register(self, 0)
5729    }
5730
5731    #[doc = "Compare Window A Comparison Condition Select"]
5732    #[inline(always)]
5733    pub fn cmplcha7(
5734        self,
5735    ) -> crate::common::RegisterField<
5736        7,
5737        0x1,
5738        1,
5739        0,
5740        adcmplr0::Cmplcha7,
5741        adcmplr0::Cmplcha7,
5742        Adcmplr0_SPEC,
5743        crate::common::RW,
5744    > {
5745        crate::common::RegisterField::<
5746            7,
5747            0x1,
5748            1,
5749            0,
5750            adcmplr0::Cmplcha7,
5751            adcmplr0::Cmplcha7,
5752            Adcmplr0_SPEC,
5753            crate::common::RW,
5754        >::from_register(self, 0)
5755    }
5756
5757    #[doc = "Compare Window A Comparison Condition Select"]
5758    #[inline(always)]
5759    pub fn cmplcha8(
5760        self,
5761    ) -> crate::common::RegisterField<
5762        8,
5763        0x1,
5764        1,
5765        0,
5766        adcmplr0::Cmplcha8,
5767        adcmplr0::Cmplcha8,
5768        Adcmplr0_SPEC,
5769        crate::common::RW,
5770    > {
5771        crate::common::RegisterField::<
5772            8,
5773            0x1,
5774            1,
5775            0,
5776            adcmplr0::Cmplcha8,
5777            adcmplr0::Cmplcha8,
5778            Adcmplr0_SPEC,
5779            crate::common::RW,
5780        >::from_register(self, 0)
5781    }
5782
5783    #[doc = "Compare Window A Comparison Condition Select"]
5784    #[inline(always)]
5785    pub fn cmplcha9(
5786        self,
5787    ) -> crate::common::RegisterField<
5788        9,
5789        0x1,
5790        1,
5791        0,
5792        adcmplr0::Cmplcha9,
5793        adcmplr0::Cmplcha9,
5794        Adcmplr0_SPEC,
5795        crate::common::RW,
5796    > {
5797        crate::common::RegisterField::<
5798            9,
5799            0x1,
5800            1,
5801            0,
5802            adcmplr0::Cmplcha9,
5803            adcmplr0::Cmplcha9,
5804            Adcmplr0_SPEC,
5805            crate::common::RW,
5806        >::from_register(self, 0)
5807    }
5808
5809    #[doc = "Compare Window A Comparison Condition Select"]
5810    #[inline(always)]
5811    pub fn cmplcha12(
5812        self,
5813    ) -> crate::common::RegisterField<
5814        12,
5815        0x1,
5816        1,
5817        0,
5818        adcmplr0::Cmplcha12,
5819        adcmplr0::Cmplcha12,
5820        Adcmplr0_SPEC,
5821        crate::common::RW,
5822    > {
5823        crate::common::RegisterField::<
5824            12,
5825            0x1,
5826            1,
5827            0,
5828            adcmplr0::Cmplcha12,
5829            adcmplr0::Cmplcha12,
5830            Adcmplr0_SPEC,
5831            crate::common::RW,
5832        >::from_register(self, 0)
5833    }
5834
5835    #[doc = "Compare Window A Comparison Condition Select"]
5836    #[inline(always)]
5837    pub fn cmplcha13(
5838        self,
5839    ) -> crate::common::RegisterField<
5840        13,
5841        0x1,
5842        1,
5843        0,
5844        adcmplr0::Cmplcha13,
5845        adcmplr0::Cmplcha13,
5846        Adcmplr0_SPEC,
5847        crate::common::RW,
5848    > {
5849        crate::common::RegisterField::<
5850            13,
5851            0x1,
5852            1,
5853            0,
5854            adcmplr0::Cmplcha13,
5855            adcmplr0::Cmplcha13,
5856            Adcmplr0_SPEC,
5857            crate::common::RW,
5858        >::from_register(self, 0)
5859    }
5860}
5861impl ::core::default::Default for Adcmplr0 {
5862    #[inline(always)]
5863    fn default() -> Adcmplr0 {
5864        <crate::RegValueT<Adcmplr0_SPEC> as RegisterValue<_>>::new(0)
5865    }
5866}
5867pub mod adcmplr0 {
5868
5869    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5870    pub struct Cmplcha0_SPEC;
5871    pub type Cmplcha0 = crate::EnumBitfieldStruct<u8, Cmplcha0_SPEC>;
5872    impl Cmplcha0 {
5873        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5874        pub const _0: Self = Self::new(0);
5875
5876        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5877        pub const _1: Self = Self::new(1);
5878    }
5879    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5880    pub struct Cmplcha1_SPEC;
5881    pub type Cmplcha1 = crate::EnumBitfieldStruct<u8, Cmplcha1_SPEC>;
5882    impl Cmplcha1 {
5883        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5884        pub const _0: Self = Self::new(0);
5885
5886        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5887        pub const _1: Self = Self::new(1);
5888    }
5889    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5890    pub struct Cmplcha2_SPEC;
5891    pub type Cmplcha2 = crate::EnumBitfieldStruct<u8, Cmplcha2_SPEC>;
5892    impl Cmplcha2 {
5893        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5894        pub const _0: Self = Self::new(0);
5895
5896        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5897        pub const _1: Self = Self::new(1);
5898    }
5899    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5900    pub struct Cmplcha3_SPEC;
5901    pub type Cmplcha3 = crate::EnumBitfieldStruct<u8, Cmplcha3_SPEC>;
5902    impl Cmplcha3 {
5903        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5904        pub const _0: Self = Self::new(0);
5905
5906        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5907        pub const _1: Self = Self::new(1);
5908    }
5909    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5910    pub struct Cmplcha4_SPEC;
5911    pub type Cmplcha4 = crate::EnumBitfieldStruct<u8, Cmplcha4_SPEC>;
5912    impl Cmplcha4 {
5913        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5914        pub const _0: Self = Self::new(0);
5915
5916        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5917        pub const _1: Self = Self::new(1);
5918    }
5919    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5920    pub struct Cmplcha5_SPEC;
5921    pub type Cmplcha5 = crate::EnumBitfieldStruct<u8, Cmplcha5_SPEC>;
5922    impl Cmplcha5 {
5923        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5924        pub const _0: Self = Self::new(0);
5925
5926        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5927        pub const _1: Self = Self::new(1);
5928    }
5929    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5930    pub struct Cmplcha6_SPEC;
5931    pub type Cmplcha6 = crate::EnumBitfieldStruct<u8, Cmplcha6_SPEC>;
5932    impl Cmplcha6 {
5933        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5934        pub const _0: Self = Self::new(0);
5935
5936        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5937        pub const _1: Self = Self::new(1);
5938    }
5939    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5940    pub struct Cmplcha7_SPEC;
5941    pub type Cmplcha7 = crate::EnumBitfieldStruct<u8, Cmplcha7_SPEC>;
5942    impl Cmplcha7 {
5943        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5944        pub const _0: Self = Self::new(0);
5945
5946        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5947        pub const _1: Self = Self::new(1);
5948    }
5949    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5950    pub struct Cmplcha8_SPEC;
5951    pub type Cmplcha8 = crate::EnumBitfieldStruct<u8, Cmplcha8_SPEC>;
5952    impl Cmplcha8 {
5953        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5954        pub const _0: Self = Self::new(0);
5955
5956        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5957        pub const _1: Self = Self::new(1);
5958    }
5959    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5960    pub struct Cmplcha9_SPEC;
5961    pub type Cmplcha9 = crate::EnumBitfieldStruct<u8, Cmplcha9_SPEC>;
5962    impl Cmplcha9 {
5963        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5964        pub const _0: Self = Self::new(0);
5965
5966        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5967        pub const _1: Self = Self::new(1);
5968    }
5969    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5970    pub struct Cmplcha12_SPEC;
5971    pub type Cmplcha12 = crate::EnumBitfieldStruct<u8, Cmplcha12_SPEC>;
5972    impl Cmplcha12 {
5973        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5974        pub const _0: Self = Self::new(0);
5975
5976        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5977        pub const _1: Self = Self::new(1);
5978    }
5979    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5980    pub struct Cmplcha13_SPEC;
5981    pub type Cmplcha13 = crate::EnumBitfieldStruct<u8, Cmplcha13_SPEC>;
5982    impl Cmplcha13 {
5983        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
5984        pub const _0: Self = Self::new(0);
5985
5986        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
5987        pub const _1: Self = Self::new(1);
5988    }
5989}
5990#[doc(hidden)]
5991#[derive(Copy, Clone, Eq, PartialEq)]
5992pub struct Adcmplr1_SPEC;
5993impl crate::sealed::RegSpec for Adcmplr1_SPEC {
5994    type DataType = u16;
5995}
5996
5997#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
5998pub type Adcmplr1 = crate::RegValueT<Adcmplr1_SPEC>;
5999
6000impl Adcmplr1 {
6001    #[doc = "Compare Window A Comparison Condition Select"]
6002    #[inline(always)]
6003    pub fn cmplcha16(
6004        self,
6005    ) -> crate::common::RegisterField<
6006        0,
6007        0x1,
6008        1,
6009        0,
6010        adcmplr1::Cmplcha16,
6011        adcmplr1::Cmplcha16,
6012        Adcmplr1_SPEC,
6013        crate::common::RW,
6014    > {
6015        crate::common::RegisterField::<
6016            0,
6017            0x1,
6018            1,
6019            0,
6020            adcmplr1::Cmplcha16,
6021            adcmplr1::Cmplcha16,
6022            Adcmplr1_SPEC,
6023            crate::common::RW,
6024        >::from_register(self, 0)
6025    }
6026
6027    #[doc = "Compare Window A Comparison Condition Select"]
6028    #[inline(always)]
6029    pub fn cmplcha17(
6030        self,
6031    ) -> crate::common::RegisterField<
6032        1,
6033        0x1,
6034        1,
6035        0,
6036        adcmplr1::Cmplcha17,
6037        adcmplr1::Cmplcha17,
6038        Adcmplr1_SPEC,
6039        crate::common::RW,
6040    > {
6041        crate::common::RegisterField::<
6042            1,
6043            0x1,
6044            1,
6045            0,
6046            adcmplr1::Cmplcha17,
6047            adcmplr1::Cmplcha17,
6048            Adcmplr1_SPEC,
6049            crate::common::RW,
6050        >::from_register(self, 0)
6051    }
6052
6053    #[doc = "Compare Window A Comparison Condition Select"]
6054    #[inline(always)]
6055    pub fn cmplcha18(
6056        self,
6057    ) -> crate::common::RegisterField<
6058        2,
6059        0x1,
6060        1,
6061        0,
6062        adcmplr1::Cmplcha18,
6063        adcmplr1::Cmplcha18,
6064        Adcmplr1_SPEC,
6065        crate::common::RW,
6066    > {
6067        crate::common::RegisterField::<
6068            2,
6069            0x1,
6070            1,
6071            0,
6072            adcmplr1::Cmplcha18,
6073            adcmplr1::Cmplcha18,
6074            Adcmplr1_SPEC,
6075            crate::common::RW,
6076        >::from_register(self, 0)
6077    }
6078
6079    #[doc = "Compare Window A Comparison Condition Select"]
6080    #[inline(always)]
6081    pub fn cmplcha19(
6082        self,
6083    ) -> crate::common::RegisterField<
6084        3,
6085        0x1,
6086        1,
6087        0,
6088        adcmplr1::Cmplcha19,
6089        adcmplr1::Cmplcha19,
6090        Adcmplr1_SPEC,
6091        crate::common::RW,
6092    > {
6093        crate::common::RegisterField::<
6094            3,
6095            0x1,
6096            1,
6097            0,
6098            adcmplr1::Cmplcha19,
6099            adcmplr1::Cmplcha19,
6100            Adcmplr1_SPEC,
6101            crate::common::RW,
6102        >::from_register(self, 0)
6103    }
6104
6105    #[doc = "Compare Window A Comparison Condition Select"]
6106    #[inline(always)]
6107    pub fn cmplcha20(
6108        self,
6109    ) -> crate::common::RegisterField<
6110        4,
6111        0x1,
6112        1,
6113        0,
6114        adcmplr1::Cmplcha20,
6115        adcmplr1::Cmplcha20,
6116        Adcmplr1_SPEC,
6117        crate::common::RW,
6118    > {
6119        crate::common::RegisterField::<
6120            4,
6121            0x1,
6122            1,
6123            0,
6124            adcmplr1::Cmplcha20,
6125            adcmplr1::Cmplcha20,
6126            Adcmplr1_SPEC,
6127            crate::common::RW,
6128        >::from_register(self, 0)
6129    }
6130
6131    #[doc = "Compare Window A Comparison Condition Select"]
6132    #[inline(always)]
6133    pub fn cmplcha21(
6134        self,
6135    ) -> crate::common::RegisterField<
6136        5,
6137        0x1,
6138        1,
6139        0,
6140        adcmplr1::Cmplcha21,
6141        adcmplr1::Cmplcha21,
6142        Adcmplr1_SPEC,
6143        crate::common::RW,
6144    > {
6145        crate::common::RegisterField::<
6146            5,
6147            0x1,
6148            1,
6149            0,
6150            adcmplr1::Cmplcha21,
6151            adcmplr1::Cmplcha21,
6152            Adcmplr1_SPEC,
6153            crate::common::RW,
6154        >::from_register(self, 0)
6155    }
6156
6157    #[doc = "Compare Window A Comparison Condition Select"]
6158    #[inline(always)]
6159    pub fn cmplcha22(
6160        self,
6161    ) -> crate::common::RegisterField<
6162        6,
6163        0x1,
6164        1,
6165        0,
6166        adcmplr1::Cmplcha22,
6167        adcmplr1::Cmplcha22,
6168        Adcmplr1_SPEC,
6169        crate::common::RW,
6170    > {
6171        crate::common::RegisterField::<
6172            6,
6173            0x1,
6174            1,
6175            0,
6176            adcmplr1::Cmplcha22,
6177            adcmplr1::Cmplcha22,
6178            Adcmplr1_SPEC,
6179            crate::common::RW,
6180        >::from_register(self, 0)
6181    }
6182}
6183impl ::core::default::Default for Adcmplr1 {
6184    #[inline(always)]
6185    fn default() -> Adcmplr1 {
6186        <crate::RegValueT<Adcmplr1_SPEC> as RegisterValue<_>>::new(0)
6187    }
6188}
6189pub mod adcmplr1 {
6190
6191    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6192    pub struct Cmplcha16_SPEC;
6193    pub type Cmplcha16 = crate::EnumBitfieldStruct<u8, Cmplcha16_SPEC>;
6194    impl Cmplcha16 {
6195        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6196        pub const _0: Self = Self::new(0);
6197
6198        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6199        pub const _1: Self = Self::new(1);
6200    }
6201    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6202    pub struct Cmplcha17_SPEC;
6203    pub type Cmplcha17 = crate::EnumBitfieldStruct<u8, Cmplcha17_SPEC>;
6204    impl Cmplcha17 {
6205        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6206        pub const _0: Self = Self::new(0);
6207
6208        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6209        pub const _1: Self = Self::new(1);
6210    }
6211    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6212    pub struct Cmplcha18_SPEC;
6213    pub type Cmplcha18 = crate::EnumBitfieldStruct<u8, Cmplcha18_SPEC>;
6214    impl Cmplcha18 {
6215        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6216        pub const _0: Self = Self::new(0);
6217
6218        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6219        pub const _1: Self = Self::new(1);
6220    }
6221    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6222    pub struct Cmplcha19_SPEC;
6223    pub type Cmplcha19 = crate::EnumBitfieldStruct<u8, Cmplcha19_SPEC>;
6224    impl Cmplcha19 {
6225        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6226        pub const _0: Self = Self::new(0);
6227
6228        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6229        pub const _1: Self = Self::new(1);
6230    }
6231    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6232    pub struct Cmplcha20_SPEC;
6233    pub type Cmplcha20 = crate::EnumBitfieldStruct<u8, Cmplcha20_SPEC>;
6234    impl Cmplcha20 {
6235        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6236        pub const _0: Self = Self::new(0);
6237
6238        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6239        pub const _1: Self = Self::new(1);
6240    }
6241    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6242    pub struct Cmplcha21_SPEC;
6243    pub type Cmplcha21 = crate::EnumBitfieldStruct<u8, Cmplcha21_SPEC>;
6244    impl Cmplcha21 {
6245        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6246        pub const _0: Self = Self::new(0);
6247
6248        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6249        pub const _1: Self = Self::new(1);
6250    }
6251    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6252    pub struct Cmplcha22_SPEC;
6253    pub type Cmplcha22 = crate::EnumBitfieldStruct<u8, Cmplcha22_SPEC>;
6254    impl Cmplcha22 {
6255        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADCMPDR0 value, or ADCMPDR1 value < A/D-converted value"]
6256        pub const _0: Self = Self::new(0);
6257
6258        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADCMPDR0 value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADCMPDR0 value < A/D-converted value < ADCMPDR1 value"]
6259        pub const _1: Self = Self::new(1);
6260    }
6261}
6262#[doc(hidden)]
6263#[derive(Copy, Clone, Eq, PartialEq)]
6264pub struct Adcmpdr_SPEC;
6265impl crate::sealed::RegSpec for Adcmpdr_SPEC {
6266    type DataType = u16;
6267}
6268
6269#[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register"]
6270pub type Adcmpdr = crate::RegValueT<Adcmpdr_SPEC>;
6271
6272impl NoBitfieldReg<Adcmpdr_SPEC> for Adcmpdr {}
6273impl ::core::default::Default for Adcmpdr {
6274    #[inline(always)]
6275    fn default() -> Adcmpdr {
6276        <crate::RegValueT<Adcmpdr_SPEC> as RegisterValue<_>>::new(0)
6277    }
6278}
6279
6280#[doc(hidden)]
6281#[derive(Copy, Clone, Eq, PartialEq)]
6282pub struct Adcmpsr0_SPEC;
6283impl crate::sealed::RegSpec for Adcmpsr0_SPEC {
6284    type DataType = u16;
6285}
6286
6287#[doc = "A/D Compare Function Window A Channel Status Register 0"]
6288pub type Adcmpsr0 = crate::RegValueT<Adcmpsr0_SPEC>;
6289
6290impl Adcmpsr0 {
6291    #[doc = "Compare Window A Flag"]
6292    #[inline(always)]
6293    pub fn cmpstcha0(
6294        self,
6295    ) -> crate::common::RegisterField<
6296        0,
6297        0x1,
6298        1,
6299        0,
6300        adcmpsr0::Cmpstcha0,
6301        adcmpsr0::Cmpstcha0,
6302        Adcmpsr0_SPEC,
6303        crate::common::RW,
6304    > {
6305        crate::common::RegisterField::<
6306            0,
6307            0x1,
6308            1,
6309            0,
6310            adcmpsr0::Cmpstcha0,
6311            adcmpsr0::Cmpstcha0,
6312            Adcmpsr0_SPEC,
6313            crate::common::RW,
6314        >::from_register(self, 0)
6315    }
6316
6317    #[doc = "Compare Window A Flag"]
6318    #[inline(always)]
6319    pub fn cmpstcha1(
6320        self,
6321    ) -> crate::common::RegisterField<
6322        1,
6323        0x1,
6324        1,
6325        0,
6326        adcmpsr0::Cmpstcha1,
6327        adcmpsr0::Cmpstcha1,
6328        Adcmpsr0_SPEC,
6329        crate::common::RW,
6330    > {
6331        crate::common::RegisterField::<
6332            1,
6333            0x1,
6334            1,
6335            0,
6336            adcmpsr0::Cmpstcha1,
6337            adcmpsr0::Cmpstcha1,
6338            Adcmpsr0_SPEC,
6339            crate::common::RW,
6340        >::from_register(self, 0)
6341    }
6342
6343    #[doc = "Compare Window A Flag"]
6344    #[inline(always)]
6345    pub fn cmpstcha2(
6346        self,
6347    ) -> crate::common::RegisterField<
6348        2,
6349        0x1,
6350        1,
6351        0,
6352        adcmpsr0::Cmpstcha2,
6353        adcmpsr0::Cmpstcha2,
6354        Adcmpsr0_SPEC,
6355        crate::common::RW,
6356    > {
6357        crate::common::RegisterField::<
6358            2,
6359            0x1,
6360            1,
6361            0,
6362            adcmpsr0::Cmpstcha2,
6363            adcmpsr0::Cmpstcha2,
6364            Adcmpsr0_SPEC,
6365            crate::common::RW,
6366        >::from_register(self, 0)
6367    }
6368
6369    #[doc = "Compare Window A Flag"]
6370    #[inline(always)]
6371    pub fn cmpstcha3(
6372        self,
6373    ) -> crate::common::RegisterField<
6374        3,
6375        0x1,
6376        1,
6377        0,
6378        adcmpsr0::Cmpstcha3,
6379        adcmpsr0::Cmpstcha3,
6380        Adcmpsr0_SPEC,
6381        crate::common::RW,
6382    > {
6383        crate::common::RegisterField::<
6384            3,
6385            0x1,
6386            1,
6387            0,
6388            adcmpsr0::Cmpstcha3,
6389            adcmpsr0::Cmpstcha3,
6390            Adcmpsr0_SPEC,
6391            crate::common::RW,
6392        >::from_register(self, 0)
6393    }
6394
6395    #[doc = "Compare Window A Flag"]
6396    #[inline(always)]
6397    pub fn cmpstcha4(
6398        self,
6399    ) -> crate::common::RegisterField<
6400        4,
6401        0x1,
6402        1,
6403        0,
6404        adcmpsr0::Cmpstcha4,
6405        adcmpsr0::Cmpstcha4,
6406        Adcmpsr0_SPEC,
6407        crate::common::RW,
6408    > {
6409        crate::common::RegisterField::<
6410            4,
6411            0x1,
6412            1,
6413            0,
6414            adcmpsr0::Cmpstcha4,
6415            adcmpsr0::Cmpstcha4,
6416            Adcmpsr0_SPEC,
6417            crate::common::RW,
6418        >::from_register(self, 0)
6419    }
6420
6421    #[doc = "Compare Window A Flag"]
6422    #[inline(always)]
6423    pub fn cmpstcha5(
6424        self,
6425    ) -> crate::common::RegisterField<
6426        5,
6427        0x1,
6428        1,
6429        0,
6430        adcmpsr0::Cmpstcha5,
6431        adcmpsr0::Cmpstcha5,
6432        Adcmpsr0_SPEC,
6433        crate::common::RW,
6434    > {
6435        crate::common::RegisterField::<
6436            5,
6437            0x1,
6438            1,
6439            0,
6440            adcmpsr0::Cmpstcha5,
6441            adcmpsr0::Cmpstcha5,
6442            Adcmpsr0_SPEC,
6443            crate::common::RW,
6444        >::from_register(self, 0)
6445    }
6446
6447    #[doc = "Compare Window A Flag"]
6448    #[inline(always)]
6449    pub fn cmpstcha6(
6450        self,
6451    ) -> crate::common::RegisterField<
6452        6,
6453        0x1,
6454        1,
6455        0,
6456        adcmpsr0::Cmpstcha6,
6457        adcmpsr0::Cmpstcha6,
6458        Adcmpsr0_SPEC,
6459        crate::common::RW,
6460    > {
6461        crate::common::RegisterField::<
6462            6,
6463            0x1,
6464            1,
6465            0,
6466            adcmpsr0::Cmpstcha6,
6467            adcmpsr0::Cmpstcha6,
6468            Adcmpsr0_SPEC,
6469            crate::common::RW,
6470        >::from_register(self, 0)
6471    }
6472
6473    #[doc = "Compare Window A Flag"]
6474    #[inline(always)]
6475    pub fn cmpstcha7(
6476        self,
6477    ) -> crate::common::RegisterField<
6478        7,
6479        0x1,
6480        1,
6481        0,
6482        adcmpsr0::Cmpstcha7,
6483        adcmpsr0::Cmpstcha7,
6484        Adcmpsr0_SPEC,
6485        crate::common::RW,
6486    > {
6487        crate::common::RegisterField::<
6488            7,
6489            0x1,
6490            1,
6491            0,
6492            adcmpsr0::Cmpstcha7,
6493            adcmpsr0::Cmpstcha7,
6494            Adcmpsr0_SPEC,
6495            crate::common::RW,
6496        >::from_register(self, 0)
6497    }
6498
6499    #[doc = "Compare Window A Flag"]
6500    #[inline(always)]
6501    pub fn cmpstcha8(
6502        self,
6503    ) -> crate::common::RegisterField<
6504        8,
6505        0x1,
6506        1,
6507        0,
6508        adcmpsr0::Cmpstcha8,
6509        adcmpsr0::Cmpstcha8,
6510        Adcmpsr0_SPEC,
6511        crate::common::RW,
6512    > {
6513        crate::common::RegisterField::<
6514            8,
6515            0x1,
6516            1,
6517            0,
6518            adcmpsr0::Cmpstcha8,
6519            adcmpsr0::Cmpstcha8,
6520            Adcmpsr0_SPEC,
6521            crate::common::RW,
6522        >::from_register(self, 0)
6523    }
6524
6525    #[doc = "Compare Window A Flag"]
6526    #[inline(always)]
6527    pub fn cmpstcha9(
6528        self,
6529    ) -> crate::common::RegisterField<
6530        9,
6531        0x1,
6532        1,
6533        0,
6534        adcmpsr0::Cmpstcha9,
6535        adcmpsr0::Cmpstcha9,
6536        Adcmpsr0_SPEC,
6537        crate::common::RW,
6538    > {
6539        crate::common::RegisterField::<
6540            9,
6541            0x1,
6542            1,
6543            0,
6544            adcmpsr0::Cmpstcha9,
6545            adcmpsr0::Cmpstcha9,
6546            Adcmpsr0_SPEC,
6547            crate::common::RW,
6548        >::from_register(self, 0)
6549    }
6550
6551    #[doc = "Compare Window A Flag"]
6552    #[inline(always)]
6553    pub fn cmpstcha12(
6554        self,
6555    ) -> crate::common::RegisterField<
6556        12,
6557        0x1,
6558        1,
6559        0,
6560        adcmpsr0::Cmpstcha12,
6561        adcmpsr0::Cmpstcha12,
6562        Adcmpsr0_SPEC,
6563        crate::common::RW,
6564    > {
6565        crate::common::RegisterField::<
6566            12,
6567            0x1,
6568            1,
6569            0,
6570            adcmpsr0::Cmpstcha12,
6571            adcmpsr0::Cmpstcha12,
6572            Adcmpsr0_SPEC,
6573            crate::common::RW,
6574        >::from_register(self, 0)
6575    }
6576
6577    #[doc = "Compare Window A Flag"]
6578    #[inline(always)]
6579    pub fn cmpstcha13(
6580        self,
6581    ) -> crate::common::RegisterField<
6582        13,
6583        0x1,
6584        1,
6585        0,
6586        adcmpsr0::Cmpstcha13,
6587        adcmpsr0::Cmpstcha13,
6588        Adcmpsr0_SPEC,
6589        crate::common::RW,
6590    > {
6591        crate::common::RegisterField::<
6592            13,
6593            0x1,
6594            1,
6595            0,
6596            adcmpsr0::Cmpstcha13,
6597            adcmpsr0::Cmpstcha13,
6598            Adcmpsr0_SPEC,
6599            crate::common::RW,
6600        >::from_register(self, 0)
6601    }
6602}
6603impl ::core::default::Default for Adcmpsr0 {
6604    #[inline(always)]
6605    fn default() -> Adcmpsr0 {
6606        <crate::RegValueT<Adcmpsr0_SPEC> as RegisterValue<_>>::new(0)
6607    }
6608}
6609pub mod adcmpsr0 {
6610
6611    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6612    pub struct Cmpstcha0_SPEC;
6613    pub type Cmpstcha0 = crate::EnumBitfieldStruct<u8, Cmpstcha0_SPEC>;
6614    impl Cmpstcha0 {
6615        #[doc = "Comparison conditions are not met."]
6616        pub const _0: Self = Self::new(0);
6617
6618        #[doc = "Comparison conditions are met."]
6619        pub const _1: Self = Self::new(1);
6620    }
6621    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6622    pub struct Cmpstcha1_SPEC;
6623    pub type Cmpstcha1 = crate::EnumBitfieldStruct<u8, Cmpstcha1_SPEC>;
6624    impl Cmpstcha1 {
6625        #[doc = "Comparison conditions are not met."]
6626        pub const _0: Self = Self::new(0);
6627
6628        #[doc = "Comparison conditions are met."]
6629        pub const _1: Self = Self::new(1);
6630    }
6631    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6632    pub struct Cmpstcha2_SPEC;
6633    pub type Cmpstcha2 = crate::EnumBitfieldStruct<u8, Cmpstcha2_SPEC>;
6634    impl Cmpstcha2 {
6635        #[doc = "Comparison conditions are not met."]
6636        pub const _0: Self = Self::new(0);
6637
6638        #[doc = "Comparison conditions are met."]
6639        pub const _1: Self = Self::new(1);
6640    }
6641    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6642    pub struct Cmpstcha3_SPEC;
6643    pub type Cmpstcha3 = crate::EnumBitfieldStruct<u8, Cmpstcha3_SPEC>;
6644    impl Cmpstcha3 {
6645        #[doc = "Comparison conditions are not met."]
6646        pub const _0: Self = Self::new(0);
6647
6648        #[doc = "Comparison conditions are met."]
6649        pub const _1: Self = Self::new(1);
6650    }
6651    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6652    pub struct Cmpstcha4_SPEC;
6653    pub type Cmpstcha4 = crate::EnumBitfieldStruct<u8, Cmpstcha4_SPEC>;
6654    impl Cmpstcha4 {
6655        #[doc = "Comparison conditions are not met."]
6656        pub const _0: Self = Self::new(0);
6657
6658        #[doc = "Comparison conditions are met."]
6659        pub const _1: Self = Self::new(1);
6660    }
6661    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6662    pub struct Cmpstcha5_SPEC;
6663    pub type Cmpstcha5 = crate::EnumBitfieldStruct<u8, Cmpstcha5_SPEC>;
6664    impl Cmpstcha5 {
6665        #[doc = "Comparison conditions are not met."]
6666        pub const _0: Self = Self::new(0);
6667
6668        #[doc = "Comparison conditions are met."]
6669        pub const _1: Self = Self::new(1);
6670    }
6671    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6672    pub struct Cmpstcha6_SPEC;
6673    pub type Cmpstcha6 = crate::EnumBitfieldStruct<u8, Cmpstcha6_SPEC>;
6674    impl Cmpstcha6 {
6675        #[doc = "Comparison conditions are not met."]
6676        pub const _0: Self = Self::new(0);
6677
6678        #[doc = "Comparison conditions are met."]
6679        pub const _1: Self = Self::new(1);
6680    }
6681    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6682    pub struct Cmpstcha7_SPEC;
6683    pub type Cmpstcha7 = crate::EnumBitfieldStruct<u8, Cmpstcha7_SPEC>;
6684    impl Cmpstcha7 {
6685        #[doc = "Comparison conditions are not met."]
6686        pub const _0: Self = Self::new(0);
6687
6688        #[doc = "Comparison conditions are met."]
6689        pub const _1: Self = Self::new(1);
6690    }
6691    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6692    pub struct Cmpstcha8_SPEC;
6693    pub type Cmpstcha8 = crate::EnumBitfieldStruct<u8, Cmpstcha8_SPEC>;
6694    impl Cmpstcha8 {
6695        #[doc = "Comparison conditions are not met."]
6696        pub const _0: Self = Self::new(0);
6697
6698        #[doc = "Comparison conditions are met."]
6699        pub const _1: Self = Self::new(1);
6700    }
6701    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6702    pub struct Cmpstcha9_SPEC;
6703    pub type Cmpstcha9 = crate::EnumBitfieldStruct<u8, Cmpstcha9_SPEC>;
6704    impl Cmpstcha9 {
6705        #[doc = "Comparison conditions are not met."]
6706        pub const _0: Self = Self::new(0);
6707
6708        #[doc = "Comparison conditions are met."]
6709        pub const _1: Self = Self::new(1);
6710    }
6711    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6712    pub struct Cmpstcha12_SPEC;
6713    pub type Cmpstcha12 = crate::EnumBitfieldStruct<u8, Cmpstcha12_SPEC>;
6714    impl Cmpstcha12 {
6715        #[doc = "Comparison conditions are not met."]
6716        pub const _0: Self = Self::new(0);
6717
6718        #[doc = "Comparison conditions are met."]
6719        pub const _1: Self = Self::new(1);
6720    }
6721    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6722    pub struct Cmpstcha13_SPEC;
6723    pub type Cmpstcha13 = crate::EnumBitfieldStruct<u8, Cmpstcha13_SPEC>;
6724    impl Cmpstcha13 {
6725        #[doc = "Comparison conditions are not met."]
6726        pub const _0: Self = Self::new(0);
6727
6728        #[doc = "Comparison conditions are met."]
6729        pub const _1: Self = Self::new(1);
6730    }
6731}
6732#[doc(hidden)]
6733#[derive(Copy, Clone, Eq, PartialEq)]
6734pub struct Adcmpsr1_SPEC;
6735impl crate::sealed::RegSpec for Adcmpsr1_SPEC {
6736    type DataType = u16;
6737}
6738
6739#[doc = "A/D Compare Function Window A Channel Status Register1"]
6740pub type Adcmpsr1 = crate::RegValueT<Adcmpsr1_SPEC>;
6741
6742impl Adcmpsr1 {
6743    #[doc = "Compare Window A Flag"]
6744    #[inline(always)]
6745    pub fn cmpstcha16(
6746        self,
6747    ) -> crate::common::RegisterField<
6748        0,
6749        0x1,
6750        1,
6751        0,
6752        adcmpsr1::Cmpstcha16,
6753        adcmpsr1::Cmpstcha16,
6754        Adcmpsr1_SPEC,
6755        crate::common::RW,
6756    > {
6757        crate::common::RegisterField::<
6758            0,
6759            0x1,
6760            1,
6761            0,
6762            adcmpsr1::Cmpstcha16,
6763            adcmpsr1::Cmpstcha16,
6764            Adcmpsr1_SPEC,
6765            crate::common::RW,
6766        >::from_register(self, 0)
6767    }
6768
6769    #[doc = "Compare Window A Flag"]
6770    #[inline(always)]
6771    pub fn cmpstcha17(
6772        self,
6773    ) -> crate::common::RegisterField<
6774        1,
6775        0x1,
6776        1,
6777        0,
6778        adcmpsr1::Cmpstcha17,
6779        adcmpsr1::Cmpstcha17,
6780        Adcmpsr1_SPEC,
6781        crate::common::RW,
6782    > {
6783        crate::common::RegisterField::<
6784            1,
6785            0x1,
6786            1,
6787            0,
6788            adcmpsr1::Cmpstcha17,
6789            adcmpsr1::Cmpstcha17,
6790            Adcmpsr1_SPEC,
6791            crate::common::RW,
6792        >::from_register(self, 0)
6793    }
6794
6795    #[doc = "Compare Window A Flag"]
6796    #[inline(always)]
6797    pub fn cmpstcha18(
6798        self,
6799    ) -> crate::common::RegisterField<
6800        2,
6801        0x1,
6802        1,
6803        0,
6804        adcmpsr1::Cmpstcha18,
6805        adcmpsr1::Cmpstcha18,
6806        Adcmpsr1_SPEC,
6807        crate::common::RW,
6808    > {
6809        crate::common::RegisterField::<
6810            2,
6811            0x1,
6812            1,
6813            0,
6814            adcmpsr1::Cmpstcha18,
6815            adcmpsr1::Cmpstcha18,
6816            Adcmpsr1_SPEC,
6817            crate::common::RW,
6818        >::from_register(self, 0)
6819    }
6820
6821    #[doc = "Compare Window A Flag"]
6822    #[inline(always)]
6823    pub fn cmpstcha19(
6824        self,
6825    ) -> crate::common::RegisterField<
6826        3,
6827        0x1,
6828        1,
6829        0,
6830        adcmpsr1::Cmpstcha19,
6831        adcmpsr1::Cmpstcha19,
6832        Adcmpsr1_SPEC,
6833        crate::common::RW,
6834    > {
6835        crate::common::RegisterField::<
6836            3,
6837            0x1,
6838            1,
6839            0,
6840            adcmpsr1::Cmpstcha19,
6841            adcmpsr1::Cmpstcha19,
6842            Adcmpsr1_SPEC,
6843            crate::common::RW,
6844        >::from_register(self, 0)
6845    }
6846
6847    #[doc = "Compare Window A Flag"]
6848    #[inline(always)]
6849    pub fn cmpstcha20(
6850        self,
6851    ) -> crate::common::RegisterField<
6852        4,
6853        0x1,
6854        1,
6855        0,
6856        adcmpsr1::Cmpstcha20,
6857        adcmpsr1::Cmpstcha20,
6858        Adcmpsr1_SPEC,
6859        crate::common::RW,
6860    > {
6861        crate::common::RegisterField::<
6862            4,
6863            0x1,
6864            1,
6865            0,
6866            adcmpsr1::Cmpstcha20,
6867            adcmpsr1::Cmpstcha20,
6868            Adcmpsr1_SPEC,
6869            crate::common::RW,
6870        >::from_register(self, 0)
6871    }
6872
6873    #[doc = "Compare Window A Flag"]
6874    #[inline(always)]
6875    pub fn cmpstcha21(
6876        self,
6877    ) -> crate::common::RegisterField<
6878        5,
6879        0x1,
6880        1,
6881        0,
6882        adcmpsr1::Cmpstcha21,
6883        adcmpsr1::Cmpstcha21,
6884        Adcmpsr1_SPEC,
6885        crate::common::RW,
6886    > {
6887        crate::common::RegisterField::<
6888            5,
6889            0x1,
6890            1,
6891            0,
6892            adcmpsr1::Cmpstcha21,
6893            adcmpsr1::Cmpstcha21,
6894            Adcmpsr1_SPEC,
6895            crate::common::RW,
6896        >::from_register(self, 0)
6897    }
6898
6899    #[doc = "Compare Window A Flag"]
6900    #[inline(always)]
6901    pub fn cmpstcha22(
6902        self,
6903    ) -> crate::common::RegisterField<
6904        6,
6905        0x1,
6906        1,
6907        0,
6908        adcmpsr1::Cmpstcha22,
6909        adcmpsr1::Cmpstcha22,
6910        Adcmpsr1_SPEC,
6911        crate::common::RW,
6912    > {
6913        crate::common::RegisterField::<
6914            6,
6915            0x1,
6916            1,
6917            0,
6918            adcmpsr1::Cmpstcha22,
6919            adcmpsr1::Cmpstcha22,
6920            Adcmpsr1_SPEC,
6921            crate::common::RW,
6922        >::from_register(self, 0)
6923    }
6924}
6925impl ::core::default::Default for Adcmpsr1 {
6926    #[inline(always)]
6927    fn default() -> Adcmpsr1 {
6928        <crate::RegValueT<Adcmpsr1_SPEC> as RegisterValue<_>>::new(0)
6929    }
6930}
6931pub mod adcmpsr1 {
6932
6933    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6934    pub struct Cmpstcha16_SPEC;
6935    pub type Cmpstcha16 = crate::EnumBitfieldStruct<u8, Cmpstcha16_SPEC>;
6936    impl Cmpstcha16 {
6937        #[doc = "Comparison conditions are not met."]
6938        pub const _0: Self = Self::new(0);
6939
6940        #[doc = "Comparison conditions are met."]
6941        pub const _1: Self = Self::new(1);
6942    }
6943    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6944    pub struct Cmpstcha17_SPEC;
6945    pub type Cmpstcha17 = crate::EnumBitfieldStruct<u8, Cmpstcha17_SPEC>;
6946    impl Cmpstcha17 {
6947        #[doc = "Comparison conditions are not met."]
6948        pub const _0: Self = Self::new(0);
6949
6950        #[doc = "Comparison conditions are met."]
6951        pub const _1: Self = Self::new(1);
6952    }
6953    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6954    pub struct Cmpstcha18_SPEC;
6955    pub type Cmpstcha18 = crate::EnumBitfieldStruct<u8, Cmpstcha18_SPEC>;
6956    impl Cmpstcha18 {
6957        #[doc = "Comparison conditions are not met."]
6958        pub const _0: Self = Self::new(0);
6959
6960        #[doc = "Comparison conditions are met."]
6961        pub const _1: Self = Self::new(1);
6962    }
6963    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6964    pub struct Cmpstcha19_SPEC;
6965    pub type Cmpstcha19 = crate::EnumBitfieldStruct<u8, Cmpstcha19_SPEC>;
6966    impl Cmpstcha19 {
6967        #[doc = "Comparison conditions are not met."]
6968        pub const _0: Self = Self::new(0);
6969
6970        #[doc = "Comparison conditions are met."]
6971        pub const _1: Self = Self::new(1);
6972    }
6973    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6974    pub struct Cmpstcha20_SPEC;
6975    pub type Cmpstcha20 = crate::EnumBitfieldStruct<u8, Cmpstcha20_SPEC>;
6976    impl Cmpstcha20 {
6977        #[doc = "Comparison conditions are not met."]
6978        pub const _0: Self = Self::new(0);
6979
6980        #[doc = "Comparison conditions are met."]
6981        pub const _1: Self = Self::new(1);
6982    }
6983    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6984    pub struct Cmpstcha21_SPEC;
6985    pub type Cmpstcha21 = crate::EnumBitfieldStruct<u8, Cmpstcha21_SPEC>;
6986    impl Cmpstcha21 {
6987        #[doc = "Comparison conditions are not met."]
6988        pub const _0: Self = Self::new(0);
6989
6990        #[doc = "Comparison conditions are met."]
6991        pub const _1: Self = Self::new(1);
6992    }
6993    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6994    pub struct Cmpstcha22_SPEC;
6995    pub type Cmpstcha22 = crate::EnumBitfieldStruct<u8, Cmpstcha22_SPEC>;
6996    impl Cmpstcha22 {
6997        #[doc = "Comparison conditions are not met."]
6998        pub const _0: Self = Self::new(0);
6999
7000        #[doc = "Comparison conditions are met."]
7001        pub const _1: Self = Self::new(1);
7002    }
7003}
7004#[doc(hidden)]
7005#[derive(Copy, Clone, Eq, PartialEq)]
7006pub struct Adcmpser_SPEC;
7007impl crate::sealed::RegSpec for Adcmpser_SPEC {
7008    type DataType = u8;
7009}
7010
7011#[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
7012pub type Adcmpser = crate::RegValueT<Adcmpser_SPEC>;
7013
7014impl Adcmpser {
7015    #[doc = "Compare Window A Temperature Sensor Output Compare Flag"]
7016    #[inline(always)]
7017    pub fn cmpsttsa(
7018        self,
7019    ) -> crate::common::RegisterField<
7020        0,
7021        0x1,
7022        1,
7023        0,
7024        adcmpser::Cmpsttsa,
7025        adcmpser::Cmpsttsa,
7026        Adcmpser_SPEC,
7027        crate::common::RW,
7028    > {
7029        crate::common::RegisterField::<
7030            0,
7031            0x1,
7032            1,
7033            0,
7034            adcmpser::Cmpsttsa,
7035            adcmpser::Cmpsttsa,
7036            Adcmpser_SPEC,
7037            crate::common::RW,
7038        >::from_register(self, 0)
7039    }
7040
7041    #[doc = "Compare Window A Internal Reference Voltage Compare Flag"]
7042    #[inline(always)]
7043    pub fn cmpstoca(
7044        self,
7045    ) -> crate::common::RegisterField<
7046        1,
7047        0x1,
7048        1,
7049        0,
7050        adcmpser::Cmpstoca,
7051        adcmpser::Cmpstoca,
7052        Adcmpser_SPEC,
7053        crate::common::RW,
7054    > {
7055        crate::common::RegisterField::<
7056            1,
7057            0x1,
7058            1,
7059            0,
7060            adcmpser::Cmpstoca,
7061            adcmpser::Cmpstoca,
7062            Adcmpser_SPEC,
7063            crate::common::RW,
7064        >::from_register(self, 0)
7065    }
7066}
7067impl ::core::default::Default for Adcmpser {
7068    #[inline(always)]
7069    fn default() -> Adcmpser {
7070        <crate::RegValueT<Adcmpser_SPEC> as RegisterValue<_>>::new(0)
7071    }
7072}
7073pub mod adcmpser {
7074
7075    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7076    pub struct Cmpsttsa_SPEC;
7077    pub type Cmpsttsa = crate::EnumBitfieldStruct<u8, Cmpsttsa_SPEC>;
7078    impl Cmpsttsa {
7079        #[doc = "Comparison conditions are not met."]
7080        pub const _0: Self = Self::new(0);
7081
7082        #[doc = "Comparison conditions are met."]
7083        pub const _1: Self = Self::new(1);
7084    }
7085    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7086    pub struct Cmpstoca_SPEC;
7087    pub type Cmpstoca = crate::EnumBitfieldStruct<u8, Cmpstoca_SPEC>;
7088    impl Cmpstoca {
7089        #[doc = "Comparison conditions are not met."]
7090        pub const _0: Self = Self::new(0);
7091
7092        #[doc = "Comparison conditions are met."]
7093        pub const _1: Self = Self::new(1);
7094    }
7095}
7096#[doc(hidden)]
7097#[derive(Copy, Clone, Eq, PartialEq)]
7098pub struct Adcmpbnsr_SPEC;
7099impl crate::sealed::RegSpec for Adcmpbnsr_SPEC {
7100    type DataType = u8;
7101}
7102
7103#[doc = "A/D Compare Function Window B Channel Select Register"]
7104pub type Adcmpbnsr = crate::RegValueT<Adcmpbnsr_SPEC>;
7105
7106impl Adcmpbnsr {
7107    #[doc = "Compare Window B Channel Select"]
7108    #[inline(always)]
7109    pub fn cmpchb(
7110        self,
7111    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adcmpbnsr_SPEC, crate::common::RW>
7112    {
7113        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adcmpbnsr_SPEC,crate::common::RW>::from_register(self,0)
7114    }
7115
7116    #[doc = "Compare Window B Comparison Condition Setting"]
7117    #[inline(always)]
7118    pub fn cmplb(
7119        self,
7120    ) -> crate::common::RegisterField<
7121        7,
7122        0x1,
7123        1,
7124        0,
7125        adcmpbnsr::Cmplb,
7126        adcmpbnsr::Cmplb,
7127        Adcmpbnsr_SPEC,
7128        crate::common::RW,
7129    > {
7130        crate::common::RegisterField::<
7131            7,
7132            0x1,
7133            1,
7134            0,
7135            adcmpbnsr::Cmplb,
7136            adcmpbnsr::Cmplb,
7137            Adcmpbnsr_SPEC,
7138            crate::common::RW,
7139        >::from_register(self, 0)
7140    }
7141}
7142impl ::core::default::Default for Adcmpbnsr {
7143    #[inline(always)]
7144    fn default() -> Adcmpbnsr {
7145        <crate::RegValueT<Adcmpbnsr_SPEC> as RegisterValue<_>>::new(0)
7146    }
7147}
7148pub mod adcmpbnsr {
7149
7150    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7151    pub struct Cmplb_SPEC;
7152    pub type Cmplb = crate::EnumBitfieldStruct<u8, Cmplb_SPEC>;
7153    impl Cmplb {
7154        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADWINLLB value > A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): A/D-converted value < ADWINLLB value, or ADWINULB value < A/D-converted value"]
7155        pub const _0: Self = Self::new(0);
7156
7157        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0): ADWINLLB value < A/D-converted value When window function is enabled (ADCMPCR.WCMPE = 1): ADWINLLB value < A/D-converted value < ADWINULB value"]
7158        pub const _1: Self = Self::new(1);
7159    }
7160}
7161#[doc(hidden)]
7162#[derive(Copy, Clone, Eq, PartialEq)]
7163pub struct Adwinllb_SPEC;
7164impl crate::sealed::RegSpec for Adwinllb_SPEC {
7165    type DataType = u16;
7166}
7167
7168#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
7169pub type Adwinllb = crate::RegValueT<Adwinllb_SPEC>;
7170
7171impl NoBitfieldReg<Adwinllb_SPEC> for Adwinllb {}
7172impl ::core::default::Default for Adwinllb {
7173    #[inline(always)]
7174    fn default() -> Adwinllb {
7175        <crate::RegValueT<Adwinllb_SPEC> as RegisterValue<_>>::new(0)
7176    }
7177}
7178
7179#[doc(hidden)]
7180#[derive(Copy, Clone, Eq, PartialEq)]
7181pub struct Adwinulb_SPEC;
7182impl crate::sealed::RegSpec for Adwinulb_SPEC {
7183    type DataType = u16;
7184}
7185
7186#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
7187pub type Adwinulb = crate::RegValueT<Adwinulb_SPEC>;
7188
7189impl NoBitfieldReg<Adwinulb_SPEC> for Adwinulb {}
7190impl ::core::default::Default for Adwinulb {
7191    #[inline(always)]
7192    fn default() -> Adwinulb {
7193        <crate::RegValueT<Adwinulb_SPEC> as RegisterValue<_>>::new(0)
7194    }
7195}
7196
7197#[doc(hidden)]
7198#[derive(Copy, Clone, Eq, PartialEq)]
7199pub struct Adcmpbsr_SPEC;
7200impl crate::sealed::RegSpec for Adcmpbsr_SPEC {
7201    type DataType = u8;
7202}
7203
7204#[doc = "A/D Compare Function Window B Status Register"]
7205pub type Adcmpbsr = crate::RegValueT<Adcmpbsr_SPEC>;
7206
7207impl Adcmpbsr {
7208    #[doc = "Compare Window B Flag"]
7209    #[inline(always)]
7210    pub fn cmpstb(
7211        self,
7212    ) -> crate::common::RegisterField<
7213        0,
7214        0x1,
7215        1,
7216        0,
7217        adcmpbsr::Cmpstb,
7218        adcmpbsr::Cmpstb,
7219        Adcmpbsr_SPEC,
7220        crate::common::RW,
7221    > {
7222        crate::common::RegisterField::<
7223            0,
7224            0x1,
7225            1,
7226            0,
7227            adcmpbsr::Cmpstb,
7228            adcmpbsr::Cmpstb,
7229            Adcmpbsr_SPEC,
7230            crate::common::RW,
7231        >::from_register(self, 0)
7232    }
7233}
7234impl ::core::default::Default for Adcmpbsr {
7235    #[inline(always)]
7236    fn default() -> Adcmpbsr {
7237        <crate::RegValueT<Adcmpbsr_SPEC> as RegisterValue<_>>::new(0)
7238    }
7239}
7240pub mod adcmpbsr {
7241
7242    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7243    pub struct Cmpstb_SPEC;
7244    pub type Cmpstb = crate::EnumBitfieldStruct<u8, Cmpstb_SPEC>;
7245    impl Cmpstb {
7246        #[doc = "Comparison conditions are not met."]
7247        pub const _0: Self = Self::new(0);
7248
7249        #[doc = "Comparison conditions are met."]
7250        pub const _1: Self = Self::new(1);
7251    }
7252}
7253#[doc(hidden)]
7254#[derive(Copy, Clone, Eq, PartialEq)]
7255pub struct Adbuf_SPEC;
7256impl crate::sealed::RegSpec for Adbuf_SPEC {
7257    type DataType = u16;
7258}
7259
7260#[doc = "A/D Data Buffer Registers %s"]
7261pub type Adbuf = crate::RegValueT<Adbuf_SPEC>;
7262
7263impl Adbuf {
7264    #[doc = "Converted Value 15 to 0"]
7265    #[inline(always)]
7266    pub fn adbuf(
7267        self,
7268    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adbuf_SPEC, crate::common::R> {
7269        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adbuf_SPEC,crate::common::R>::from_register(self,0)
7270    }
7271}
7272impl ::core::default::Default for Adbuf {
7273    #[inline(always)]
7274    fn default() -> Adbuf {
7275        <crate::RegValueT<Adbuf_SPEC> as RegisterValue<_>>::new(0)
7276    }
7277}
7278
7279#[doc(hidden)]
7280#[derive(Copy, Clone, Eq, PartialEq)]
7281pub struct Adbufen_SPEC;
7282impl crate::sealed::RegSpec for Adbufen_SPEC {
7283    type DataType = u8;
7284}
7285
7286#[doc = "A/D Data Buffer Enable Register"]
7287pub type Adbufen = crate::RegValueT<Adbufen_SPEC>;
7288
7289impl Adbufen {
7290    #[doc = "Data Buffer Enable"]
7291    #[inline(always)]
7292    pub fn bufen(
7293        self,
7294    ) -> crate::common::RegisterField<
7295        0,
7296        0x1,
7297        1,
7298        0,
7299        adbufen::Bufen,
7300        adbufen::Bufen,
7301        Adbufen_SPEC,
7302        crate::common::RW,
7303    > {
7304        crate::common::RegisterField::<
7305            0,
7306            0x1,
7307            1,
7308            0,
7309            adbufen::Bufen,
7310            adbufen::Bufen,
7311            Adbufen_SPEC,
7312            crate::common::RW,
7313        >::from_register(self, 0)
7314    }
7315}
7316impl ::core::default::Default for Adbufen {
7317    #[inline(always)]
7318    fn default() -> Adbufen {
7319        <crate::RegValueT<Adbufen_SPEC> as RegisterValue<_>>::new(0)
7320    }
7321}
7322pub mod adbufen {
7323
7324    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7325    pub struct Bufen_SPEC;
7326    pub type Bufen = crate::EnumBitfieldStruct<u8, Bufen_SPEC>;
7327    impl Bufen {
7328        #[doc = "The data buffer is not used."]
7329        pub const _0: Self = Self::new(0);
7330
7331        #[doc = "The data buffer is used."]
7332        pub const _1: Self = Self::new(1);
7333    }
7334}
7335#[doc(hidden)]
7336#[derive(Copy, Clone, Eq, PartialEq)]
7337pub struct Adbufptr_SPEC;
7338impl crate::sealed::RegSpec for Adbufptr_SPEC {
7339    type DataType = u8;
7340}
7341
7342#[doc = "A/D Data Buffer Pointer Register"]
7343pub type Adbufptr = crate::RegValueT<Adbufptr_SPEC>;
7344
7345impl Adbufptr {
7346    #[doc = "Data Buffer Pointer"]
7347    #[inline(always)]
7348    pub fn bufptr(
7349        self,
7350    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Adbufptr_SPEC, crate::common::RW> {
7351        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Adbufptr_SPEC,crate::common::RW>::from_register(self,0)
7352    }
7353
7354    #[doc = "Pointer Overflow Flag"]
7355    #[inline(always)]
7356    pub fn ptrovf(
7357        self,
7358    ) -> crate::common::RegisterField<
7359        4,
7360        0x1,
7361        1,
7362        0,
7363        adbufptr::Ptrovf,
7364        adbufptr::Ptrovf,
7365        Adbufptr_SPEC,
7366        crate::common::RW,
7367    > {
7368        crate::common::RegisterField::<
7369            4,
7370            0x1,
7371            1,
7372            0,
7373            adbufptr::Ptrovf,
7374            adbufptr::Ptrovf,
7375            Adbufptr_SPEC,
7376            crate::common::RW,
7377        >::from_register(self, 0)
7378    }
7379}
7380impl ::core::default::Default for Adbufptr {
7381    #[inline(always)]
7382    fn default() -> Adbufptr {
7383        <crate::RegValueT<Adbufptr_SPEC> as RegisterValue<_>>::new(0)
7384    }
7385}
7386pub mod adbufptr {
7387
7388    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7389    pub struct Ptrovf_SPEC;
7390    pub type Ptrovf = crate::EnumBitfieldStruct<u8, Ptrovf_SPEC>;
7391    impl Ptrovf {
7392        #[doc = "The data buffer pointer has not overflowed."]
7393        pub const _0: Self = Self::new(0);
7394
7395        #[doc = "The data buffer pointer has overflowed."]
7396        pub const _1: Self = Self::new(1);
7397    }
7398}
7399#[doc(hidden)]
7400#[derive(Copy, Clone, Eq, PartialEq)]
7401pub struct Adsstrl_SPEC;
7402impl crate::sealed::RegSpec for Adsstrl_SPEC {
7403    type DataType = u8;
7404}
7405
7406#[doc = "A/D Sampling State Register"]
7407pub type Adsstrl = crate::RegValueT<Adsstrl_SPEC>;
7408
7409impl Adsstrl {
7410    #[doc = "Sampling Time Setting"]
7411    #[inline(always)]
7412    pub fn sst(
7413        self,
7414    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrl_SPEC, crate::common::RW> {
7415        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrl_SPEC,crate::common::RW>::from_register(self,0)
7416    }
7417}
7418impl ::core::default::Default for Adsstrl {
7419    #[inline(always)]
7420    fn default() -> Adsstrl {
7421        <crate::RegValueT<Adsstrl_SPEC> as RegisterValue<_>>::new(11)
7422    }
7423}
7424
7425#[doc(hidden)]
7426#[derive(Copy, Clone, Eq, PartialEq)]
7427pub struct Adsstrt_SPEC;
7428impl crate::sealed::RegSpec for Adsstrt_SPEC {
7429    type DataType = u8;
7430}
7431
7432#[doc = "A/D Sampling State Register"]
7433pub type Adsstrt = crate::RegValueT<Adsstrt_SPEC>;
7434
7435impl Adsstrt {
7436    #[doc = "Sampling Time Setting"]
7437    #[inline(always)]
7438    pub fn sst(
7439        self,
7440    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrt_SPEC, crate::common::RW> {
7441        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrt_SPEC,crate::common::RW>::from_register(self,0)
7442    }
7443}
7444impl ::core::default::Default for Adsstrt {
7445    #[inline(always)]
7446    fn default() -> Adsstrt {
7447        <crate::RegValueT<Adsstrt_SPEC> as RegisterValue<_>>::new(11)
7448    }
7449}
7450
7451#[doc(hidden)]
7452#[derive(Copy, Clone, Eq, PartialEq)]
7453pub struct Adsstro_SPEC;
7454impl crate::sealed::RegSpec for Adsstro_SPEC {
7455    type DataType = u8;
7456}
7457
7458#[doc = "A/D Sampling State Register"]
7459pub type Adsstro = crate::RegValueT<Adsstro_SPEC>;
7460
7461impl Adsstro {
7462    #[doc = "Sampling Time Setting"]
7463    #[inline(always)]
7464    pub fn sst(
7465        self,
7466    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstro_SPEC, crate::common::RW> {
7467        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstro_SPEC,crate::common::RW>::from_register(self,0)
7468    }
7469}
7470impl ::core::default::Default for Adsstro {
7471    #[inline(always)]
7472    fn default() -> Adsstro {
7473        <crate::RegValueT<Adsstro_SPEC> as RegisterValue<_>>::new(11)
7474    }
7475}
7476
7477#[doc(hidden)]
7478#[derive(Copy, Clone, Eq, PartialEq)]
7479pub struct Adsstr_SPEC;
7480impl crate::sealed::RegSpec for Adsstr_SPEC {
7481    type DataType = u8;
7482}
7483
7484#[doc = "A/D Sampling State Register"]
7485pub type Adsstr = crate::RegValueT<Adsstr_SPEC>;
7486
7487impl Adsstr {
7488    #[doc = "Sampling Time Setting"]
7489    #[inline(always)]
7490    pub fn sst(
7491        self,
7492    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstr_SPEC, crate::common::RW> {
7493        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstr_SPEC,crate::common::RW>::from_register(self,0)
7494    }
7495}
7496impl ::core::default::Default for Adsstr {
7497    #[inline(always)]
7498    fn default() -> Adsstr {
7499        <crate::RegValueT<Adsstr_SPEC> as RegisterValue<_>>::new(11)
7500    }
7501}