ra4e2_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.30.00, with svd2pac 0.6.0 on Thu, 24 Jul 2025 04:48:35 +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        3,
212        0x2,
213    > {
214        unsafe {
215            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x36usize))
216        }
217    }
218    #[inline(always)]
219    pub const fn addr11(&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(0x36usize),
223            )
224        }
225    }
226    #[inline(always)]
227    pub const fn addr12(&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(0x38usize),
231            )
232        }
233    }
234    #[inline(always)]
235    pub const fn addr13(&self) -> &'static crate::common::Reg<self::Addr_SPEC, crate::common::R> {
236        unsafe {
237            crate::common::Reg::<self::Addr_SPEC, crate::common::R>::from_ptr(
238                self._svd2pac_as_ptr().add(0x3ausize),
239            )
240        }
241    }
242
243    #[doc = "A/D Data Registers 16"]
244    #[inline(always)]
245    pub const fn addr16(&self) -> &'static crate::common::Reg<self::Addr16_SPEC, crate::common::R> {
246        unsafe {
247            crate::common::Reg::<self::Addr16_SPEC, crate::common::R>::from_ptr(
248                self._svd2pac_as_ptr().add(64usize),
249            )
250        }
251    }
252
253    #[doc = "A/D Disconnection Detection Control Register"]
254    #[inline(always)]
255    pub const fn addiscr(
256        &self,
257    ) -> &'static crate::common::Reg<self::Addiscr_SPEC, crate::common::RW> {
258        unsafe {
259            crate::common::Reg::<self::Addiscr_SPEC, crate::common::RW>::from_ptr(
260                self._svd2pac_as_ptr().add(122usize),
261            )
262        }
263    }
264
265    #[doc = "A/D Group Scan Priority Control Register"]
266    #[inline(always)]
267    pub const fn adgspcr(
268        &self,
269    ) -> &'static crate::common::Reg<self::Adgspcr_SPEC, crate::common::RW> {
270        unsafe {
271            crate::common::Reg::<self::Adgspcr_SPEC, crate::common::RW>::from_ptr(
272                self._svd2pac_as_ptr().add(128usize),
273            )
274        }
275    }
276
277    #[doc = "A/D Data Duplexing Register A"]
278    #[inline(always)]
279    pub const fn addbldra(
280        &self,
281    ) -> &'static crate::common::Reg<self::Addbldra_SPEC, crate::common::R> {
282        unsafe {
283            crate::common::Reg::<self::Addbldra_SPEC, crate::common::R>::from_ptr(
284                self._svd2pac_as_ptr().add(132usize),
285            )
286        }
287    }
288
289    #[doc = "A/D Data Duplexing Register B"]
290    #[inline(always)]
291    pub const fn addbldrb(
292        &self,
293    ) -> &'static crate::common::Reg<self::Addbldrb_SPEC, crate::common::R> {
294        unsafe {
295            crate::common::Reg::<self::Addbldrb_SPEC, crate::common::R>::from_ptr(
296                self._svd2pac_as_ptr().add(134usize),
297            )
298        }
299    }
300
301    #[doc = "A/D Compare Function Window A/B Status Monitor Register"]
302    #[inline(always)]
303    pub const fn adwinmon(
304        &self,
305    ) -> &'static crate::common::Reg<self::Adwinmon_SPEC, crate::common::R> {
306        unsafe {
307            crate::common::Reg::<self::Adwinmon_SPEC, crate::common::R>::from_ptr(
308                self._svd2pac_as_ptr().add(140usize),
309            )
310        }
311    }
312
313    #[doc = "A/D Compare Function Control Register"]
314    #[inline(always)]
315    pub const fn adcmpcr(
316        &self,
317    ) -> &'static crate::common::Reg<self::Adcmpcr_SPEC, crate::common::RW> {
318        unsafe {
319            crate::common::Reg::<self::Adcmpcr_SPEC, crate::common::RW>::from_ptr(
320                self._svd2pac_as_ptr().add(144usize),
321            )
322        }
323    }
324
325    #[doc = "A/D Compare Function Window A Extended Input Select Register"]
326    #[inline(always)]
327    pub const fn adcmpanser(
328        &self,
329    ) -> &'static crate::common::Reg<self::Adcmpanser_SPEC, crate::common::RW> {
330        unsafe {
331            crate::common::Reg::<self::Adcmpanser_SPEC, crate::common::RW>::from_ptr(
332                self._svd2pac_as_ptr().add(146usize),
333            )
334        }
335    }
336
337    #[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
338    #[inline(always)]
339    pub const fn adcmpler(
340        &self,
341    ) -> &'static crate::common::Reg<self::Adcmpler_SPEC, crate::common::RW> {
342        unsafe {
343            crate::common::Reg::<self::Adcmpler_SPEC, crate::common::RW>::from_ptr(
344                self._svd2pac_as_ptr().add(147usize),
345            )
346        }
347    }
348
349    #[doc = "A/D Compare Function Window A Channel Select Register 0"]
350    #[inline(always)]
351    pub const fn adcmpansr0(
352        &self,
353    ) -> &'static crate::common::Reg<self::Adcmpansr0_SPEC, crate::common::RW> {
354        unsafe {
355            crate::common::Reg::<self::Adcmpansr0_SPEC, crate::common::RW>::from_ptr(
356                self._svd2pac_as_ptr().add(148usize),
357            )
358        }
359    }
360
361    #[doc = "A/D Compare Function Window A Channel Select Register 1"]
362    #[inline(always)]
363    pub const fn adcmpansr1(
364        &self,
365    ) -> &'static crate::common::Reg<self::Adcmpansr1_SPEC, crate::common::RW> {
366        unsafe {
367            crate::common::Reg::<self::Adcmpansr1_SPEC, crate::common::RW>::from_ptr(
368                self._svd2pac_as_ptr().add(150usize),
369            )
370        }
371    }
372
373    #[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
374    #[inline(always)]
375    pub const fn adcmplr0(
376        &self,
377    ) -> &'static crate::common::Reg<self::Adcmplr0_SPEC, crate::common::RW> {
378        unsafe {
379            crate::common::Reg::<self::Adcmplr0_SPEC, crate::common::RW>::from_ptr(
380                self._svd2pac_as_ptr().add(152usize),
381            )
382        }
383    }
384
385    #[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
386    #[inline(always)]
387    pub const fn adcmplr1(
388        &self,
389    ) -> &'static crate::common::Reg<self::Adcmplr1_SPEC, crate::common::RW> {
390        unsafe {
391            crate::common::Reg::<self::Adcmplr1_SPEC, crate::common::RW>::from_ptr(
392                self._svd2pac_as_ptr().add(154usize),
393            )
394        }
395    }
396
397    #[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register %s"]
398    #[inline(always)]
399    pub const fn adcmpdr(
400        &self,
401    ) -> &'static crate::common::ClusterRegisterArray<
402        crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW>,
403        2,
404        0x2,
405    > {
406        unsafe {
407            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x9cusize))
408        }
409    }
410    #[inline(always)]
411    pub const fn adcmpdr0(
412        &self,
413    ) -> &'static crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW> {
414        unsafe {
415            crate::common::Reg::<self::Adcmpdr_SPEC, crate::common::RW>::from_ptr(
416                self._svd2pac_as_ptr().add(0x9cusize),
417            )
418        }
419    }
420    #[inline(always)]
421    pub const fn adcmpdr1(
422        &self,
423    ) -> &'static crate::common::Reg<self::Adcmpdr_SPEC, crate::common::RW> {
424        unsafe {
425            crate::common::Reg::<self::Adcmpdr_SPEC, crate::common::RW>::from_ptr(
426                self._svd2pac_as_ptr().add(0x9eusize),
427            )
428        }
429    }
430
431    #[doc = "A/D Compare Function Window A Channel Status Register 0"]
432    #[inline(always)]
433    pub const fn adcmpsr0(
434        &self,
435    ) -> &'static crate::common::Reg<self::Adcmpsr0_SPEC, crate::common::RW> {
436        unsafe {
437            crate::common::Reg::<self::Adcmpsr0_SPEC, crate::common::RW>::from_ptr(
438                self._svd2pac_as_ptr().add(160usize),
439            )
440        }
441    }
442
443    #[doc = "A/D Compare Function Window A Channel Status Register1"]
444    #[inline(always)]
445    pub const fn adcmpsr1(
446        &self,
447    ) -> &'static crate::common::Reg<self::Adcmpsr1_SPEC, crate::common::RW> {
448        unsafe {
449            crate::common::Reg::<self::Adcmpsr1_SPEC, crate::common::RW>::from_ptr(
450                self._svd2pac_as_ptr().add(162usize),
451            )
452        }
453    }
454
455    #[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
456    #[inline(always)]
457    pub const fn adcmpser(
458        &self,
459    ) -> &'static crate::common::Reg<self::Adcmpser_SPEC, crate::common::RW> {
460        unsafe {
461            crate::common::Reg::<self::Adcmpser_SPEC, crate::common::RW>::from_ptr(
462                self._svd2pac_as_ptr().add(164usize),
463            )
464        }
465    }
466
467    #[doc = "A/D Compare Function Window B Channel Select Register"]
468    #[inline(always)]
469    pub const fn adcmpbnsr(
470        &self,
471    ) -> &'static crate::common::Reg<self::Adcmpbnsr_SPEC, crate::common::RW> {
472        unsafe {
473            crate::common::Reg::<self::Adcmpbnsr_SPEC, crate::common::RW>::from_ptr(
474                self._svd2pac_as_ptr().add(166usize),
475            )
476        }
477    }
478
479    #[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register L"]
480    #[inline(always)]
481    pub const fn adwinllb(
482        &self,
483    ) -> &'static crate::common::Reg<self::Adwinllb_SPEC, crate::common::RW> {
484        unsafe {
485            crate::common::Reg::<self::Adwinllb_SPEC, crate::common::RW>::from_ptr(
486                self._svd2pac_as_ptr().add(168usize),
487            )
488        }
489    }
490
491    #[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register U"]
492    #[inline(always)]
493    pub const fn adwinulb(
494        &self,
495    ) -> &'static crate::common::Reg<self::Adwinulb_SPEC, crate::common::RW> {
496        unsafe {
497            crate::common::Reg::<self::Adwinulb_SPEC, crate::common::RW>::from_ptr(
498                self._svd2pac_as_ptr().add(170usize),
499            )
500        }
501    }
502
503    #[doc = "A/D Compare Function Window B Status Register"]
504    #[inline(always)]
505    pub const fn adcmpbsr(
506        &self,
507    ) -> &'static crate::common::Reg<self::Adcmpbsr_SPEC, crate::common::RW> {
508        unsafe {
509            crate::common::Reg::<self::Adcmpbsr_SPEC, crate::common::RW>::from_ptr(
510                self._svd2pac_as_ptr().add(172usize),
511            )
512        }
513    }
514
515    #[doc = "A/D Data Buffer Registers %s"]
516    #[inline(always)]
517    pub const fn adbuf(
518        &self,
519    ) -> &'static crate::common::ClusterRegisterArray<
520        crate::common::Reg<self::Adbuf_SPEC, crate::common::R>,
521        16,
522        0x2,
523    > {
524        unsafe {
525            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xb0usize))
526        }
527    }
528    #[inline(always)]
529    pub const fn adbuf0(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
530        unsafe {
531            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
532                self._svd2pac_as_ptr().add(0xb0usize),
533            )
534        }
535    }
536    #[inline(always)]
537    pub const fn adbuf1(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
538        unsafe {
539            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
540                self._svd2pac_as_ptr().add(0xb2usize),
541            )
542        }
543    }
544    #[inline(always)]
545    pub const fn adbuf2(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
546        unsafe {
547            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
548                self._svd2pac_as_ptr().add(0xb4usize),
549            )
550        }
551    }
552    #[inline(always)]
553    pub const fn adbuf3(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
554        unsafe {
555            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
556                self._svd2pac_as_ptr().add(0xb6usize),
557            )
558        }
559    }
560    #[inline(always)]
561    pub const fn adbuf4(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
562        unsafe {
563            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
564                self._svd2pac_as_ptr().add(0xb8usize),
565            )
566        }
567    }
568    #[inline(always)]
569    pub const fn adbuf5(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
570        unsafe {
571            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
572                self._svd2pac_as_ptr().add(0xbausize),
573            )
574        }
575    }
576    #[inline(always)]
577    pub const fn adbuf6(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
578        unsafe {
579            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
580                self._svd2pac_as_ptr().add(0xbcusize),
581            )
582        }
583    }
584    #[inline(always)]
585    pub const fn adbuf7(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
586        unsafe {
587            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
588                self._svd2pac_as_ptr().add(0xbeusize),
589            )
590        }
591    }
592    #[inline(always)]
593    pub const fn adbuf8(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
594        unsafe {
595            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
596                self._svd2pac_as_ptr().add(0xc0usize),
597            )
598        }
599    }
600    #[inline(always)]
601    pub const fn adbuf9(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
602        unsafe {
603            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
604                self._svd2pac_as_ptr().add(0xc2usize),
605            )
606        }
607    }
608    #[inline(always)]
609    pub const fn adbuf10(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
610        unsafe {
611            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
612                self._svd2pac_as_ptr().add(0xc4usize),
613            )
614        }
615    }
616    #[inline(always)]
617    pub const fn adbuf11(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
618        unsafe {
619            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
620                self._svd2pac_as_ptr().add(0xc6usize),
621            )
622        }
623    }
624    #[inline(always)]
625    pub const fn adbuf12(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
626        unsafe {
627            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
628                self._svd2pac_as_ptr().add(0xc8usize),
629            )
630        }
631    }
632    #[inline(always)]
633    pub const fn adbuf13(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
634        unsafe {
635            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
636                self._svd2pac_as_ptr().add(0xcausize),
637            )
638        }
639    }
640    #[inline(always)]
641    pub const fn adbuf14(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
642        unsafe {
643            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
644                self._svd2pac_as_ptr().add(0xccusize),
645            )
646        }
647    }
648    #[inline(always)]
649    pub const fn adbuf15(&self) -> &'static crate::common::Reg<self::Adbuf_SPEC, crate::common::R> {
650        unsafe {
651            crate::common::Reg::<self::Adbuf_SPEC, crate::common::R>::from_ptr(
652                self._svd2pac_as_ptr().add(0xceusize),
653            )
654        }
655    }
656
657    #[doc = "A/D Data Buffer Enable Register"]
658    #[inline(always)]
659    pub const fn adbufen(
660        &self,
661    ) -> &'static crate::common::Reg<self::Adbufen_SPEC, crate::common::RW> {
662        unsafe {
663            crate::common::Reg::<self::Adbufen_SPEC, crate::common::RW>::from_ptr(
664                self._svd2pac_as_ptr().add(208usize),
665            )
666        }
667    }
668
669    #[doc = "A/D Data Buffer Pointer Register"]
670    #[inline(always)]
671    pub const fn adbufptr(
672        &self,
673    ) -> &'static crate::common::Reg<self::Adbufptr_SPEC, crate::common::RW> {
674        unsafe {
675            crate::common::Reg::<self::Adbufptr_SPEC, crate::common::RW>::from_ptr(
676                self._svd2pac_as_ptr().add(210usize),
677            )
678        }
679    }
680
681    #[doc = "A/D Sampling State Register"]
682    #[inline(always)]
683    pub const fn adsstrl(
684        &self,
685    ) -> &'static crate::common::Reg<self::Adsstrl_SPEC, crate::common::RW> {
686        unsafe {
687            crate::common::Reg::<self::Adsstrl_SPEC, crate::common::RW>::from_ptr(
688                self._svd2pac_as_ptr().add(221usize),
689            )
690        }
691    }
692
693    #[doc = "A/D Sampling State Register"]
694    #[inline(always)]
695    pub const fn adsstrt(
696        &self,
697    ) -> &'static crate::common::Reg<self::Adsstrt_SPEC, crate::common::RW> {
698        unsafe {
699            crate::common::Reg::<self::Adsstrt_SPEC, crate::common::RW>::from_ptr(
700                self._svd2pac_as_ptr().add(222usize),
701            )
702        }
703    }
704
705    #[doc = "A/D Sampling State Register"]
706    #[inline(always)]
707    pub const fn adsstro(
708        &self,
709    ) -> &'static crate::common::Reg<self::Adsstro_SPEC, crate::common::RW> {
710        unsafe {
711            crate::common::Reg::<self::Adsstro_SPEC, crate::common::RW>::from_ptr(
712                self._svd2pac_as_ptr().add(223usize),
713            )
714        }
715    }
716
717    #[doc = "A/D Sampling State Register"]
718    #[inline(always)]
719    pub const fn adsstr(
720        &self,
721    ) -> &'static crate::common::ClusterRegisterArray<
722        crate::common::Reg<self::Adsstr_SPEC, crate::common::RW>,
723        3,
724        0x1,
725    > {
726        unsafe {
727            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0xebusize))
728        }
729    }
730    #[inline(always)]
731    pub const fn adsstr11(
732        &self,
733    ) -> &'static crate::common::Reg<self::Adsstr_SPEC, crate::common::RW> {
734        unsafe {
735            crate::common::Reg::<self::Adsstr_SPEC, crate::common::RW>::from_ptr(
736                self._svd2pac_as_ptr().add(0xebusize),
737            )
738        }
739    }
740    #[inline(always)]
741    pub const fn adsstr12(
742        &self,
743    ) -> &'static crate::common::Reg<self::Adsstr_SPEC, crate::common::RW> {
744        unsafe {
745            crate::common::Reg::<self::Adsstr_SPEC, crate::common::RW>::from_ptr(
746                self._svd2pac_as_ptr().add(0xecusize),
747            )
748        }
749    }
750    #[inline(always)]
751    pub const fn adsstr13(
752        &self,
753    ) -> &'static crate::common::Reg<self::Adsstr_SPEC, crate::common::RW> {
754        unsafe {
755            crate::common::Reg::<self::Adsstr_SPEC, crate::common::RW>::from_ptr(
756                self._svd2pac_as_ptr().add(0xedusize),
757            )
758        }
759    }
760}
761#[doc(hidden)]
762#[derive(Copy, Clone, Eq, PartialEq)]
763pub struct Adcsr_SPEC;
764impl crate::sealed::RegSpec for Adcsr_SPEC {
765    type DataType = u16;
766}
767
768#[doc = "A/D Control Register"]
769pub type Adcsr = crate::RegValueT<Adcsr_SPEC>;
770
771impl Adcsr {
772    #[doc = "Double Trigger Channel Select"]
773    #[inline(always)]
774    pub fn dblans(
775        self,
776    ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Adcsr_SPEC, crate::common::RW> {
777        crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Adcsr_SPEC,crate::common::RW>::from_register(self,0)
778    }
779
780    #[doc = "Group B Scan End Interrupt and ELC Event Enable"]
781    #[inline(always)]
782    pub fn gbadie(
783        self,
784    ) -> crate::common::RegisterField<
785        6,
786        0x1,
787        1,
788        0,
789        adcsr::Gbadie,
790        adcsr::Gbadie,
791        Adcsr_SPEC,
792        crate::common::RW,
793    > {
794        crate::common::RegisterField::<
795            6,
796            0x1,
797            1,
798            0,
799            adcsr::Gbadie,
800            adcsr::Gbadie,
801            Adcsr_SPEC,
802            crate::common::RW,
803        >::from_register(self, 0)
804    }
805
806    #[doc = "Double Trigger Mode Select"]
807    #[inline(always)]
808    pub fn dble(
809        self,
810    ) -> crate::common::RegisterField<
811        7,
812        0x1,
813        1,
814        0,
815        adcsr::Dble,
816        adcsr::Dble,
817        Adcsr_SPEC,
818        crate::common::RW,
819    > {
820        crate::common::RegisterField::<
821            7,
822            0x1,
823            1,
824            0,
825            adcsr::Dble,
826            adcsr::Dble,
827            Adcsr_SPEC,
828            crate::common::RW,
829        >::from_register(self, 0)
830    }
831
832    #[doc = "Trigger Select"]
833    #[inline(always)]
834    pub fn extrg(
835        self,
836    ) -> crate::common::RegisterField<
837        8,
838        0x1,
839        1,
840        0,
841        adcsr::Extrg,
842        adcsr::Extrg,
843        Adcsr_SPEC,
844        crate::common::RW,
845    > {
846        crate::common::RegisterField::<
847            8,
848            0x1,
849            1,
850            0,
851            adcsr::Extrg,
852            adcsr::Extrg,
853            Adcsr_SPEC,
854            crate::common::RW,
855        >::from_register(self, 0)
856    }
857
858    #[doc = "Trigger Start Enable"]
859    #[inline(always)]
860    pub fn trge(
861        self,
862    ) -> crate::common::RegisterField<
863        9,
864        0x1,
865        1,
866        0,
867        adcsr::Trge,
868        adcsr::Trge,
869        Adcsr_SPEC,
870        crate::common::RW,
871    > {
872        crate::common::RegisterField::<
873            9,
874            0x1,
875            1,
876            0,
877            adcsr::Trge,
878            adcsr::Trge,
879            Adcsr_SPEC,
880            crate::common::RW,
881        >::from_register(self, 0)
882    }
883
884    #[doc = "Scan Mode Select"]
885    #[inline(always)]
886    pub fn adcs(
887        self,
888    ) -> crate::common::RegisterField<
889        13,
890        0x3,
891        1,
892        0,
893        adcsr::Adcs,
894        adcsr::Adcs,
895        Adcsr_SPEC,
896        crate::common::RW,
897    > {
898        crate::common::RegisterField::<
899            13,
900            0x3,
901            1,
902            0,
903            adcsr::Adcs,
904            adcsr::Adcs,
905            Adcsr_SPEC,
906            crate::common::RW,
907        >::from_register(self, 0)
908    }
909
910    #[doc = "A/D Conversion Start"]
911    #[inline(always)]
912    pub fn adst(
913        self,
914    ) -> crate::common::RegisterField<
915        15,
916        0x1,
917        1,
918        0,
919        adcsr::Adst,
920        adcsr::Adst,
921        Adcsr_SPEC,
922        crate::common::RW,
923    > {
924        crate::common::RegisterField::<
925            15,
926            0x1,
927            1,
928            0,
929            adcsr::Adst,
930            adcsr::Adst,
931            Adcsr_SPEC,
932            crate::common::RW,
933        >::from_register(self, 0)
934    }
935}
936impl ::core::default::Default for Adcsr {
937    #[inline(always)]
938    fn default() -> Adcsr {
939        <crate::RegValueT<Adcsr_SPEC> as RegisterValue<_>>::new(0)
940    }
941}
942pub mod adcsr {
943
944    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
945    pub struct Gbadie_SPEC;
946    pub type Gbadie = crate::EnumBitfieldStruct<u8, Gbadie_SPEC>;
947    impl Gbadie {
948        #[doc = "Disable ADC120_GBADI interrupt generation on group B scan completion."]
949        pub const _0: Self = Self::new(0);
950
951        #[doc = "Enable ADC120_GBADI interrupt generation on group B scan completion."]
952        pub const _1: Self = Self::new(1);
953    }
954    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
955    pub struct Dble_SPEC;
956    pub type Dble = crate::EnumBitfieldStruct<u8, Dble_SPEC>;
957    impl Dble {
958        #[doc = "Deselect double-trigger mode."]
959        pub const _0: Self = Self::new(0);
960
961        #[doc = "Select double-trigger mode."]
962        pub const _1: Self = Self::new(1);
963    }
964    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
965    pub struct Extrg_SPEC;
966    pub type Extrg = crate::EnumBitfieldStruct<u8, Extrg_SPEC>;
967    impl Extrg {
968        #[doc = "Start A/D conversion by the synchronous trigger (ELC)."]
969        pub const _0: Self = Self::new(0);
970
971        #[doc = "Start A/D conversion by the asynchronous trigger (ADTRG0)."]
972        pub const _1: Self = Self::new(1);
973    }
974    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
975    pub struct Trge_SPEC;
976    pub type Trge = crate::EnumBitfieldStruct<u8, Trge_SPEC>;
977    impl Trge {
978        #[doc = "Disable A/D conversion to be started by the synchronous or asynchronous trigger"]
979        pub const _0: Self = Self::new(0);
980
981        #[doc = "Enable A/D conversion to be started by the synchronous or asynchronous trigger"]
982        pub const _1: Self = Self::new(1);
983    }
984    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
985    pub struct Adcs_SPEC;
986    pub type Adcs = crate::EnumBitfieldStruct<u8, Adcs_SPEC>;
987    impl Adcs {
988        #[doc = "Single scan mode"]
989        pub const _00: Self = Self::new(0);
990
991        #[doc = "Group scan mode"]
992        pub const _01: Self = Self::new(1);
993
994        #[doc = "Continuous scan mode"]
995        pub const _10: Self = Self::new(2);
996
997        #[doc = "Setting prohibited"]
998        pub const _11: Self = Self::new(3);
999    }
1000    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1001    pub struct Adst_SPEC;
1002    pub type Adst = crate::EnumBitfieldStruct<u8, Adst_SPEC>;
1003    impl Adst {
1004        #[doc = "Stop A/D conversion process."]
1005        pub const _0: Self = Self::new(0);
1006
1007        #[doc = "Start A/D conversion process."]
1008        pub const _1: Self = Self::new(1);
1009    }
1010}
1011#[doc(hidden)]
1012#[derive(Copy, Clone, Eq, PartialEq)]
1013pub struct Adansa0_SPEC;
1014impl crate::sealed::RegSpec for Adansa0_SPEC {
1015    type DataType = u16;
1016}
1017
1018#[doc = "A/D Channel Select Register A0"]
1019pub type Adansa0 = crate::RegValueT<Adansa0_SPEC>;
1020
1021impl Adansa0 {
1022    #[doc = "A/D Conversion Channels Select"]
1023    #[inline(always)]
1024    pub fn ansa00(
1025        self,
1026    ) -> crate::common::RegisterField<
1027        0,
1028        0x1,
1029        1,
1030        0,
1031        adansa0::Ansa00,
1032        adansa0::Ansa00,
1033        Adansa0_SPEC,
1034        crate::common::RW,
1035    > {
1036        crate::common::RegisterField::<
1037            0,
1038            0x1,
1039            1,
1040            0,
1041            adansa0::Ansa00,
1042            adansa0::Ansa00,
1043            Adansa0_SPEC,
1044            crate::common::RW,
1045        >::from_register(self, 0)
1046    }
1047
1048    #[doc = "A/D Conversion Channels Select"]
1049    #[inline(always)]
1050    pub fn ansa01(
1051        self,
1052    ) -> crate::common::RegisterField<
1053        1,
1054        0x1,
1055        1,
1056        0,
1057        adansa0::Ansa01,
1058        adansa0::Ansa01,
1059        Adansa0_SPEC,
1060        crate::common::RW,
1061    > {
1062        crate::common::RegisterField::<
1063            1,
1064            0x1,
1065            1,
1066            0,
1067            adansa0::Ansa01,
1068            adansa0::Ansa01,
1069            Adansa0_SPEC,
1070            crate::common::RW,
1071        >::from_register(self, 0)
1072    }
1073
1074    #[doc = "A/D Conversion Channels Select"]
1075    #[inline(always)]
1076    pub fn ansa02(
1077        self,
1078    ) -> crate::common::RegisterField<
1079        2,
1080        0x1,
1081        1,
1082        0,
1083        adansa0::Ansa02,
1084        adansa0::Ansa02,
1085        Adansa0_SPEC,
1086        crate::common::RW,
1087    > {
1088        crate::common::RegisterField::<
1089            2,
1090            0x1,
1091            1,
1092            0,
1093            adansa0::Ansa02,
1094            adansa0::Ansa02,
1095            Adansa0_SPEC,
1096            crate::common::RW,
1097        >::from_register(self, 0)
1098    }
1099
1100    #[doc = "A/D Conversion Channels Select"]
1101    #[inline(always)]
1102    pub fn ansa03(
1103        self,
1104    ) -> crate::common::RegisterField<
1105        3,
1106        0x1,
1107        1,
1108        0,
1109        adansa0::Ansa03,
1110        adansa0::Ansa03,
1111        Adansa0_SPEC,
1112        crate::common::RW,
1113    > {
1114        crate::common::RegisterField::<
1115            3,
1116            0x1,
1117            1,
1118            0,
1119            adansa0::Ansa03,
1120            adansa0::Ansa03,
1121            Adansa0_SPEC,
1122            crate::common::RW,
1123        >::from_register(self, 0)
1124    }
1125
1126    #[doc = "A/D Conversion Channels Select"]
1127    #[inline(always)]
1128    pub fn ansa04(
1129        self,
1130    ) -> crate::common::RegisterField<
1131        4,
1132        0x1,
1133        1,
1134        0,
1135        adansa0::Ansa04,
1136        adansa0::Ansa04,
1137        Adansa0_SPEC,
1138        crate::common::RW,
1139    > {
1140        crate::common::RegisterField::<
1141            4,
1142            0x1,
1143            1,
1144            0,
1145            adansa0::Ansa04,
1146            adansa0::Ansa04,
1147            Adansa0_SPEC,
1148            crate::common::RW,
1149        >::from_register(self, 0)
1150    }
1151
1152    #[doc = "A/D Conversion Channels Select"]
1153    #[inline(always)]
1154    pub fn ansa05(
1155        self,
1156    ) -> crate::common::RegisterField<
1157        5,
1158        0x1,
1159        1,
1160        0,
1161        adansa0::Ansa05,
1162        adansa0::Ansa05,
1163        Adansa0_SPEC,
1164        crate::common::RW,
1165    > {
1166        crate::common::RegisterField::<
1167            5,
1168            0x1,
1169            1,
1170            0,
1171            adansa0::Ansa05,
1172            adansa0::Ansa05,
1173            Adansa0_SPEC,
1174            crate::common::RW,
1175        >::from_register(self, 0)
1176    }
1177
1178    #[doc = "A/D Conversion Channels Select"]
1179    #[inline(always)]
1180    pub fn ansa06(
1181        self,
1182    ) -> crate::common::RegisterField<
1183        6,
1184        0x1,
1185        1,
1186        0,
1187        adansa0::Ansa06,
1188        adansa0::Ansa06,
1189        Adansa0_SPEC,
1190        crate::common::RW,
1191    > {
1192        crate::common::RegisterField::<
1193            6,
1194            0x1,
1195            1,
1196            0,
1197            adansa0::Ansa06,
1198            adansa0::Ansa06,
1199            Adansa0_SPEC,
1200            crate::common::RW,
1201        >::from_register(self, 0)
1202    }
1203
1204    #[doc = "A/D Conversion Channels Select"]
1205    #[inline(always)]
1206    pub fn ansa07(
1207        self,
1208    ) -> crate::common::RegisterField<
1209        7,
1210        0x1,
1211        1,
1212        0,
1213        adansa0::Ansa07,
1214        adansa0::Ansa07,
1215        Adansa0_SPEC,
1216        crate::common::RW,
1217    > {
1218        crate::common::RegisterField::<
1219            7,
1220            0x1,
1221            1,
1222            0,
1223            adansa0::Ansa07,
1224            adansa0::Ansa07,
1225            Adansa0_SPEC,
1226            crate::common::RW,
1227        >::from_register(self, 0)
1228    }
1229
1230    #[doc = "A/D Conversion Channels Select"]
1231    #[inline(always)]
1232    pub fn ansa08(
1233        self,
1234    ) -> crate::common::RegisterField<
1235        8,
1236        0x1,
1237        1,
1238        0,
1239        adansa0::Ansa08,
1240        adansa0::Ansa08,
1241        Adansa0_SPEC,
1242        crate::common::RW,
1243    > {
1244        crate::common::RegisterField::<
1245            8,
1246            0x1,
1247            1,
1248            0,
1249            adansa0::Ansa08,
1250            adansa0::Ansa08,
1251            Adansa0_SPEC,
1252            crate::common::RW,
1253        >::from_register(self, 0)
1254    }
1255
1256    #[doc = "A/D Conversion Channels Select"]
1257    #[inline(always)]
1258    pub fn ansa09(
1259        self,
1260    ) -> crate::common::RegisterField<
1261        9,
1262        0x1,
1263        1,
1264        0,
1265        adansa0::Ansa09,
1266        adansa0::Ansa09,
1267        Adansa0_SPEC,
1268        crate::common::RW,
1269    > {
1270        crate::common::RegisterField::<
1271            9,
1272            0x1,
1273            1,
1274            0,
1275            adansa0::Ansa09,
1276            adansa0::Ansa09,
1277            Adansa0_SPEC,
1278            crate::common::RW,
1279        >::from_register(self, 0)
1280    }
1281
1282    #[doc = "A/D Conversion Channels Select"]
1283    #[inline(always)]
1284    pub fn ansa10(
1285        self,
1286    ) -> crate::common::RegisterField<
1287        10,
1288        0x1,
1289        1,
1290        0,
1291        adansa0::Ansa10,
1292        adansa0::Ansa10,
1293        Adansa0_SPEC,
1294        crate::common::RW,
1295    > {
1296        crate::common::RegisterField::<
1297            10,
1298            0x1,
1299            1,
1300            0,
1301            adansa0::Ansa10,
1302            adansa0::Ansa10,
1303            Adansa0_SPEC,
1304            crate::common::RW,
1305        >::from_register(self, 0)
1306    }
1307
1308    #[doc = "A/D Conversion Channels Select"]
1309    #[inline(always)]
1310    pub fn ansa11(
1311        self,
1312    ) -> crate::common::RegisterField<
1313        11,
1314        0x1,
1315        1,
1316        0,
1317        adansa0::Ansa11,
1318        adansa0::Ansa11,
1319        Adansa0_SPEC,
1320        crate::common::RW,
1321    > {
1322        crate::common::RegisterField::<
1323            11,
1324            0x1,
1325            1,
1326            0,
1327            adansa0::Ansa11,
1328            adansa0::Ansa11,
1329            Adansa0_SPEC,
1330            crate::common::RW,
1331        >::from_register(self, 0)
1332    }
1333
1334    #[doc = "A/D Conversion Channels Select"]
1335    #[inline(always)]
1336    pub fn ansa12(
1337        self,
1338    ) -> crate::common::RegisterField<
1339        12,
1340        0x1,
1341        1,
1342        0,
1343        adansa0::Ansa12,
1344        adansa0::Ansa12,
1345        Adansa0_SPEC,
1346        crate::common::RW,
1347    > {
1348        crate::common::RegisterField::<
1349            12,
1350            0x1,
1351            1,
1352            0,
1353            adansa0::Ansa12,
1354            adansa0::Ansa12,
1355            Adansa0_SPEC,
1356            crate::common::RW,
1357        >::from_register(self, 0)
1358    }
1359
1360    #[doc = "A/D Conversion Channels Select"]
1361    #[inline(always)]
1362    pub fn ansa13(
1363        self,
1364    ) -> crate::common::RegisterField<
1365        13,
1366        0x1,
1367        1,
1368        0,
1369        adansa0::Ansa13,
1370        adansa0::Ansa13,
1371        Adansa0_SPEC,
1372        crate::common::RW,
1373    > {
1374        crate::common::RegisterField::<
1375            13,
1376            0x1,
1377            1,
1378            0,
1379            adansa0::Ansa13,
1380            adansa0::Ansa13,
1381            Adansa0_SPEC,
1382            crate::common::RW,
1383        >::from_register(self, 0)
1384    }
1385
1386    #[doc = "A/D Conversion Channels Select"]
1387    #[inline(always)]
1388    pub fn ansa14(
1389        self,
1390    ) -> crate::common::RegisterField<
1391        14,
1392        0x1,
1393        1,
1394        0,
1395        adansa0::Ansa14,
1396        adansa0::Ansa14,
1397        Adansa0_SPEC,
1398        crate::common::RW,
1399    > {
1400        crate::common::RegisterField::<
1401            14,
1402            0x1,
1403            1,
1404            0,
1405            adansa0::Ansa14,
1406            adansa0::Ansa14,
1407            Adansa0_SPEC,
1408            crate::common::RW,
1409        >::from_register(self, 0)
1410    }
1411
1412    #[doc = "A/D Conversion Channels Select"]
1413    #[inline(always)]
1414    pub fn ansa15(
1415        self,
1416    ) -> crate::common::RegisterField<
1417        15,
1418        0x1,
1419        1,
1420        0,
1421        adansa0::Ansa15,
1422        adansa0::Ansa15,
1423        Adansa0_SPEC,
1424        crate::common::RW,
1425    > {
1426        crate::common::RegisterField::<
1427            15,
1428            0x1,
1429            1,
1430            0,
1431            adansa0::Ansa15,
1432            adansa0::Ansa15,
1433            Adansa0_SPEC,
1434            crate::common::RW,
1435        >::from_register(self, 0)
1436    }
1437}
1438impl ::core::default::Default for Adansa0 {
1439    #[inline(always)]
1440    fn default() -> Adansa0 {
1441        <crate::RegValueT<Adansa0_SPEC> as RegisterValue<_>>::new(0)
1442    }
1443}
1444pub mod adansa0 {
1445
1446    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1447    pub struct Ansa00_SPEC;
1448    pub type Ansa00 = crate::EnumBitfieldStruct<u8, Ansa00_SPEC>;
1449    impl Ansa00 {
1450        #[doc = "Do not select associated input channel."]
1451        pub const _0: Self = Self::new(0);
1452
1453        #[doc = "Select associated input channel."]
1454        pub const _1: Self = Self::new(1);
1455    }
1456    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1457    pub struct Ansa01_SPEC;
1458    pub type Ansa01 = crate::EnumBitfieldStruct<u8, Ansa01_SPEC>;
1459    impl Ansa01 {
1460        #[doc = "Do not select associated input channel."]
1461        pub const _0: Self = Self::new(0);
1462
1463        #[doc = "Select associated input channel."]
1464        pub const _1: Self = Self::new(1);
1465    }
1466    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1467    pub struct Ansa02_SPEC;
1468    pub type Ansa02 = crate::EnumBitfieldStruct<u8, Ansa02_SPEC>;
1469    impl Ansa02 {
1470        #[doc = "Do not select associated input channel."]
1471        pub const _0: Self = Self::new(0);
1472
1473        #[doc = "Select associated input channel."]
1474        pub const _1: Self = Self::new(1);
1475    }
1476    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1477    pub struct Ansa03_SPEC;
1478    pub type Ansa03 = crate::EnumBitfieldStruct<u8, Ansa03_SPEC>;
1479    impl Ansa03 {
1480        #[doc = "Do not select associated input channel."]
1481        pub const _0: Self = Self::new(0);
1482
1483        #[doc = "Select associated input channel."]
1484        pub const _1: Self = Self::new(1);
1485    }
1486    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1487    pub struct Ansa04_SPEC;
1488    pub type Ansa04 = crate::EnumBitfieldStruct<u8, Ansa04_SPEC>;
1489    impl Ansa04 {
1490        #[doc = "Do not select associated input channel."]
1491        pub const _0: Self = Self::new(0);
1492
1493        #[doc = "Select associated input channel."]
1494        pub const _1: Self = Self::new(1);
1495    }
1496    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1497    pub struct Ansa05_SPEC;
1498    pub type Ansa05 = crate::EnumBitfieldStruct<u8, Ansa05_SPEC>;
1499    impl Ansa05 {
1500        #[doc = "Do not select associated input channel."]
1501        pub const _0: Self = Self::new(0);
1502
1503        #[doc = "Select associated input channel."]
1504        pub const _1: Self = Self::new(1);
1505    }
1506    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1507    pub struct Ansa06_SPEC;
1508    pub type Ansa06 = crate::EnumBitfieldStruct<u8, Ansa06_SPEC>;
1509    impl Ansa06 {
1510        #[doc = "Do not select associated input channel."]
1511        pub const _0: Self = Self::new(0);
1512
1513        #[doc = "Select associated input channel."]
1514        pub const _1: Self = Self::new(1);
1515    }
1516    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1517    pub struct Ansa07_SPEC;
1518    pub type Ansa07 = crate::EnumBitfieldStruct<u8, Ansa07_SPEC>;
1519    impl Ansa07 {
1520        #[doc = "Do not select associated input channel."]
1521        pub const _0: Self = Self::new(0);
1522
1523        #[doc = "Select associated input channel."]
1524        pub const _1: Self = Self::new(1);
1525    }
1526    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1527    pub struct Ansa08_SPEC;
1528    pub type Ansa08 = crate::EnumBitfieldStruct<u8, Ansa08_SPEC>;
1529    impl Ansa08 {
1530        #[doc = "Do not select associated input channel."]
1531        pub const _0: Self = Self::new(0);
1532
1533        #[doc = "Select associated input channel."]
1534        pub const _1: Self = Self::new(1);
1535    }
1536    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1537    pub struct Ansa09_SPEC;
1538    pub type Ansa09 = crate::EnumBitfieldStruct<u8, Ansa09_SPEC>;
1539    impl Ansa09 {
1540        #[doc = "Do not select associated input channel."]
1541        pub const _0: Self = Self::new(0);
1542
1543        #[doc = "Select associated input channel."]
1544        pub const _1: Self = Self::new(1);
1545    }
1546    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1547    pub struct Ansa10_SPEC;
1548    pub type Ansa10 = crate::EnumBitfieldStruct<u8, Ansa10_SPEC>;
1549    impl Ansa10 {
1550        #[doc = "Do not select associated input channel."]
1551        pub const _0: Self = Self::new(0);
1552
1553        #[doc = "Select associated input channel."]
1554        pub const _1: Self = Self::new(1);
1555    }
1556    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1557    pub struct Ansa11_SPEC;
1558    pub type Ansa11 = crate::EnumBitfieldStruct<u8, Ansa11_SPEC>;
1559    impl Ansa11 {
1560        #[doc = "Do not select associated input channel."]
1561        pub const _0: Self = Self::new(0);
1562
1563        #[doc = "Select associated input channel."]
1564        pub const _1: Self = Self::new(1);
1565    }
1566    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1567    pub struct Ansa12_SPEC;
1568    pub type Ansa12 = crate::EnumBitfieldStruct<u8, Ansa12_SPEC>;
1569    impl Ansa12 {
1570        #[doc = "Do not select associated input channel."]
1571        pub const _0: Self = Self::new(0);
1572
1573        #[doc = "Select associated input channel."]
1574        pub const _1: Self = Self::new(1);
1575    }
1576    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1577    pub struct Ansa13_SPEC;
1578    pub type Ansa13 = crate::EnumBitfieldStruct<u8, Ansa13_SPEC>;
1579    impl Ansa13 {
1580        #[doc = "Do not select associated input channel."]
1581        pub const _0: Self = Self::new(0);
1582
1583        #[doc = "Select associated input channel."]
1584        pub const _1: Self = Self::new(1);
1585    }
1586    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1587    pub struct Ansa14_SPEC;
1588    pub type Ansa14 = crate::EnumBitfieldStruct<u8, Ansa14_SPEC>;
1589    impl Ansa14 {
1590        #[doc = "Do not select associated input channel."]
1591        pub const _0: Self = Self::new(0);
1592
1593        #[doc = "Select associated input channel."]
1594        pub const _1: Self = Self::new(1);
1595    }
1596    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1597    pub struct Ansa15_SPEC;
1598    pub type Ansa15 = crate::EnumBitfieldStruct<u8, Ansa15_SPEC>;
1599    impl Ansa15 {
1600        #[doc = "Do not select associated input channel."]
1601        pub const _0: Self = Self::new(0);
1602
1603        #[doc = "Select associated input channel."]
1604        pub const _1: Self = Self::new(1);
1605    }
1606}
1607#[doc(hidden)]
1608#[derive(Copy, Clone, Eq, PartialEq)]
1609pub struct Adansa1_SPEC;
1610impl crate::sealed::RegSpec for Adansa1_SPEC {
1611    type DataType = u16;
1612}
1613
1614#[doc = "A/D Channel Select Register A1"]
1615pub type Adansa1 = crate::RegValueT<Adansa1_SPEC>;
1616
1617impl Adansa1 {
1618    #[doc = "A/D Conversion Channels Select"]
1619    #[inline(always)]
1620    pub fn ansa16(
1621        self,
1622    ) -> crate::common::RegisterField<
1623        0,
1624        0x1,
1625        1,
1626        0,
1627        adansa1::Ansa16,
1628        adansa1::Ansa16,
1629        Adansa1_SPEC,
1630        crate::common::RW,
1631    > {
1632        crate::common::RegisterField::<
1633            0,
1634            0x1,
1635            1,
1636            0,
1637            adansa1::Ansa16,
1638            adansa1::Ansa16,
1639            Adansa1_SPEC,
1640            crate::common::RW,
1641        >::from_register(self, 0)
1642    }
1643
1644    #[doc = "A/D Conversion Channels Select"]
1645    #[inline(always)]
1646    pub fn ansa17(
1647        self,
1648    ) -> crate::common::RegisterField<
1649        1,
1650        0x1,
1651        1,
1652        0,
1653        adansa1::Ansa17,
1654        adansa1::Ansa17,
1655        Adansa1_SPEC,
1656        crate::common::RW,
1657    > {
1658        crate::common::RegisterField::<
1659            1,
1660            0x1,
1661            1,
1662            0,
1663            adansa1::Ansa17,
1664            adansa1::Ansa17,
1665            Adansa1_SPEC,
1666            crate::common::RW,
1667        >::from_register(self, 0)
1668    }
1669
1670    #[doc = "A/D Conversion Channels Select"]
1671    #[inline(always)]
1672    pub fn ansa18(
1673        self,
1674    ) -> crate::common::RegisterField<
1675        2,
1676        0x1,
1677        1,
1678        0,
1679        adansa1::Ansa18,
1680        adansa1::Ansa18,
1681        Adansa1_SPEC,
1682        crate::common::RW,
1683    > {
1684        crate::common::RegisterField::<
1685            2,
1686            0x1,
1687            1,
1688            0,
1689            adansa1::Ansa18,
1690            adansa1::Ansa18,
1691            Adansa1_SPEC,
1692            crate::common::RW,
1693        >::from_register(self, 0)
1694    }
1695
1696    #[doc = "A/D Conversion Channels Select"]
1697    #[inline(always)]
1698    pub fn ansa19(
1699        self,
1700    ) -> crate::common::RegisterField<
1701        3,
1702        0x1,
1703        1,
1704        0,
1705        adansa1::Ansa19,
1706        adansa1::Ansa19,
1707        Adansa1_SPEC,
1708        crate::common::RW,
1709    > {
1710        crate::common::RegisterField::<
1711            3,
1712            0x1,
1713            1,
1714            0,
1715            adansa1::Ansa19,
1716            adansa1::Ansa19,
1717            Adansa1_SPEC,
1718            crate::common::RW,
1719        >::from_register(self, 0)
1720    }
1721
1722    #[doc = "A/D Conversion Channels Select"]
1723    #[inline(always)]
1724    pub fn ansa20(
1725        self,
1726    ) -> crate::common::RegisterField<
1727        4,
1728        0x1,
1729        1,
1730        0,
1731        adansa1::Ansa20,
1732        adansa1::Ansa20,
1733        Adansa1_SPEC,
1734        crate::common::RW,
1735    > {
1736        crate::common::RegisterField::<
1737            4,
1738            0x1,
1739            1,
1740            0,
1741            adansa1::Ansa20,
1742            adansa1::Ansa20,
1743            Adansa1_SPEC,
1744            crate::common::RW,
1745        >::from_register(self, 0)
1746    }
1747
1748    #[doc = "A/D Conversion Channels Select"]
1749    #[inline(always)]
1750    pub fn ansa21(
1751        self,
1752    ) -> crate::common::RegisterField<
1753        5,
1754        0x1,
1755        1,
1756        0,
1757        adansa1::Ansa21,
1758        adansa1::Ansa21,
1759        Adansa1_SPEC,
1760        crate::common::RW,
1761    > {
1762        crate::common::RegisterField::<
1763            5,
1764            0x1,
1765            1,
1766            0,
1767            adansa1::Ansa21,
1768            adansa1::Ansa21,
1769            Adansa1_SPEC,
1770            crate::common::RW,
1771        >::from_register(self, 0)
1772    }
1773
1774    #[doc = "A/D Conversion Channels Select"]
1775    #[inline(always)]
1776    pub fn ansa22(
1777        self,
1778    ) -> crate::common::RegisterField<
1779        6,
1780        0x1,
1781        1,
1782        0,
1783        adansa1::Ansa22,
1784        adansa1::Ansa22,
1785        Adansa1_SPEC,
1786        crate::common::RW,
1787    > {
1788        crate::common::RegisterField::<
1789            6,
1790            0x1,
1791            1,
1792            0,
1793            adansa1::Ansa22,
1794            adansa1::Ansa22,
1795            Adansa1_SPEC,
1796            crate::common::RW,
1797        >::from_register(self, 0)
1798    }
1799
1800    #[doc = "A/D Conversion Channels Select"]
1801    #[inline(always)]
1802    pub fn ansa23(
1803        self,
1804    ) -> crate::common::RegisterField<
1805        7,
1806        0x1,
1807        1,
1808        0,
1809        adansa1::Ansa23,
1810        adansa1::Ansa23,
1811        Adansa1_SPEC,
1812        crate::common::RW,
1813    > {
1814        crate::common::RegisterField::<
1815            7,
1816            0x1,
1817            1,
1818            0,
1819            adansa1::Ansa23,
1820            adansa1::Ansa23,
1821            Adansa1_SPEC,
1822            crate::common::RW,
1823        >::from_register(self, 0)
1824    }
1825
1826    #[doc = "A/D Conversion Channels Select"]
1827    #[inline(always)]
1828    pub fn ansa24(
1829        self,
1830    ) -> crate::common::RegisterField<
1831        8,
1832        0x1,
1833        1,
1834        0,
1835        adansa1::Ansa24,
1836        adansa1::Ansa24,
1837        Adansa1_SPEC,
1838        crate::common::RW,
1839    > {
1840        crate::common::RegisterField::<
1841            8,
1842            0x1,
1843            1,
1844            0,
1845            adansa1::Ansa24,
1846            adansa1::Ansa24,
1847            Adansa1_SPEC,
1848            crate::common::RW,
1849        >::from_register(self, 0)
1850    }
1851
1852    #[doc = "A/D Conversion Channels Select"]
1853    #[inline(always)]
1854    pub fn ansa25(
1855        self,
1856    ) -> crate::common::RegisterField<
1857        9,
1858        0x1,
1859        1,
1860        0,
1861        adansa1::Ansa25,
1862        adansa1::Ansa25,
1863        Adansa1_SPEC,
1864        crate::common::RW,
1865    > {
1866        crate::common::RegisterField::<
1867            9,
1868            0x1,
1869            1,
1870            0,
1871            adansa1::Ansa25,
1872            adansa1::Ansa25,
1873            Adansa1_SPEC,
1874            crate::common::RW,
1875        >::from_register(self, 0)
1876    }
1877
1878    #[doc = "A/D Conversion Channels Select"]
1879    #[inline(always)]
1880    pub fn ansa26(
1881        self,
1882    ) -> crate::common::RegisterField<
1883        10,
1884        0x1,
1885        1,
1886        0,
1887        adansa1::Ansa26,
1888        adansa1::Ansa26,
1889        Adansa1_SPEC,
1890        crate::common::RW,
1891    > {
1892        crate::common::RegisterField::<
1893            10,
1894            0x1,
1895            1,
1896            0,
1897            adansa1::Ansa26,
1898            adansa1::Ansa26,
1899            Adansa1_SPEC,
1900            crate::common::RW,
1901        >::from_register(self, 0)
1902    }
1903
1904    #[doc = "A/D Conversion Channels Select"]
1905    #[inline(always)]
1906    pub fn ansa27(
1907        self,
1908    ) -> crate::common::RegisterField<
1909        11,
1910        0x1,
1911        1,
1912        0,
1913        adansa1::Ansa27,
1914        adansa1::Ansa27,
1915        Adansa1_SPEC,
1916        crate::common::RW,
1917    > {
1918        crate::common::RegisterField::<
1919            11,
1920            0x1,
1921            1,
1922            0,
1923            adansa1::Ansa27,
1924            adansa1::Ansa27,
1925            Adansa1_SPEC,
1926            crate::common::RW,
1927        >::from_register(self, 0)
1928    }
1929
1930    #[doc = "A/D Conversion Channels Select"]
1931    #[inline(always)]
1932    pub fn ansa28(
1933        self,
1934    ) -> crate::common::RegisterField<
1935        12,
1936        0x1,
1937        1,
1938        0,
1939        adansa1::Ansa28,
1940        adansa1::Ansa28,
1941        Adansa1_SPEC,
1942        crate::common::RW,
1943    > {
1944        crate::common::RegisterField::<
1945            12,
1946            0x1,
1947            1,
1948            0,
1949            adansa1::Ansa28,
1950            adansa1::Ansa28,
1951            Adansa1_SPEC,
1952            crate::common::RW,
1953        >::from_register(self, 0)
1954    }
1955
1956    #[doc = "A/D Conversion Channels Select"]
1957    #[inline(always)]
1958    pub fn ansa29(
1959        self,
1960    ) -> crate::common::RegisterField<
1961        13,
1962        0x1,
1963        1,
1964        0,
1965        adansa1::Ansa29,
1966        adansa1::Ansa29,
1967        Adansa1_SPEC,
1968        crate::common::RW,
1969    > {
1970        crate::common::RegisterField::<
1971            13,
1972            0x1,
1973            1,
1974            0,
1975            adansa1::Ansa29,
1976            adansa1::Ansa29,
1977            Adansa1_SPEC,
1978            crate::common::RW,
1979        >::from_register(self, 0)
1980    }
1981
1982    #[doc = "A/D Conversion Channels Select"]
1983    #[inline(always)]
1984    pub fn ansa30(
1985        self,
1986    ) -> crate::common::RegisterField<
1987        14,
1988        0x1,
1989        1,
1990        0,
1991        adansa1::Ansa30,
1992        adansa1::Ansa30,
1993        Adansa1_SPEC,
1994        crate::common::RW,
1995    > {
1996        crate::common::RegisterField::<
1997            14,
1998            0x1,
1999            1,
2000            0,
2001            adansa1::Ansa30,
2002            adansa1::Ansa30,
2003            Adansa1_SPEC,
2004            crate::common::RW,
2005        >::from_register(self, 0)
2006    }
2007
2008    #[doc = "A/D Conversion Channels Select"]
2009    #[inline(always)]
2010    pub fn ansa31(
2011        self,
2012    ) -> crate::common::RegisterField<
2013        15,
2014        0x1,
2015        1,
2016        0,
2017        adansa1::Ansa31,
2018        adansa1::Ansa31,
2019        Adansa1_SPEC,
2020        crate::common::RW,
2021    > {
2022        crate::common::RegisterField::<
2023            15,
2024            0x1,
2025            1,
2026            0,
2027            adansa1::Ansa31,
2028            adansa1::Ansa31,
2029            Adansa1_SPEC,
2030            crate::common::RW,
2031        >::from_register(self, 0)
2032    }
2033}
2034impl ::core::default::Default for Adansa1 {
2035    #[inline(always)]
2036    fn default() -> Adansa1 {
2037        <crate::RegValueT<Adansa1_SPEC> as RegisterValue<_>>::new(0)
2038    }
2039}
2040pub mod adansa1 {
2041
2042    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2043    pub struct Ansa16_SPEC;
2044    pub type Ansa16 = crate::EnumBitfieldStruct<u8, Ansa16_SPEC>;
2045    impl Ansa16 {
2046        #[doc = "Do not select associated input channel."]
2047        pub const _0: Self = Self::new(0);
2048
2049        #[doc = "Select associated input channel."]
2050        pub const _1: Self = Self::new(1);
2051    }
2052    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2053    pub struct Ansa17_SPEC;
2054    pub type Ansa17 = crate::EnumBitfieldStruct<u8, Ansa17_SPEC>;
2055    impl Ansa17 {
2056        #[doc = "Do not select associated input channel."]
2057        pub const _0: Self = Self::new(0);
2058
2059        #[doc = "Select associated input channel."]
2060        pub const _1: Self = Self::new(1);
2061    }
2062    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2063    pub struct Ansa18_SPEC;
2064    pub type Ansa18 = crate::EnumBitfieldStruct<u8, Ansa18_SPEC>;
2065    impl Ansa18 {
2066        #[doc = "Do not select associated input channel."]
2067        pub const _0: Self = Self::new(0);
2068
2069        #[doc = "Select associated input channel."]
2070        pub const _1: Self = Self::new(1);
2071    }
2072    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2073    pub struct Ansa19_SPEC;
2074    pub type Ansa19 = crate::EnumBitfieldStruct<u8, Ansa19_SPEC>;
2075    impl Ansa19 {
2076        #[doc = "Do not select associated input channel."]
2077        pub const _0: Self = Self::new(0);
2078
2079        #[doc = "Select associated input channel."]
2080        pub const _1: Self = Self::new(1);
2081    }
2082    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2083    pub struct Ansa20_SPEC;
2084    pub type Ansa20 = crate::EnumBitfieldStruct<u8, Ansa20_SPEC>;
2085    impl Ansa20 {
2086        #[doc = "Do not select associated input channel."]
2087        pub const _0: Self = Self::new(0);
2088
2089        #[doc = "Select associated input channel."]
2090        pub const _1: Self = Self::new(1);
2091    }
2092    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2093    pub struct Ansa21_SPEC;
2094    pub type Ansa21 = crate::EnumBitfieldStruct<u8, Ansa21_SPEC>;
2095    impl Ansa21 {
2096        #[doc = "Do not select associated input channel."]
2097        pub const _0: Self = Self::new(0);
2098
2099        #[doc = "Select associated input channel."]
2100        pub const _1: Self = Self::new(1);
2101    }
2102    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2103    pub struct Ansa22_SPEC;
2104    pub type Ansa22 = crate::EnumBitfieldStruct<u8, Ansa22_SPEC>;
2105    impl Ansa22 {
2106        #[doc = "Do not select associated input channel."]
2107        pub const _0: Self = Self::new(0);
2108
2109        #[doc = "Select associated input channel."]
2110        pub const _1: Self = Self::new(1);
2111    }
2112    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2113    pub struct Ansa23_SPEC;
2114    pub type Ansa23 = crate::EnumBitfieldStruct<u8, Ansa23_SPEC>;
2115    impl Ansa23 {
2116        #[doc = "Do not select associated input channel."]
2117        pub const _0: Self = Self::new(0);
2118
2119        #[doc = "Select associated input channel."]
2120        pub const _1: Self = Self::new(1);
2121    }
2122    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2123    pub struct Ansa24_SPEC;
2124    pub type Ansa24 = crate::EnumBitfieldStruct<u8, Ansa24_SPEC>;
2125    impl Ansa24 {
2126        #[doc = "Do not select associated input channel."]
2127        pub const _0: Self = Self::new(0);
2128
2129        #[doc = "Select associated input channel."]
2130        pub const _1: Self = Self::new(1);
2131    }
2132    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2133    pub struct Ansa25_SPEC;
2134    pub type Ansa25 = crate::EnumBitfieldStruct<u8, Ansa25_SPEC>;
2135    impl Ansa25 {
2136        #[doc = "Do not select associated input channel."]
2137        pub const _0: Self = Self::new(0);
2138
2139        #[doc = "Select associated input channel."]
2140        pub const _1: Self = Self::new(1);
2141    }
2142    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2143    pub struct Ansa26_SPEC;
2144    pub type Ansa26 = crate::EnumBitfieldStruct<u8, Ansa26_SPEC>;
2145    impl Ansa26 {
2146        #[doc = "Do not select associated input channel."]
2147        pub const _0: Self = Self::new(0);
2148
2149        #[doc = "Select associated input channel."]
2150        pub const _1: Self = Self::new(1);
2151    }
2152    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2153    pub struct Ansa27_SPEC;
2154    pub type Ansa27 = crate::EnumBitfieldStruct<u8, Ansa27_SPEC>;
2155    impl Ansa27 {
2156        #[doc = "Do not select associated input channel."]
2157        pub const _0: Self = Self::new(0);
2158
2159        #[doc = "Select associated input channel."]
2160        pub const _1: Self = Self::new(1);
2161    }
2162    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2163    pub struct Ansa28_SPEC;
2164    pub type Ansa28 = crate::EnumBitfieldStruct<u8, Ansa28_SPEC>;
2165    impl Ansa28 {
2166        #[doc = "Do not select associated input channel."]
2167        pub const _0: Self = Self::new(0);
2168
2169        #[doc = "Select associated input channel."]
2170        pub const _1: Self = Self::new(1);
2171    }
2172    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2173    pub struct Ansa29_SPEC;
2174    pub type Ansa29 = crate::EnumBitfieldStruct<u8, Ansa29_SPEC>;
2175    impl Ansa29 {
2176        #[doc = "Do not select associated input channel."]
2177        pub const _0: Self = Self::new(0);
2178
2179        #[doc = "Select associated input channel."]
2180        pub const _1: Self = Self::new(1);
2181    }
2182    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2183    pub struct Ansa30_SPEC;
2184    pub type Ansa30 = crate::EnumBitfieldStruct<u8, Ansa30_SPEC>;
2185    impl Ansa30 {
2186        #[doc = "Do not select associated input channel."]
2187        pub const _0: Self = Self::new(0);
2188
2189        #[doc = "Select associated input channel."]
2190        pub const _1: Self = Self::new(1);
2191    }
2192    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2193    pub struct Ansa31_SPEC;
2194    pub type Ansa31 = crate::EnumBitfieldStruct<u8, Ansa31_SPEC>;
2195    impl Ansa31 {
2196        #[doc = "Do not select associated input channel."]
2197        pub const _0: Self = Self::new(0);
2198
2199        #[doc = "Select associated input channel."]
2200        pub const _1: Self = Self::new(1);
2201    }
2202}
2203#[doc(hidden)]
2204#[derive(Copy, Clone, Eq, PartialEq)]
2205pub struct Adads0_SPEC;
2206impl crate::sealed::RegSpec for Adads0_SPEC {
2207    type DataType = u16;
2208}
2209
2210#[doc = "A/D-Converted Value Addition/Average Channel Select Register 0"]
2211pub type Adads0 = crate::RegValueT<Adads0_SPEC>;
2212
2213impl Adads0 {
2214    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2215    #[inline(always)]
2216    pub fn ads00(
2217        self,
2218    ) -> crate::common::RegisterField<
2219        0,
2220        0x1,
2221        1,
2222        0,
2223        adads0::Ads00,
2224        adads0::Ads00,
2225        Adads0_SPEC,
2226        crate::common::RW,
2227    > {
2228        crate::common::RegisterField::<
2229            0,
2230            0x1,
2231            1,
2232            0,
2233            adads0::Ads00,
2234            adads0::Ads00,
2235            Adads0_SPEC,
2236            crate::common::RW,
2237        >::from_register(self, 0)
2238    }
2239
2240    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2241    #[inline(always)]
2242    pub fn ads01(
2243        self,
2244    ) -> crate::common::RegisterField<
2245        1,
2246        0x1,
2247        1,
2248        0,
2249        adads0::Ads01,
2250        adads0::Ads01,
2251        Adads0_SPEC,
2252        crate::common::RW,
2253    > {
2254        crate::common::RegisterField::<
2255            1,
2256            0x1,
2257            1,
2258            0,
2259            adads0::Ads01,
2260            adads0::Ads01,
2261            Adads0_SPEC,
2262            crate::common::RW,
2263        >::from_register(self, 0)
2264    }
2265
2266    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2267    #[inline(always)]
2268    pub fn ads02(
2269        self,
2270    ) -> crate::common::RegisterField<
2271        2,
2272        0x1,
2273        1,
2274        0,
2275        adads0::Ads02,
2276        adads0::Ads02,
2277        Adads0_SPEC,
2278        crate::common::RW,
2279    > {
2280        crate::common::RegisterField::<
2281            2,
2282            0x1,
2283            1,
2284            0,
2285            adads0::Ads02,
2286            adads0::Ads02,
2287            Adads0_SPEC,
2288            crate::common::RW,
2289        >::from_register(self, 0)
2290    }
2291
2292    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2293    #[inline(always)]
2294    pub fn ads03(
2295        self,
2296    ) -> crate::common::RegisterField<
2297        3,
2298        0x1,
2299        1,
2300        0,
2301        adads0::Ads03,
2302        adads0::Ads03,
2303        Adads0_SPEC,
2304        crate::common::RW,
2305    > {
2306        crate::common::RegisterField::<
2307            3,
2308            0x1,
2309            1,
2310            0,
2311            adads0::Ads03,
2312            adads0::Ads03,
2313            Adads0_SPEC,
2314            crate::common::RW,
2315        >::from_register(self, 0)
2316    }
2317
2318    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2319    #[inline(always)]
2320    pub fn ads04(
2321        self,
2322    ) -> crate::common::RegisterField<
2323        4,
2324        0x1,
2325        1,
2326        0,
2327        adads0::Ads04,
2328        adads0::Ads04,
2329        Adads0_SPEC,
2330        crate::common::RW,
2331    > {
2332        crate::common::RegisterField::<
2333            4,
2334            0x1,
2335            1,
2336            0,
2337            adads0::Ads04,
2338            adads0::Ads04,
2339            Adads0_SPEC,
2340            crate::common::RW,
2341        >::from_register(self, 0)
2342    }
2343
2344    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2345    #[inline(always)]
2346    pub fn ads05(
2347        self,
2348    ) -> crate::common::RegisterField<
2349        5,
2350        0x1,
2351        1,
2352        0,
2353        adads0::Ads05,
2354        adads0::Ads05,
2355        Adads0_SPEC,
2356        crate::common::RW,
2357    > {
2358        crate::common::RegisterField::<
2359            5,
2360            0x1,
2361            1,
2362            0,
2363            adads0::Ads05,
2364            adads0::Ads05,
2365            Adads0_SPEC,
2366            crate::common::RW,
2367        >::from_register(self, 0)
2368    }
2369
2370    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2371    #[inline(always)]
2372    pub fn ads06(
2373        self,
2374    ) -> crate::common::RegisterField<
2375        6,
2376        0x1,
2377        1,
2378        0,
2379        adads0::Ads06,
2380        adads0::Ads06,
2381        Adads0_SPEC,
2382        crate::common::RW,
2383    > {
2384        crate::common::RegisterField::<
2385            6,
2386            0x1,
2387            1,
2388            0,
2389            adads0::Ads06,
2390            adads0::Ads06,
2391            Adads0_SPEC,
2392            crate::common::RW,
2393        >::from_register(self, 0)
2394    }
2395
2396    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2397    #[inline(always)]
2398    pub fn ads07(
2399        self,
2400    ) -> crate::common::RegisterField<
2401        7,
2402        0x1,
2403        1,
2404        0,
2405        adads0::Ads07,
2406        adads0::Ads07,
2407        Adads0_SPEC,
2408        crate::common::RW,
2409    > {
2410        crate::common::RegisterField::<
2411            7,
2412            0x1,
2413            1,
2414            0,
2415            adads0::Ads07,
2416            adads0::Ads07,
2417            Adads0_SPEC,
2418            crate::common::RW,
2419        >::from_register(self, 0)
2420    }
2421
2422    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2423    #[inline(always)]
2424    pub fn ads08(
2425        self,
2426    ) -> crate::common::RegisterField<
2427        8,
2428        0x1,
2429        1,
2430        0,
2431        adads0::Ads08,
2432        adads0::Ads08,
2433        Adads0_SPEC,
2434        crate::common::RW,
2435    > {
2436        crate::common::RegisterField::<
2437            8,
2438            0x1,
2439            1,
2440            0,
2441            adads0::Ads08,
2442            adads0::Ads08,
2443            Adads0_SPEC,
2444            crate::common::RW,
2445        >::from_register(self, 0)
2446    }
2447
2448    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2449    #[inline(always)]
2450    pub fn ads09(
2451        self,
2452    ) -> crate::common::RegisterField<
2453        9,
2454        0x1,
2455        1,
2456        0,
2457        adads0::Ads09,
2458        adads0::Ads09,
2459        Adads0_SPEC,
2460        crate::common::RW,
2461    > {
2462        crate::common::RegisterField::<
2463            9,
2464            0x1,
2465            1,
2466            0,
2467            adads0::Ads09,
2468            adads0::Ads09,
2469            Adads0_SPEC,
2470            crate::common::RW,
2471        >::from_register(self, 0)
2472    }
2473
2474    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2475    #[inline(always)]
2476    pub fn ads10(
2477        self,
2478    ) -> crate::common::RegisterField<
2479        10,
2480        0x1,
2481        1,
2482        0,
2483        adads0::Ads10,
2484        adads0::Ads10,
2485        Adads0_SPEC,
2486        crate::common::RW,
2487    > {
2488        crate::common::RegisterField::<
2489            10,
2490            0x1,
2491            1,
2492            0,
2493            adads0::Ads10,
2494            adads0::Ads10,
2495            Adads0_SPEC,
2496            crate::common::RW,
2497        >::from_register(self, 0)
2498    }
2499
2500    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2501    #[inline(always)]
2502    pub fn ads11(
2503        self,
2504    ) -> crate::common::RegisterField<
2505        11,
2506        0x1,
2507        1,
2508        0,
2509        adads0::Ads11,
2510        adads0::Ads11,
2511        Adads0_SPEC,
2512        crate::common::RW,
2513    > {
2514        crate::common::RegisterField::<
2515            11,
2516            0x1,
2517            1,
2518            0,
2519            adads0::Ads11,
2520            adads0::Ads11,
2521            Adads0_SPEC,
2522            crate::common::RW,
2523        >::from_register(self, 0)
2524    }
2525
2526    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2527    #[inline(always)]
2528    pub fn ads12(
2529        self,
2530    ) -> crate::common::RegisterField<
2531        12,
2532        0x1,
2533        1,
2534        0,
2535        adads0::Ads12,
2536        adads0::Ads12,
2537        Adads0_SPEC,
2538        crate::common::RW,
2539    > {
2540        crate::common::RegisterField::<
2541            12,
2542            0x1,
2543            1,
2544            0,
2545            adads0::Ads12,
2546            adads0::Ads12,
2547            Adads0_SPEC,
2548            crate::common::RW,
2549        >::from_register(self, 0)
2550    }
2551
2552    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2553    #[inline(always)]
2554    pub fn ads13(
2555        self,
2556    ) -> crate::common::RegisterField<
2557        13,
2558        0x1,
2559        1,
2560        0,
2561        adads0::Ads13,
2562        adads0::Ads13,
2563        Adads0_SPEC,
2564        crate::common::RW,
2565    > {
2566        crate::common::RegisterField::<
2567            13,
2568            0x1,
2569            1,
2570            0,
2571            adads0::Ads13,
2572            adads0::Ads13,
2573            Adads0_SPEC,
2574            crate::common::RW,
2575        >::from_register(self, 0)
2576    }
2577
2578    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2579    #[inline(always)]
2580    pub fn ads14(
2581        self,
2582    ) -> crate::common::RegisterField<
2583        14,
2584        0x1,
2585        1,
2586        0,
2587        adads0::Ads14,
2588        adads0::Ads14,
2589        Adads0_SPEC,
2590        crate::common::RW,
2591    > {
2592        crate::common::RegisterField::<
2593            14,
2594            0x1,
2595            1,
2596            0,
2597            adads0::Ads14,
2598            adads0::Ads14,
2599            Adads0_SPEC,
2600            crate::common::RW,
2601        >::from_register(self, 0)
2602    }
2603
2604    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2605    #[inline(always)]
2606    pub fn ads15(
2607        self,
2608    ) -> crate::common::RegisterField<
2609        15,
2610        0x1,
2611        1,
2612        0,
2613        adads0::Ads15,
2614        adads0::Ads15,
2615        Adads0_SPEC,
2616        crate::common::RW,
2617    > {
2618        crate::common::RegisterField::<
2619            15,
2620            0x1,
2621            1,
2622            0,
2623            adads0::Ads15,
2624            adads0::Ads15,
2625            Adads0_SPEC,
2626            crate::common::RW,
2627        >::from_register(self, 0)
2628    }
2629}
2630impl ::core::default::Default for Adads0 {
2631    #[inline(always)]
2632    fn default() -> Adads0 {
2633        <crate::RegValueT<Adads0_SPEC> as RegisterValue<_>>::new(0)
2634    }
2635}
2636pub mod adads0 {
2637
2638    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2639    pub struct Ads00_SPEC;
2640    pub type Ads00 = crate::EnumBitfieldStruct<u8, Ads00_SPEC>;
2641    impl Ads00 {
2642        #[doc = "Do not select associated input channel."]
2643        pub const _0: Self = Self::new(0);
2644
2645        #[doc = "Select associated input channel."]
2646        pub const _1: Self = Self::new(1);
2647    }
2648    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2649    pub struct Ads01_SPEC;
2650    pub type Ads01 = crate::EnumBitfieldStruct<u8, Ads01_SPEC>;
2651    impl Ads01 {
2652        #[doc = "Do not select associated input channel."]
2653        pub const _0: Self = Self::new(0);
2654
2655        #[doc = "Select associated input channel."]
2656        pub const _1: Self = Self::new(1);
2657    }
2658    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2659    pub struct Ads02_SPEC;
2660    pub type Ads02 = crate::EnumBitfieldStruct<u8, Ads02_SPEC>;
2661    impl Ads02 {
2662        #[doc = "Do not select associated input channel."]
2663        pub const _0: Self = Self::new(0);
2664
2665        #[doc = "Select associated input channel."]
2666        pub const _1: Self = Self::new(1);
2667    }
2668    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2669    pub struct Ads03_SPEC;
2670    pub type Ads03 = crate::EnumBitfieldStruct<u8, Ads03_SPEC>;
2671    impl Ads03 {
2672        #[doc = "Do not select associated input channel."]
2673        pub const _0: Self = Self::new(0);
2674
2675        #[doc = "Select associated input channel."]
2676        pub const _1: Self = Self::new(1);
2677    }
2678    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2679    pub struct Ads04_SPEC;
2680    pub type Ads04 = crate::EnumBitfieldStruct<u8, Ads04_SPEC>;
2681    impl Ads04 {
2682        #[doc = "Do not select associated input channel."]
2683        pub const _0: Self = Self::new(0);
2684
2685        #[doc = "Select associated input channel."]
2686        pub const _1: Self = Self::new(1);
2687    }
2688    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2689    pub struct Ads05_SPEC;
2690    pub type Ads05 = crate::EnumBitfieldStruct<u8, Ads05_SPEC>;
2691    impl Ads05 {
2692        #[doc = "Do not select associated input channel."]
2693        pub const _0: Self = Self::new(0);
2694
2695        #[doc = "Select associated input channel."]
2696        pub const _1: Self = Self::new(1);
2697    }
2698    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2699    pub struct Ads06_SPEC;
2700    pub type Ads06 = crate::EnumBitfieldStruct<u8, Ads06_SPEC>;
2701    impl Ads06 {
2702        #[doc = "Do not select associated input channel."]
2703        pub const _0: Self = Self::new(0);
2704
2705        #[doc = "Select associated input channel."]
2706        pub const _1: Self = Self::new(1);
2707    }
2708    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2709    pub struct Ads07_SPEC;
2710    pub type Ads07 = crate::EnumBitfieldStruct<u8, Ads07_SPEC>;
2711    impl Ads07 {
2712        #[doc = "Do not select associated input channel."]
2713        pub const _0: Self = Self::new(0);
2714
2715        #[doc = "Select associated input channel."]
2716        pub const _1: Self = Self::new(1);
2717    }
2718    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2719    pub struct Ads08_SPEC;
2720    pub type Ads08 = crate::EnumBitfieldStruct<u8, Ads08_SPEC>;
2721    impl Ads08 {
2722        #[doc = "Do not select associated input channel."]
2723        pub const _0: Self = Self::new(0);
2724
2725        #[doc = "Select associated input channel."]
2726        pub const _1: Self = Self::new(1);
2727    }
2728    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2729    pub struct Ads09_SPEC;
2730    pub type Ads09 = crate::EnumBitfieldStruct<u8, Ads09_SPEC>;
2731    impl Ads09 {
2732        #[doc = "Do not select associated input channel."]
2733        pub const _0: Self = Self::new(0);
2734
2735        #[doc = "Select associated input channel."]
2736        pub const _1: Self = Self::new(1);
2737    }
2738    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2739    pub struct Ads10_SPEC;
2740    pub type Ads10 = crate::EnumBitfieldStruct<u8, Ads10_SPEC>;
2741    impl Ads10 {
2742        #[doc = "Do not select associated input channel."]
2743        pub const _0: Self = Self::new(0);
2744
2745        #[doc = "Select associated input channel."]
2746        pub const _1: Self = Self::new(1);
2747    }
2748    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2749    pub struct Ads11_SPEC;
2750    pub type Ads11 = crate::EnumBitfieldStruct<u8, Ads11_SPEC>;
2751    impl Ads11 {
2752        #[doc = "Do not select associated input channel."]
2753        pub const _0: Self = Self::new(0);
2754
2755        #[doc = "Select associated input channel."]
2756        pub const _1: Self = Self::new(1);
2757    }
2758    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2759    pub struct Ads12_SPEC;
2760    pub type Ads12 = crate::EnumBitfieldStruct<u8, Ads12_SPEC>;
2761    impl Ads12 {
2762        #[doc = "Do not select associated input channel."]
2763        pub const _0: Self = Self::new(0);
2764
2765        #[doc = "Select associated input channel."]
2766        pub const _1: Self = Self::new(1);
2767    }
2768    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2769    pub struct Ads13_SPEC;
2770    pub type Ads13 = crate::EnumBitfieldStruct<u8, Ads13_SPEC>;
2771    impl Ads13 {
2772        #[doc = "Do not select associated input channel."]
2773        pub const _0: Self = Self::new(0);
2774
2775        #[doc = "Select associated input channel."]
2776        pub const _1: Self = Self::new(1);
2777    }
2778    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2779    pub struct Ads14_SPEC;
2780    pub type Ads14 = crate::EnumBitfieldStruct<u8, Ads14_SPEC>;
2781    impl Ads14 {
2782        #[doc = "Do not select associated input channel."]
2783        pub const _0: Self = Self::new(0);
2784
2785        #[doc = "Select associated input channel."]
2786        pub const _1: Self = Self::new(1);
2787    }
2788    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2789    pub struct Ads15_SPEC;
2790    pub type Ads15 = crate::EnumBitfieldStruct<u8, Ads15_SPEC>;
2791    impl Ads15 {
2792        #[doc = "Do not select associated input channel."]
2793        pub const _0: Self = Self::new(0);
2794
2795        #[doc = "Select associated input channel."]
2796        pub const _1: Self = Self::new(1);
2797    }
2798}
2799#[doc(hidden)]
2800#[derive(Copy, Clone, Eq, PartialEq)]
2801pub struct Adads1_SPEC;
2802impl crate::sealed::RegSpec for Adads1_SPEC {
2803    type DataType = u16;
2804}
2805
2806#[doc = "A/D-Converted Value Addition/Average Channel Select Register 1"]
2807pub type Adads1 = crate::RegValueT<Adads1_SPEC>;
2808
2809impl Adads1 {
2810    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2811    #[inline(always)]
2812    pub fn ads16(
2813        self,
2814    ) -> crate::common::RegisterField<
2815        0,
2816        0x1,
2817        1,
2818        0,
2819        adads1::Ads16,
2820        adads1::Ads16,
2821        Adads1_SPEC,
2822        crate::common::RW,
2823    > {
2824        crate::common::RegisterField::<
2825            0,
2826            0x1,
2827            1,
2828            0,
2829            adads1::Ads16,
2830            adads1::Ads16,
2831            Adads1_SPEC,
2832            crate::common::RW,
2833        >::from_register(self, 0)
2834    }
2835
2836    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2837    #[inline(always)]
2838    pub fn ads17(
2839        self,
2840    ) -> crate::common::RegisterField<
2841        1,
2842        0x1,
2843        1,
2844        0,
2845        adads1::Ads17,
2846        adads1::Ads17,
2847        Adads1_SPEC,
2848        crate::common::RW,
2849    > {
2850        crate::common::RegisterField::<
2851            1,
2852            0x1,
2853            1,
2854            0,
2855            adads1::Ads17,
2856            adads1::Ads17,
2857            Adads1_SPEC,
2858            crate::common::RW,
2859        >::from_register(self, 0)
2860    }
2861
2862    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2863    #[inline(always)]
2864    pub fn ads18(
2865        self,
2866    ) -> crate::common::RegisterField<
2867        2,
2868        0x1,
2869        1,
2870        0,
2871        adads1::Ads18,
2872        adads1::Ads18,
2873        Adads1_SPEC,
2874        crate::common::RW,
2875    > {
2876        crate::common::RegisterField::<
2877            2,
2878            0x1,
2879            1,
2880            0,
2881            adads1::Ads18,
2882            adads1::Ads18,
2883            Adads1_SPEC,
2884            crate::common::RW,
2885        >::from_register(self, 0)
2886    }
2887
2888    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2889    #[inline(always)]
2890    pub fn ads19(
2891        self,
2892    ) -> crate::common::RegisterField<
2893        3,
2894        0x1,
2895        1,
2896        0,
2897        adads1::Ads19,
2898        adads1::Ads19,
2899        Adads1_SPEC,
2900        crate::common::RW,
2901    > {
2902        crate::common::RegisterField::<
2903            3,
2904            0x1,
2905            1,
2906            0,
2907            adads1::Ads19,
2908            adads1::Ads19,
2909            Adads1_SPEC,
2910            crate::common::RW,
2911        >::from_register(self, 0)
2912    }
2913
2914    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2915    #[inline(always)]
2916    pub fn ads20(
2917        self,
2918    ) -> crate::common::RegisterField<
2919        4,
2920        0x1,
2921        1,
2922        0,
2923        adads1::Ads20,
2924        adads1::Ads20,
2925        Adads1_SPEC,
2926        crate::common::RW,
2927    > {
2928        crate::common::RegisterField::<
2929            4,
2930            0x1,
2931            1,
2932            0,
2933            adads1::Ads20,
2934            adads1::Ads20,
2935            Adads1_SPEC,
2936            crate::common::RW,
2937        >::from_register(self, 0)
2938    }
2939
2940    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2941    #[inline(always)]
2942    pub fn ads21(
2943        self,
2944    ) -> crate::common::RegisterField<
2945        5,
2946        0x1,
2947        1,
2948        0,
2949        adads1::Ads21,
2950        adads1::Ads21,
2951        Adads1_SPEC,
2952        crate::common::RW,
2953    > {
2954        crate::common::RegisterField::<
2955            5,
2956            0x1,
2957            1,
2958            0,
2959            adads1::Ads21,
2960            adads1::Ads21,
2961            Adads1_SPEC,
2962            crate::common::RW,
2963        >::from_register(self, 0)
2964    }
2965
2966    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2967    #[inline(always)]
2968    pub fn ads22(
2969        self,
2970    ) -> crate::common::RegisterField<
2971        6,
2972        0x1,
2973        1,
2974        0,
2975        adads1::Ads22,
2976        adads1::Ads22,
2977        Adads1_SPEC,
2978        crate::common::RW,
2979    > {
2980        crate::common::RegisterField::<
2981            6,
2982            0x1,
2983            1,
2984            0,
2985            adads1::Ads22,
2986            adads1::Ads22,
2987            Adads1_SPEC,
2988            crate::common::RW,
2989        >::from_register(self, 0)
2990    }
2991
2992    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
2993    #[inline(always)]
2994    pub fn ads23(
2995        self,
2996    ) -> crate::common::RegisterField<
2997        7,
2998        0x1,
2999        1,
3000        0,
3001        adads1::Ads23,
3002        adads1::Ads23,
3003        Adads1_SPEC,
3004        crate::common::RW,
3005    > {
3006        crate::common::RegisterField::<
3007            7,
3008            0x1,
3009            1,
3010            0,
3011            adads1::Ads23,
3012            adads1::Ads23,
3013            Adads1_SPEC,
3014            crate::common::RW,
3015        >::from_register(self, 0)
3016    }
3017
3018    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3019    #[inline(always)]
3020    pub fn ads24(
3021        self,
3022    ) -> crate::common::RegisterField<
3023        8,
3024        0x1,
3025        1,
3026        0,
3027        adads1::Ads24,
3028        adads1::Ads24,
3029        Adads1_SPEC,
3030        crate::common::RW,
3031    > {
3032        crate::common::RegisterField::<
3033            8,
3034            0x1,
3035            1,
3036            0,
3037            adads1::Ads24,
3038            adads1::Ads24,
3039            Adads1_SPEC,
3040            crate::common::RW,
3041        >::from_register(self, 0)
3042    }
3043
3044    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3045    #[inline(always)]
3046    pub fn ads25(
3047        self,
3048    ) -> crate::common::RegisterField<
3049        9,
3050        0x1,
3051        1,
3052        0,
3053        adads1::Ads25,
3054        adads1::Ads25,
3055        Adads1_SPEC,
3056        crate::common::RW,
3057    > {
3058        crate::common::RegisterField::<
3059            9,
3060            0x1,
3061            1,
3062            0,
3063            adads1::Ads25,
3064            adads1::Ads25,
3065            Adads1_SPEC,
3066            crate::common::RW,
3067        >::from_register(self, 0)
3068    }
3069
3070    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3071    #[inline(always)]
3072    pub fn ads26(
3073        self,
3074    ) -> crate::common::RegisterField<
3075        10,
3076        0x1,
3077        1,
3078        0,
3079        adads1::Ads26,
3080        adads1::Ads26,
3081        Adads1_SPEC,
3082        crate::common::RW,
3083    > {
3084        crate::common::RegisterField::<
3085            10,
3086            0x1,
3087            1,
3088            0,
3089            adads1::Ads26,
3090            adads1::Ads26,
3091            Adads1_SPEC,
3092            crate::common::RW,
3093        >::from_register(self, 0)
3094    }
3095
3096    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3097    #[inline(always)]
3098    pub fn ads27(
3099        self,
3100    ) -> crate::common::RegisterField<
3101        11,
3102        0x1,
3103        1,
3104        0,
3105        adads1::Ads27,
3106        adads1::Ads27,
3107        Adads1_SPEC,
3108        crate::common::RW,
3109    > {
3110        crate::common::RegisterField::<
3111            11,
3112            0x1,
3113            1,
3114            0,
3115            adads1::Ads27,
3116            adads1::Ads27,
3117            Adads1_SPEC,
3118            crate::common::RW,
3119        >::from_register(self, 0)
3120    }
3121
3122    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3123    #[inline(always)]
3124    pub fn ads28(
3125        self,
3126    ) -> crate::common::RegisterField<
3127        12,
3128        0x1,
3129        1,
3130        0,
3131        adads1::Ads28,
3132        adads1::Ads28,
3133        Adads1_SPEC,
3134        crate::common::RW,
3135    > {
3136        crate::common::RegisterField::<
3137            12,
3138            0x1,
3139            1,
3140            0,
3141            adads1::Ads28,
3142            adads1::Ads28,
3143            Adads1_SPEC,
3144            crate::common::RW,
3145        >::from_register(self, 0)
3146    }
3147
3148    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3149    #[inline(always)]
3150    pub fn ads29(
3151        self,
3152    ) -> crate::common::RegisterField<
3153        13,
3154        0x1,
3155        1,
3156        0,
3157        adads1::Ads29,
3158        adads1::Ads29,
3159        Adads1_SPEC,
3160        crate::common::RW,
3161    > {
3162        crate::common::RegisterField::<
3163            13,
3164            0x1,
3165            1,
3166            0,
3167            adads1::Ads29,
3168            adads1::Ads29,
3169            Adads1_SPEC,
3170            crate::common::RW,
3171        >::from_register(self, 0)
3172    }
3173
3174    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3175    #[inline(always)]
3176    pub fn ads30(
3177        self,
3178    ) -> crate::common::RegisterField<
3179        14,
3180        0x1,
3181        1,
3182        0,
3183        adads1::Ads30,
3184        adads1::Ads30,
3185        Adads1_SPEC,
3186        crate::common::RW,
3187    > {
3188        crate::common::RegisterField::<
3189            14,
3190            0x1,
3191            1,
3192            0,
3193            adads1::Ads30,
3194            adads1::Ads30,
3195            Adads1_SPEC,
3196            crate::common::RW,
3197        >::from_register(self, 0)
3198    }
3199
3200    #[doc = "A/D-Converted Value Addition/Average Channel Select"]
3201    #[inline(always)]
3202    pub fn ads31(
3203        self,
3204    ) -> crate::common::RegisterField<
3205        15,
3206        0x1,
3207        1,
3208        0,
3209        adads1::Ads31,
3210        adads1::Ads31,
3211        Adads1_SPEC,
3212        crate::common::RW,
3213    > {
3214        crate::common::RegisterField::<
3215            15,
3216            0x1,
3217            1,
3218            0,
3219            adads1::Ads31,
3220            adads1::Ads31,
3221            Adads1_SPEC,
3222            crate::common::RW,
3223        >::from_register(self, 0)
3224    }
3225}
3226impl ::core::default::Default for Adads1 {
3227    #[inline(always)]
3228    fn default() -> Adads1 {
3229        <crate::RegValueT<Adads1_SPEC> as RegisterValue<_>>::new(0)
3230    }
3231}
3232pub mod adads1 {
3233
3234    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3235    pub struct Ads16_SPEC;
3236    pub type Ads16 = crate::EnumBitfieldStruct<u8, Ads16_SPEC>;
3237    impl Ads16 {
3238        #[doc = "Do not select associated input channel."]
3239        pub const _0: Self = Self::new(0);
3240
3241        #[doc = "Select associated input channel."]
3242        pub const _1: Self = Self::new(1);
3243    }
3244    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3245    pub struct Ads17_SPEC;
3246    pub type Ads17 = crate::EnumBitfieldStruct<u8, Ads17_SPEC>;
3247    impl Ads17 {
3248        #[doc = "Do not select associated input channel."]
3249        pub const _0: Self = Self::new(0);
3250
3251        #[doc = "Select associated input channel."]
3252        pub const _1: Self = Self::new(1);
3253    }
3254    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3255    pub struct Ads18_SPEC;
3256    pub type Ads18 = crate::EnumBitfieldStruct<u8, Ads18_SPEC>;
3257    impl Ads18 {
3258        #[doc = "Do not select associated input channel."]
3259        pub const _0: Self = Self::new(0);
3260
3261        #[doc = "Select associated input channel."]
3262        pub const _1: Self = Self::new(1);
3263    }
3264    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3265    pub struct Ads19_SPEC;
3266    pub type Ads19 = crate::EnumBitfieldStruct<u8, Ads19_SPEC>;
3267    impl Ads19 {
3268        #[doc = "Do not select associated input channel."]
3269        pub const _0: Self = Self::new(0);
3270
3271        #[doc = "Select associated input channel."]
3272        pub const _1: Self = Self::new(1);
3273    }
3274    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3275    pub struct Ads20_SPEC;
3276    pub type Ads20 = crate::EnumBitfieldStruct<u8, Ads20_SPEC>;
3277    impl Ads20 {
3278        #[doc = "Do not select associated input channel."]
3279        pub const _0: Self = Self::new(0);
3280
3281        #[doc = "Select associated input channel."]
3282        pub const _1: Self = Self::new(1);
3283    }
3284    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3285    pub struct Ads21_SPEC;
3286    pub type Ads21 = crate::EnumBitfieldStruct<u8, Ads21_SPEC>;
3287    impl Ads21 {
3288        #[doc = "Do not select associated input channel."]
3289        pub const _0: Self = Self::new(0);
3290
3291        #[doc = "Select associated input channel."]
3292        pub const _1: Self = Self::new(1);
3293    }
3294    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3295    pub struct Ads22_SPEC;
3296    pub type Ads22 = crate::EnumBitfieldStruct<u8, Ads22_SPEC>;
3297    impl Ads22 {
3298        #[doc = "Do not select associated input channel."]
3299        pub const _0: Self = Self::new(0);
3300
3301        #[doc = "Select associated input channel."]
3302        pub const _1: Self = Self::new(1);
3303    }
3304    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3305    pub struct Ads23_SPEC;
3306    pub type Ads23 = crate::EnumBitfieldStruct<u8, Ads23_SPEC>;
3307    impl Ads23 {
3308        #[doc = "Do not select associated input channel."]
3309        pub const _0: Self = Self::new(0);
3310
3311        #[doc = "Select associated input channel."]
3312        pub const _1: Self = Self::new(1);
3313    }
3314    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3315    pub struct Ads24_SPEC;
3316    pub type Ads24 = crate::EnumBitfieldStruct<u8, Ads24_SPEC>;
3317    impl Ads24 {
3318        #[doc = "Do not select associated input channel."]
3319        pub const _0: Self = Self::new(0);
3320
3321        #[doc = "Select associated input channel."]
3322        pub const _1: Self = Self::new(1);
3323    }
3324    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3325    pub struct Ads25_SPEC;
3326    pub type Ads25 = crate::EnumBitfieldStruct<u8, Ads25_SPEC>;
3327    impl Ads25 {
3328        #[doc = "Do not select associated input channel."]
3329        pub const _0: Self = Self::new(0);
3330
3331        #[doc = "Select associated input channel."]
3332        pub const _1: Self = Self::new(1);
3333    }
3334    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3335    pub struct Ads26_SPEC;
3336    pub type Ads26 = crate::EnumBitfieldStruct<u8, Ads26_SPEC>;
3337    impl Ads26 {
3338        #[doc = "Do not select associated input channel."]
3339        pub const _0: Self = Self::new(0);
3340
3341        #[doc = "Select associated input channel."]
3342        pub const _1: Self = Self::new(1);
3343    }
3344    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3345    pub struct Ads27_SPEC;
3346    pub type Ads27 = crate::EnumBitfieldStruct<u8, Ads27_SPEC>;
3347    impl Ads27 {
3348        #[doc = "Do not select associated input channel."]
3349        pub const _0: Self = Self::new(0);
3350
3351        #[doc = "Select associated input channel."]
3352        pub const _1: Self = Self::new(1);
3353    }
3354    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3355    pub struct Ads28_SPEC;
3356    pub type Ads28 = crate::EnumBitfieldStruct<u8, Ads28_SPEC>;
3357    impl Ads28 {
3358        #[doc = "Do not select associated input channel."]
3359        pub const _0: Self = Self::new(0);
3360
3361        #[doc = "Select associated input channel."]
3362        pub const _1: Self = Self::new(1);
3363    }
3364    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3365    pub struct Ads29_SPEC;
3366    pub type Ads29 = crate::EnumBitfieldStruct<u8, Ads29_SPEC>;
3367    impl Ads29 {
3368        #[doc = "Do not select associated input channel."]
3369        pub const _0: Self = Self::new(0);
3370
3371        #[doc = "Select associated input channel."]
3372        pub const _1: Self = Self::new(1);
3373    }
3374    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3375    pub struct Ads30_SPEC;
3376    pub type Ads30 = crate::EnumBitfieldStruct<u8, Ads30_SPEC>;
3377    impl Ads30 {
3378        #[doc = "Do not select associated input channel."]
3379        pub const _0: Self = Self::new(0);
3380
3381        #[doc = "Select associated input channel."]
3382        pub const _1: Self = Self::new(1);
3383    }
3384    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3385    pub struct Ads31_SPEC;
3386    pub type Ads31 = crate::EnumBitfieldStruct<u8, Ads31_SPEC>;
3387    impl Ads31 {
3388        #[doc = "Do not select associated input channel."]
3389        pub const _0: Self = Self::new(0);
3390
3391        #[doc = "Select associated input channel."]
3392        pub const _1: Self = Self::new(1);
3393    }
3394}
3395#[doc(hidden)]
3396#[derive(Copy, Clone, Eq, PartialEq)]
3397pub struct Adadc_SPEC;
3398impl crate::sealed::RegSpec for Adadc_SPEC {
3399    type DataType = u8;
3400}
3401
3402#[doc = "A/D-Converted Value Addition/Average Count Select Register"]
3403pub type Adadc = crate::RegValueT<Adadc_SPEC>;
3404
3405impl Adadc {
3406    #[doc = "Addition/Average Count Select"]
3407    #[inline(always)]
3408    pub fn adc(
3409        self,
3410    ) -> crate::common::RegisterField<
3411        0,
3412        0x7,
3413        1,
3414        0,
3415        adadc::Adc,
3416        adadc::Adc,
3417        Adadc_SPEC,
3418        crate::common::RW,
3419    > {
3420        crate::common::RegisterField::<
3421            0,
3422            0x7,
3423            1,
3424            0,
3425            adadc::Adc,
3426            adadc::Adc,
3427            Adadc_SPEC,
3428            crate::common::RW,
3429        >::from_register(self, 0)
3430    }
3431
3432    #[doc = "Average Mode Select"]
3433    #[inline(always)]
3434    pub fn avee(
3435        self,
3436    ) -> crate::common::RegisterField<
3437        7,
3438        0x1,
3439        1,
3440        0,
3441        adadc::Avee,
3442        adadc::Avee,
3443        Adadc_SPEC,
3444        crate::common::RW,
3445    > {
3446        crate::common::RegisterField::<
3447            7,
3448            0x1,
3449            1,
3450            0,
3451            adadc::Avee,
3452            adadc::Avee,
3453            Adadc_SPEC,
3454            crate::common::RW,
3455        >::from_register(self, 0)
3456    }
3457}
3458impl ::core::default::Default for Adadc {
3459    #[inline(always)]
3460    fn default() -> Adadc {
3461        <crate::RegValueT<Adadc_SPEC> as RegisterValue<_>>::new(0)
3462    }
3463}
3464pub mod adadc {
3465
3466    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3467    pub struct Adc_SPEC;
3468    pub type Adc = crate::EnumBitfieldStruct<u8, Adc_SPEC>;
3469    impl Adc {
3470        #[doc = "1-time conversion (no addition, same as normal conversion)"]
3471        pub const _000: Self = Self::new(0);
3472
3473        #[doc = "2-time conversion (1 addition)"]
3474        pub const _001: Self = Self::new(1);
3475
3476        #[doc = "3-time conversion (2 additions)"]
3477        pub const _010: Self = Self::new(2);
3478
3479        #[doc = "4-time conversion (3 additions)"]
3480        pub const _011: Self = Self::new(3);
3481
3482        #[doc = "16-time conversion (15 additions)"]
3483        pub const _101: Self = Self::new(5);
3484
3485        #[doc = "Setting prohibited"]
3486        pub const OTHERS: Self = Self::new(0);
3487    }
3488    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3489    pub struct Avee_SPEC;
3490    pub type Avee = crate::EnumBitfieldStruct<u8, Avee_SPEC>;
3491    impl Avee {
3492        #[doc = "Enable addition mode"]
3493        pub const _0: Self = Self::new(0);
3494
3495        #[doc = "Enable average mode"]
3496        pub const _1: Self = Self::new(1);
3497    }
3498}
3499#[doc(hidden)]
3500#[derive(Copy, Clone, Eq, PartialEq)]
3501pub struct Adcer_SPEC;
3502impl crate::sealed::RegSpec for Adcer_SPEC {
3503    type DataType = u16;
3504}
3505
3506#[doc = "A/D Control Extended Register"]
3507pub type Adcer = crate::RegValueT<Adcer_SPEC>;
3508
3509impl Adcer {
3510    #[inline(always)]
3511    pub fn adprc(
3512        self,
3513    ) -> crate::common::RegisterField<
3514        1,
3515        0x3,
3516        1,
3517        0,
3518        adcer::Adprc,
3519        adcer::Adprc,
3520        Adcer_SPEC,
3521        crate::common::RW,
3522    > {
3523        crate::common::RegisterField::<
3524            1,
3525            0x3,
3526            1,
3527            0,
3528            adcer::Adprc,
3529            adcer::Adprc,
3530            Adcer_SPEC,
3531            crate::common::RW,
3532        >::from_register(self, 0)
3533    }
3534
3535    #[doc = "A/D Data Register Automatic Clearing Enable"]
3536    #[inline(always)]
3537    pub fn ace(
3538        self,
3539    ) -> crate::common::RegisterField<
3540        5,
3541        0x1,
3542        1,
3543        0,
3544        adcer::Ace,
3545        adcer::Ace,
3546        Adcer_SPEC,
3547        crate::common::RW,
3548    > {
3549        crate::common::RegisterField::<
3550            5,
3551            0x1,
3552            1,
3553            0,
3554            adcer::Ace,
3555            adcer::Ace,
3556            Adcer_SPEC,
3557            crate::common::RW,
3558        >::from_register(self, 0)
3559    }
3560
3561    #[doc = "Self-Diagnosis Conversion Voltage Select"]
3562    #[inline(always)]
3563    pub fn diagval(
3564        self,
3565    ) -> crate::common::RegisterField<
3566        8,
3567        0x3,
3568        1,
3569        0,
3570        adcer::Diagval,
3571        adcer::Diagval,
3572        Adcer_SPEC,
3573        crate::common::RW,
3574    > {
3575        crate::common::RegisterField::<
3576            8,
3577            0x3,
3578            1,
3579            0,
3580            adcer::Diagval,
3581            adcer::Diagval,
3582            Adcer_SPEC,
3583            crate::common::RW,
3584        >::from_register(self, 0)
3585    }
3586
3587    #[doc = "Self-Diagnosis Mode Select"]
3588    #[inline(always)]
3589    pub fn diagld(
3590        self,
3591    ) -> crate::common::RegisterField<
3592        10,
3593        0x1,
3594        1,
3595        0,
3596        adcer::Diagld,
3597        adcer::Diagld,
3598        Adcer_SPEC,
3599        crate::common::RW,
3600    > {
3601        crate::common::RegisterField::<
3602            10,
3603            0x1,
3604            1,
3605            0,
3606            adcer::Diagld,
3607            adcer::Diagld,
3608            Adcer_SPEC,
3609            crate::common::RW,
3610        >::from_register(self, 0)
3611    }
3612
3613    #[doc = "Self-Diagnosis Enable"]
3614    #[inline(always)]
3615    pub fn diagm(
3616        self,
3617    ) -> crate::common::RegisterField<
3618        11,
3619        0x1,
3620        1,
3621        0,
3622        adcer::Diagm,
3623        adcer::Diagm,
3624        Adcer_SPEC,
3625        crate::common::RW,
3626    > {
3627        crate::common::RegisterField::<
3628            11,
3629            0x1,
3630            1,
3631            0,
3632            adcer::Diagm,
3633            adcer::Diagm,
3634            Adcer_SPEC,
3635            crate::common::RW,
3636        >::from_register(self, 0)
3637    }
3638
3639    #[doc = "A/D Data Register Format Select"]
3640    #[inline(always)]
3641    pub fn adrfmt(
3642        self,
3643    ) -> crate::common::RegisterField<
3644        15,
3645        0x1,
3646        1,
3647        0,
3648        adcer::Adrfmt,
3649        adcer::Adrfmt,
3650        Adcer_SPEC,
3651        crate::common::RW,
3652    > {
3653        crate::common::RegisterField::<
3654            15,
3655            0x1,
3656            1,
3657            0,
3658            adcer::Adrfmt,
3659            adcer::Adrfmt,
3660            Adcer_SPEC,
3661            crate::common::RW,
3662        >::from_register(self, 0)
3663    }
3664}
3665impl ::core::default::Default for Adcer {
3666    #[inline(always)]
3667    fn default() -> Adcer {
3668        <crate::RegValueT<Adcer_SPEC> as RegisterValue<_>>::new(0)
3669    }
3670}
3671pub mod adcer {
3672
3673    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3674    pub struct Adprc_SPEC;
3675    pub type Adprc = crate::EnumBitfieldStruct<u8, Adprc_SPEC>;
3676    impl Adprc {
3677        #[doc = "12-bit accuracy"]
3678        pub const _00: Self = Self::new(0);
3679
3680        #[doc = "10-bit accuracy"]
3681        pub const _01: Self = Self::new(1);
3682
3683        #[doc = "8-bit accuracy"]
3684        pub const _10: Self = Self::new(2);
3685
3686        #[doc = "Setting prohibited"]
3687        pub const _11: Self = Self::new(3);
3688    }
3689    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3690    pub struct Ace_SPEC;
3691    pub type Ace = crate::EnumBitfieldStruct<u8, Ace_SPEC>;
3692    impl Ace {
3693        #[doc = "Disable automatic clearing"]
3694        pub const _0: Self = Self::new(0);
3695
3696        #[doc = "Enable automatic clearing"]
3697        pub const _1: Self = Self::new(1);
3698    }
3699    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3700    pub struct Diagval_SPEC;
3701    pub type Diagval = crate::EnumBitfieldStruct<u8, Diagval_SPEC>;
3702    impl Diagval {
3703        #[doc = "Setting prohibited when self-diagnosis is enabled"]
3704        pub const _00: Self = Self::new(0);
3705
3706        #[doc = "0 volts"]
3707        pub const _01: Self = Self::new(1);
3708
3709        #[doc = "Reference voltage × 1/2"]
3710        pub const _10: Self = Self::new(2);
3711
3712        #[doc = "Reference voltage"]
3713        pub const _11: Self = Self::new(3);
3714    }
3715    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3716    pub struct Diagld_SPEC;
3717    pub type Diagld = crate::EnumBitfieldStruct<u8, Diagld_SPEC>;
3718    impl Diagld {
3719        #[doc = "Select rotation mode for self-diagnosis voltage"]
3720        pub const _0: Self = Self::new(0);
3721
3722        #[doc = "Select mixed mode for self-diagnosis voltage"]
3723        pub const _1: Self = Self::new(1);
3724    }
3725    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3726    pub struct Diagm_SPEC;
3727    pub type Diagm = crate::EnumBitfieldStruct<u8, Diagm_SPEC>;
3728    impl Diagm {
3729        #[doc = "Disable ADC12 self-diagnosis"]
3730        pub const _0: Self = Self::new(0);
3731
3732        #[doc = "Enable ADC12 self-diagnosis"]
3733        pub const _1: Self = Self::new(1);
3734    }
3735    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3736    pub struct Adrfmt_SPEC;
3737    pub type Adrfmt = crate::EnumBitfieldStruct<u8, Adrfmt_SPEC>;
3738    impl Adrfmt {
3739        #[doc = "Select right-justified for the A/D data register format"]
3740        pub const _0: Self = Self::new(0);
3741
3742        #[doc = "Select left-justified for the A/D data register format"]
3743        pub const _1: Self = Self::new(1);
3744    }
3745}
3746#[doc(hidden)]
3747#[derive(Copy, Clone, Eq, PartialEq)]
3748pub struct Adstrgr_SPEC;
3749impl crate::sealed::RegSpec for Adstrgr_SPEC {
3750    type DataType = u16;
3751}
3752
3753#[doc = "A/D Conversion Start Trigger Select Register"]
3754pub type Adstrgr = crate::RegValueT<Adstrgr_SPEC>;
3755
3756impl Adstrgr {
3757    #[doc = "A/D Conversion Start Trigger Select for Group B"]
3758    #[inline(always)]
3759    pub fn trsb(
3760        self,
3761    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
3762        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
3763    }
3764
3765    #[doc = "A/D Conversion Start Trigger Select"]
3766    #[inline(always)]
3767    pub fn trsa(
3768        self,
3769    ) -> crate::common::RegisterField<8, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
3770        crate::common::RegisterField::<8,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
3771    }
3772}
3773impl ::core::default::Default for Adstrgr {
3774    #[inline(always)]
3775    fn default() -> Adstrgr {
3776        <crate::RegValueT<Adstrgr_SPEC> as RegisterValue<_>>::new(0)
3777    }
3778}
3779
3780#[doc(hidden)]
3781#[derive(Copy, Clone, Eq, PartialEq)]
3782pub struct Adexicr_SPEC;
3783impl crate::sealed::RegSpec for Adexicr_SPEC {
3784    type DataType = u16;
3785}
3786
3787#[doc = "A/D Conversion Extended Input Control Registers"]
3788pub type Adexicr = crate::RegValueT<Adexicr_SPEC>;
3789
3790impl Adexicr {
3791    #[doc = "Temperature Sensor Output A/D-Converted Value Addition/Average Mode Select"]
3792    #[inline(always)]
3793    pub fn tssad(
3794        self,
3795    ) -> crate::common::RegisterField<
3796        0,
3797        0x1,
3798        1,
3799        0,
3800        adexicr::Tssad,
3801        adexicr::Tssad,
3802        Adexicr_SPEC,
3803        crate::common::RW,
3804    > {
3805        crate::common::RegisterField::<
3806            0,
3807            0x1,
3808            1,
3809            0,
3810            adexicr::Tssad,
3811            adexicr::Tssad,
3812            Adexicr_SPEC,
3813            crate::common::RW,
3814        >::from_register(self, 0)
3815    }
3816
3817    #[doc = "Internal Reference Voltage A/D-Converted Value Addition/Average Mode Select"]
3818    #[inline(always)]
3819    pub fn ocsad(
3820        self,
3821    ) -> crate::common::RegisterField<
3822        1,
3823        0x1,
3824        1,
3825        0,
3826        adexicr::Ocsad,
3827        adexicr::Ocsad,
3828        Adexicr_SPEC,
3829        crate::common::RW,
3830    > {
3831        crate::common::RegisterField::<
3832            1,
3833            0x1,
3834            1,
3835            0,
3836            adexicr::Ocsad,
3837            adexicr::Ocsad,
3838            Adexicr_SPEC,
3839            crate::common::RW,
3840        >::from_register(self, 0)
3841    }
3842
3843    #[doc = "Temperature Sensor Output A/D Conversion Select"]
3844    #[inline(always)]
3845    pub fn tssa(
3846        self,
3847    ) -> crate::common::RegisterField<
3848        8,
3849        0x1,
3850        1,
3851        0,
3852        adexicr::Tssa,
3853        adexicr::Tssa,
3854        Adexicr_SPEC,
3855        crate::common::RW,
3856    > {
3857        crate::common::RegisterField::<
3858            8,
3859            0x1,
3860            1,
3861            0,
3862            adexicr::Tssa,
3863            adexicr::Tssa,
3864            Adexicr_SPEC,
3865            crate::common::RW,
3866        >::from_register(self, 0)
3867    }
3868
3869    #[doc = "Internal Reference Voltage A/D Conversion Select"]
3870    #[inline(always)]
3871    pub fn ocsa(
3872        self,
3873    ) -> crate::common::RegisterField<
3874        9,
3875        0x1,
3876        1,
3877        0,
3878        adexicr::Ocsa,
3879        adexicr::Ocsa,
3880        Adexicr_SPEC,
3881        crate::common::RW,
3882    > {
3883        crate::common::RegisterField::<
3884            9,
3885            0x1,
3886            1,
3887            0,
3888            adexicr::Ocsa,
3889            adexicr::Ocsa,
3890            Adexicr_SPEC,
3891            crate::common::RW,
3892        >::from_register(self, 0)
3893    }
3894
3895    #[doc = "Temperature Sensor Output A/D Conversion Select for Group B"]
3896    #[inline(always)]
3897    pub fn tssb(
3898        self,
3899    ) -> crate::common::RegisterField<
3900        10,
3901        0x1,
3902        1,
3903        0,
3904        adexicr::Tssb,
3905        adexicr::Tssb,
3906        Adexicr_SPEC,
3907        crate::common::RW,
3908    > {
3909        crate::common::RegisterField::<
3910            10,
3911            0x1,
3912            1,
3913            0,
3914            adexicr::Tssb,
3915            adexicr::Tssb,
3916            Adexicr_SPEC,
3917            crate::common::RW,
3918        >::from_register(self, 0)
3919    }
3920
3921    #[doc = "Internal Reference Voltage A/D Conversion Select for Group B"]
3922    #[inline(always)]
3923    pub fn ocsb(
3924        self,
3925    ) -> crate::common::RegisterField<
3926        11,
3927        0x1,
3928        1,
3929        0,
3930        adexicr::Ocsb,
3931        adexicr::Ocsb,
3932        Adexicr_SPEC,
3933        crate::common::RW,
3934    > {
3935        crate::common::RegisterField::<
3936            11,
3937            0x1,
3938            1,
3939            0,
3940            adexicr::Ocsb,
3941            adexicr::Ocsb,
3942            Adexicr_SPEC,
3943            crate::common::RW,
3944        >::from_register(self, 0)
3945    }
3946}
3947impl ::core::default::Default for Adexicr {
3948    #[inline(always)]
3949    fn default() -> Adexicr {
3950        <crate::RegValueT<Adexicr_SPEC> as RegisterValue<_>>::new(0)
3951    }
3952}
3953pub mod adexicr {
3954
3955    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3956    pub struct Tssad_SPEC;
3957    pub type Tssad = crate::EnumBitfieldStruct<u8, Tssad_SPEC>;
3958    impl Tssad {
3959        #[doc = "Do not select addition/average mode for temperature sensor output."]
3960        pub const _0: Self = Self::new(0);
3961
3962        #[doc = "Select addition/average mode for temperature sensor output."]
3963        pub const _1: Self = Self::new(1);
3964    }
3965    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3966    pub struct Ocsad_SPEC;
3967    pub type Ocsad = crate::EnumBitfieldStruct<u8, Ocsad_SPEC>;
3968    impl Ocsad {
3969        #[doc = "Do not select addition/average mode for internal reference voltage."]
3970        pub const _0: Self = Self::new(0);
3971
3972        #[doc = "Select addition/average mode for internal reference voltage."]
3973        pub const _1: Self = Self::new(1);
3974    }
3975    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3976    pub struct Tssa_SPEC;
3977    pub type Tssa = crate::EnumBitfieldStruct<u8, Tssa_SPEC>;
3978    impl Tssa {
3979        #[doc = "Disable A/D conversion of temperature sensor output"]
3980        pub const _0: Self = Self::new(0);
3981
3982        #[doc = "Enable A/D conversion of temperature sensor output"]
3983        pub const _1: Self = Self::new(1);
3984    }
3985    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3986    pub struct Ocsa_SPEC;
3987    pub type Ocsa = crate::EnumBitfieldStruct<u8, Ocsa_SPEC>;
3988    impl Ocsa {
3989        #[doc = "Disable A/D conversion of internal reference voltage"]
3990        pub const _0: Self = Self::new(0);
3991
3992        #[doc = "Enable A/D conversion of internal reference voltage"]
3993        pub const _1: Self = Self::new(1);
3994    }
3995    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3996    pub struct Tssb_SPEC;
3997    pub type Tssb = crate::EnumBitfieldStruct<u8, Tssb_SPEC>;
3998    impl Tssb {
3999        #[doc = "Disable A/D conversion of temperature sensor output"]
4000        pub const _0: Self = Self::new(0);
4001
4002        #[doc = "Enable A/D conversion of temperature sensor output"]
4003        pub const _1: Self = Self::new(1);
4004    }
4005    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4006    pub struct Ocsb_SPEC;
4007    pub type Ocsb = crate::EnumBitfieldStruct<u8, Ocsb_SPEC>;
4008    impl Ocsb {
4009        #[doc = "Disable A/D conversion of internal reference voltage"]
4010        pub const _0: Self = Self::new(0);
4011
4012        #[doc = "Enable A/D conversion of internal reference voltage"]
4013        pub const _1: Self = Self::new(1);
4014    }
4015}
4016#[doc(hidden)]
4017#[derive(Copy, Clone, Eq, PartialEq)]
4018pub struct Adansb0_SPEC;
4019impl crate::sealed::RegSpec for Adansb0_SPEC {
4020    type DataType = u16;
4021}
4022
4023#[doc = "A/D Channel Select Register B0"]
4024pub type Adansb0 = crate::RegValueT<Adansb0_SPEC>;
4025
4026impl Adansb0 {
4027    #[doc = "A/D Conversion Channels Select"]
4028    #[inline(always)]
4029    pub fn ansb00(
4030        self,
4031    ) -> crate::common::RegisterField<
4032        0,
4033        0x1,
4034        1,
4035        0,
4036        adansb0::Ansb00,
4037        adansb0::Ansb00,
4038        Adansb0_SPEC,
4039        crate::common::RW,
4040    > {
4041        crate::common::RegisterField::<
4042            0,
4043            0x1,
4044            1,
4045            0,
4046            adansb0::Ansb00,
4047            adansb0::Ansb00,
4048            Adansb0_SPEC,
4049            crate::common::RW,
4050        >::from_register(self, 0)
4051    }
4052
4053    #[doc = "A/D Conversion Channels Select"]
4054    #[inline(always)]
4055    pub fn ansb01(
4056        self,
4057    ) -> crate::common::RegisterField<
4058        1,
4059        0x1,
4060        1,
4061        0,
4062        adansb0::Ansb01,
4063        adansb0::Ansb01,
4064        Adansb0_SPEC,
4065        crate::common::RW,
4066    > {
4067        crate::common::RegisterField::<
4068            1,
4069            0x1,
4070            1,
4071            0,
4072            adansb0::Ansb01,
4073            adansb0::Ansb01,
4074            Adansb0_SPEC,
4075            crate::common::RW,
4076        >::from_register(self, 0)
4077    }
4078
4079    #[doc = "A/D Conversion Channels Select"]
4080    #[inline(always)]
4081    pub fn ansb02(
4082        self,
4083    ) -> crate::common::RegisterField<
4084        2,
4085        0x1,
4086        1,
4087        0,
4088        adansb0::Ansb02,
4089        adansb0::Ansb02,
4090        Adansb0_SPEC,
4091        crate::common::RW,
4092    > {
4093        crate::common::RegisterField::<
4094            2,
4095            0x1,
4096            1,
4097            0,
4098            adansb0::Ansb02,
4099            adansb0::Ansb02,
4100            Adansb0_SPEC,
4101            crate::common::RW,
4102        >::from_register(self, 0)
4103    }
4104
4105    #[doc = "A/D Conversion Channels Select"]
4106    #[inline(always)]
4107    pub fn ansb03(
4108        self,
4109    ) -> crate::common::RegisterField<
4110        3,
4111        0x1,
4112        1,
4113        0,
4114        adansb0::Ansb03,
4115        adansb0::Ansb03,
4116        Adansb0_SPEC,
4117        crate::common::RW,
4118    > {
4119        crate::common::RegisterField::<
4120            3,
4121            0x1,
4122            1,
4123            0,
4124            adansb0::Ansb03,
4125            adansb0::Ansb03,
4126            Adansb0_SPEC,
4127            crate::common::RW,
4128        >::from_register(self, 0)
4129    }
4130
4131    #[doc = "A/D Conversion Channels Select"]
4132    #[inline(always)]
4133    pub fn ansb04(
4134        self,
4135    ) -> crate::common::RegisterField<
4136        4,
4137        0x1,
4138        1,
4139        0,
4140        adansb0::Ansb04,
4141        adansb0::Ansb04,
4142        Adansb0_SPEC,
4143        crate::common::RW,
4144    > {
4145        crate::common::RegisterField::<
4146            4,
4147            0x1,
4148            1,
4149            0,
4150            adansb0::Ansb04,
4151            adansb0::Ansb04,
4152            Adansb0_SPEC,
4153            crate::common::RW,
4154        >::from_register(self, 0)
4155    }
4156
4157    #[doc = "A/D Conversion Channels Select"]
4158    #[inline(always)]
4159    pub fn ansb05(
4160        self,
4161    ) -> crate::common::RegisterField<
4162        5,
4163        0x1,
4164        1,
4165        0,
4166        adansb0::Ansb05,
4167        adansb0::Ansb05,
4168        Adansb0_SPEC,
4169        crate::common::RW,
4170    > {
4171        crate::common::RegisterField::<
4172            5,
4173            0x1,
4174            1,
4175            0,
4176            adansb0::Ansb05,
4177            adansb0::Ansb05,
4178            Adansb0_SPEC,
4179            crate::common::RW,
4180        >::from_register(self, 0)
4181    }
4182
4183    #[doc = "A/D Conversion Channels Select"]
4184    #[inline(always)]
4185    pub fn ansb06(
4186        self,
4187    ) -> crate::common::RegisterField<
4188        6,
4189        0x1,
4190        1,
4191        0,
4192        adansb0::Ansb06,
4193        adansb0::Ansb06,
4194        Adansb0_SPEC,
4195        crate::common::RW,
4196    > {
4197        crate::common::RegisterField::<
4198            6,
4199            0x1,
4200            1,
4201            0,
4202            adansb0::Ansb06,
4203            adansb0::Ansb06,
4204            Adansb0_SPEC,
4205            crate::common::RW,
4206        >::from_register(self, 0)
4207    }
4208
4209    #[doc = "A/D Conversion Channels Select"]
4210    #[inline(always)]
4211    pub fn ansb07(
4212        self,
4213    ) -> crate::common::RegisterField<
4214        7,
4215        0x1,
4216        1,
4217        0,
4218        adansb0::Ansb07,
4219        adansb0::Ansb07,
4220        Adansb0_SPEC,
4221        crate::common::RW,
4222    > {
4223        crate::common::RegisterField::<
4224            7,
4225            0x1,
4226            1,
4227            0,
4228            adansb0::Ansb07,
4229            adansb0::Ansb07,
4230            Adansb0_SPEC,
4231            crate::common::RW,
4232        >::from_register(self, 0)
4233    }
4234
4235    #[doc = "A/D Conversion Channels Select"]
4236    #[inline(always)]
4237    pub fn ansb08(
4238        self,
4239    ) -> crate::common::RegisterField<
4240        8,
4241        0x1,
4242        1,
4243        0,
4244        adansb0::Ansb08,
4245        adansb0::Ansb08,
4246        Adansb0_SPEC,
4247        crate::common::RW,
4248    > {
4249        crate::common::RegisterField::<
4250            8,
4251            0x1,
4252            1,
4253            0,
4254            adansb0::Ansb08,
4255            adansb0::Ansb08,
4256            Adansb0_SPEC,
4257            crate::common::RW,
4258        >::from_register(self, 0)
4259    }
4260
4261    #[doc = "A/D Conversion Channels Select"]
4262    #[inline(always)]
4263    pub fn ansb09(
4264        self,
4265    ) -> crate::common::RegisterField<
4266        9,
4267        0x1,
4268        1,
4269        0,
4270        adansb0::Ansb09,
4271        adansb0::Ansb09,
4272        Adansb0_SPEC,
4273        crate::common::RW,
4274    > {
4275        crate::common::RegisterField::<
4276            9,
4277            0x1,
4278            1,
4279            0,
4280            adansb0::Ansb09,
4281            adansb0::Ansb09,
4282            Adansb0_SPEC,
4283            crate::common::RW,
4284        >::from_register(self, 0)
4285    }
4286
4287    #[doc = "A/D Conversion Channels Select"]
4288    #[inline(always)]
4289    pub fn ansb10(
4290        self,
4291    ) -> crate::common::RegisterField<
4292        10,
4293        0x1,
4294        1,
4295        0,
4296        adansb0::Ansb10,
4297        adansb0::Ansb10,
4298        Adansb0_SPEC,
4299        crate::common::RW,
4300    > {
4301        crate::common::RegisterField::<
4302            10,
4303            0x1,
4304            1,
4305            0,
4306            adansb0::Ansb10,
4307            adansb0::Ansb10,
4308            Adansb0_SPEC,
4309            crate::common::RW,
4310        >::from_register(self, 0)
4311    }
4312
4313    #[doc = "A/D Conversion Channels Select"]
4314    #[inline(always)]
4315    pub fn ansb11(
4316        self,
4317    ) -> crate::common::RegisterField<
4318        11,
4319        0x1,
4320        1,
4321        0,
4322        adansb0::Ansb11,
4323        adansb0::Ansb11,
4324        Adansb0_SPEC,
4325        crate::common::RW,
4326    > {
4327        crate::common::RegisterField::<
4328            11,
4329            0x1,
4330            1,
4331            0,
4332            adansb0::Ansb11,
4333            adansb0::Ansb11,
4334            Adansb0_SPEC,
4335            crate::common::RW,
4336        >::from_register(self, 0)
4337    }
4338
4339    #[doc = "A/D Conversion Channels Select"]
4340    #[inline(always)]
4341    pub fn ansb12(
4342        self,
4343    ) -> crate::common::RegisterField<
4344        12,
4345        0x1,
4346        1,
4347        0,
4348        adansb0::Ansb12,
4349        adansb0::Ansb12,
4350        Adansb0_SPEC,
4351        crate::common::RW,
4352    > {
4353        crate::common::RegisterField::<
4354            12,
4355            0x1,
4356            1,
4357            0,
4358            adansb0::Ansb12,
4359            adansb0::Ansb12,
4360            Adansb0_SPEC,
4361            crate::common::RW,
4362        >::from_register(self, 0)
4363    }
4364
4365    #[doc = "A/D Conversion Channels Select"]
4366    #[inline(always)]
4367    pub fn ansb13(
4368        self,
4369    ) -> crate::common::RegisterField<
4370        13,
4371        0x1,
4372        1,
4373        0,
4374        adansb0::Ansb13,
4375        adansb0::Ansb13,
4376        Adansb0_SPEC,
4377        crate::common::RW,
4378    > {
4379        crate::common::RegisterField::<
4380            13,
4381            0x1,
4382            1,
4383            0,
4384            adansb0::Ansb13,
4385            adansb0::Ansb13,
4386            Adansb0_SPEC,
4387            crate::common::RW,
4388        >::from_register(self, 0)
4389    }
4390
4391    #[doc = "A/D Conversion Channels Select"]
4392    #[inline(always)]
4393    pub fn ansb14(
4394        self,
4395    ) -> crate::common::RegisterField<
4396        14,
4397        0x1,
4398        1,
4399        0,
4400        adansb0::Ansb14,
4401        adansb0::Ansb14,
4402        Adansb0_SPEC,
4403        crate::common::RW,
4404    > {
4405        crate::common::RegisterField::<
4406            14,
4407            0x1,
4408            1,
4409            0,
4410            adansb0::Ansb14,
4411            adansb0::Ansb14,
4412            Adansb0_SPEC,
4413            crate::common::RW,
4414        >::from_register(self, 0)
4415    }
4416
4417    #[doc = "A/D Conversion Channels Select"]
4418    #[inline(always)]
4419    pub fn ansb15(
4420        self,
4421    ) -> crate::common::RegisterField<
4422        15,
4423        0x1,
4424        1,
4425        0,
4426        adansb0::Ansb15,
4427        adansb0::Ansb15,
4428        Adansb0_SPEC,
4429        crate::common::RW,
4430    > {
4431        crate::common::RegisterField::<
4432            15,
4433            0x1,
4434            1,
4435            0,
4436            adansb0::Ansb15,
4437            adansb0::Ansb15,
4438            Adansb0_SPEC,
4439            crate::common::RW,
4440        >::from_register(self, 0)
4441    }
4442}
4443impl ::core::default::Default for Adansb0 {
4444    #[inline(always)]
4445    fn default() -> Adansb0 {
4446        <crate::RegValueT<Adansb0_SPEC> as RegisterValue<_>>::new(0)
4447    }
4448}
4449pub mod adansb0 {
4450
4451    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4452    pub struct Ansb00_SPEC;
4453    pub type Ansb00 = crate::EnumBitfieldStruct<u8, Ansb00_SPEC>;
4454    impl Ansb00 {
4455        #[doc = "Do not select associated input channel."]
4456        pub const _0: Self = Self::new(0);
4457
4458        #[doc = "Select associated input channel."]
4459        pub const _1: Self = Self::new(1);
4460    }
4461    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4462    pub struct Ansb01_SPEC;
4463    pub type Ansb01 = crate::EnumBitfieldStruct<u8, Ansb01_SPEC>;
4464    impl Ansb01 {
4465        #[doc = "Do not select associated input channel."]
4466        pub const _0: Self = Self::new(0);
4467
4468        #[doc = "Select associated input channel."]
4469        pub const _1: Self = Self::new(1);
4470    }
4471    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4472    pub struct Ansb02_SPEC;
4473    pub type Ansb02 = crate::EnumBitfieldStruct<u8, Ansb02_SPEC>;
4474    impl Ansb02 {
4475        #[doc = "Do not select associated input channel."]
4476        pub const _0: Self = Self::new(0);
4477
4478        #[doc = "Select associated input channel."]
4479        pub const _1: Self = Self::new(1);
4480    }
4481    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4482    pub struct Ansb03_SPEC;
4483    pub type Ansb03 = crate::EnumBitfieldStruct<u8, Ansb03_SPEC>;
4484    impl Ansb03 {
4485        #[doc = "Do not select associated input channel."]
4486        pub const _0: Self = Self::new(0);
4487
4488        #[doc = "Select associated input channel."]
4489        pub const _1: Self = Self::new(1);
4490    }
4491    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4492    pub struct Ansb04_SPEC;
4493    pub type Ansb04 = crate::EnumBitfieldStruct<u8, Ansb04_SPEC>;
4494    impl Ansb04 {
4495        #[doc = "Do not select associated input channel."]
4496        pub const _0: Self = Self::new(0);
4497
4498        #[doc = "Select associated input channel."]
4499        pub const _1: Self = Self::new(1);
4500    }
4501    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4502    pub struct Ansb05_SPEC;
4503    pub type Ansb05 = crate::EnumBitfieldStruct<u8, Ansb05_SPEC>;
4504    impl Ansb05 {
4505        #[doc = "Do not select associated input channel."]
4506        pub const _0: Self = Self::new(0);
4507
4508        #[doc = "Select associated input channel."]
4509        pub const _1: Self = Self::new(1);
4510    }
4511    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4512    pub struct Ansb06_SPEC;
4513    pub type Ansb06 = crate::EnumBitfieldStruct<u8, Ansb06_SPEC>;
4514    impl Ansb06 {
4515        #[doc = "Do not select associated input channel."]
4516        pub const _0: Self = Self::new(0);
4517
4518        #[doc = "Select associated input channel."]
4519        pub const _1: Self = Self::new(1);
4520    }
4521    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4522    pub struct Ansb07_SPEC;
4523    pub type Ansb07 = crate::EnumBitfieldStruct<u8, Ansb07_SPEC>;
4524    impl Ansb07 {
4525        #[doc = "Do not select associated input channel."]
4526        pub const _0: Self = Self::new(0);
4527
4528        #[doc = "Select associated input channel."]
4529        pub const _1: Self = Self::new(1);
4530    }
4531    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4532    pub struct Ansb08_SPEC;
4533    pub type Ansb08 = crate::EnumBitfieldStruct<u8, Ansb08_SPEC>;
4534    impl Ansb08 {
4535        #[doc = "Do not select associated input channel."]
4536        pub const _0: Self = Self::new(0);
4537
4538        #[doc = "Select associated input channel."]
4539        pub const _1: Self = Self::new(1);
4540    }
4541    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4542    pub struct Ansb09_SPEC;
4543    pub type Ansb09 = crate::EnumBitfieldStruct<u8, Ansb09_SPEC>;
4544    impl Ansb09 {
4545        #[doc = "Do not select associated input channel."]
4546        pub const _0: Self = Self::new(0);
4547
4548        #[doc = "Select associated input channel."]
4549        pub const _1: Self = Self::new(1);
4550    }
4551    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4552    pub struct Ansb10_SPEC;
4553    pub type Ansb10 = crate::EnumBitfieldStruct<u8, Ansb10_SPEC>;
4554    impl Ansb10 {
4555        #[doc = "Do not select associated input channel."]
4556        pub const _0: Self = Self::new(0);
4557
4558        #[doc = "Select associated input channel."]
4559        pub const _1: Self = Self::new(1);
4560    }
4561    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4562    pub struct Ansb11_SPEC;
4563    pub type Ansb11 = crate::EnumBitfieldStruct<u8, Ansb11_SPEC>;
4564    impl Ansb11 {
4565        #[doc = "Do not select associated input channel."]
4566        pub const _0: Self = Self::new(0);
4567
4568        #[doc = "Select associated input channel."]
4569        pub const _1: Self = Self::new(1);
4570    }
4571    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4572    pub struct Ansb12_SPEC;
4573    pub type Ansb12 = crate::EnumBitfieldStruct<u8, Ansb12_SPEC>;
4574    impl Ansb12 {
4575        #[doc = "Do not select associated input channel."]
4576        pub const _0: Self = Self::new(0);
4577
4578        #[doc = "Select associated input channel."]
4579        pub const _1: Self = Self::new(1);
4580    }
4581    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4582    pub struct Ansb13_SPEC;
4583    pub type Ansb13 = crate::EnumBitfieldStruct<u8, Ansb13_SPEC>;
4584    impl Ansb13 {
4585        #[doc = "Do not select associated input channel."]
4586        pub const _0: Self = Self::new(0);
4587
4588        #[doc = "Select associated input channel."]
4589        pub const _1: Self = Self::new(1);
4590    }
4591    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4592    pub struct Ansb14_SPEC;
4593    pub type Ansb14 = crate::EnumBitfieldStruct<u8, Ansb14_SPEC>;
4594    impl Ansb14 {
4595        #[doc = "Do not select associated input channel."]
4596        pub const _0: Self = Self::new(0);
4597
4598        #[doc = "Select associated input channel."]
4599        pub const _1: Self = Self::new(1);
4600    }
4601    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4602    pub struct Ansb15_SPEC;
4603    pub type Ansb15 = crate::EnumBitfieldStruct<u8, Ansb15_SPEC>;
4604    impl Ansb15 {
4605        #[doc = "Do not select associated input channel."]
4606        pub const _0: Self = Self::new(0);
4607
4608        #[doc = "Select associated input channel."]
4609        pub const _1: Self = Self::new(1);
4610    }
4611}
4612#[doc(hidden)]
4613#[derive(Copy, Clone, Eq, PartialEq)]
4614pub struct Adansb1_SPEC;
4615impl crate::sealed::RegSpec for Adansb1_SPEC {
4616    type DataType = u16;
4617}
4618
4619#[doc = "A/D Channel Select Register B1"]
4620pub type Adansb1 = crate::RegValueT<Adansb1_SPEC>;
4621
4622impl Adansb1 {
4623    #[doc = "A/D Conversion Channels Select"]
4624    #[inline(always)]
4625    pub fn ansb16(
4626        self,
4627    ) -> crate::common::RegisterField<
4628        0,
4629        0x1,
4630        1,
4631        0,
4632        adansb1::Ansb16,
4633        adansb1::Ansb16,
4634        Adansb1_SPEC,
4635        crate::common::RW,
4636    > {
4637        crate::common::RegisterField::<
4638            0,
4639            0x1,
4640            1,
4641            0,
4642            adansb1::Ansb16,
4643            adansb1::Ansb16,
4644            Adansb1_SPEC,
4645            crate::common::RW,
4646        >::from_register(self, 0)
4647    }
4648
4649    #[doc = "A/D Conversion Channels Select"]
4650    #[inline(always)]
4651    pub fn ansb17(
4652        self,
4653    ) -> crate::common::RegisterField<
4654        1,
4655        0x1,
4656        1,
4657        0,
4658        adansb1::Ansb17,
4659        adansb1::Ansb17,
4660        Adansb1_SPEC,
4661        crate::common::RW,
4662    > {
4663        crate::common::RegisterField::<
4664            1,
4665            0x1,
4666            1,
4667            0,
4668            adansb1::Ansb17,
4669            adansb1::Ansb17,
4670            Adansb1_SPEC,
4671            crate::common::RW,
4672        >::from_register(self, 0)
4673    }
4674
4675    #[doc = "A/D Conversion Channels Select"]
4676    #[inline(always)]
4677    pub fn ansb18(
4678        self,
4679    ) -> crate::common::RegisterField<
4680        2,
4681        0x1,
4682        1,
4683        0,
4684        adansb1::Ansb18,
4685        adansb1::Ansb18,
4686        Adansb1_SPEC,
4687        crate::common::RW,
4688    > {
4689        crate::common::RegisterField::<
4690            2,
4691            0x1,
4692            1,
4693            0,
4694            adansb1::Ansb18,
4695            adansb1::Ansb18,
4696            Adansb1_SPEC,
4697            crate::common::RW,
4698        >::from_register(self, 0)
4699    }
4700
4701    #[doc = "A/D Conversion Channels Select"]
4702    #[inline(always)]
4703    pub fn ansb19(
4704        self,
4705    ) -> crate::common::RegisterField<
4706        3,
4707        0x1,
4708        1,
4709        0,
4710        adansb1::Ansb19,
4711        adansb1::Ansb19,
4712        Adansb1_SPEC,
4713        crate::common::RW,
4714    > {
4715        crate::common::RegisterField::<
4716            3,
4717            0x1,
4718            1,
4719            0,
4720            adansb1::Ansb19,
4721            adansb1::Ansb19,
4722            Adansb1_SPEC,
4723            crate::common::RW,
4724        >::from_register(self, 0)
4725    }
4726
4727    #[doc = "A/D Conversion Channels Select"]
4728    #[inline(always)]
4729    pub fn ansb20(
4730        self,
4731    ) -> crate::common::RegisterField<
4732        4,
4733        0x1,
4734        1,
4735        0,
4736        adansb1::Ansb20,
4737        adansb1::Ansb20,
4738        Adansb1_SPEC,
4739        crate::common::RW,
4740    > {
4741        crate::common::RegisterField::<
4742            4,
4743            0x1,
4744            1,
4745            0,
4746            adansb1::Ansb20,
4747            adansb1::Ansb20,
4748            Adansb1_SPEC,
4749            crate::common::RW,
4750        >::from_register(self, 0)
4751    }
4752
4753    #[doc = "A/D Conversion Channels Select"]
4754    #[inline(always)]
4755    pub fn ansb21(
4756        self,
4757    ) -> crate::common::RegisterField<
4758        5,
4759        0x1,
4760        1,
4761        0,
4762        adansb1::Ansb21,
4763        adansb1::Ansb21,
4764        Adansb1_SPEC,
4765        crate::common::RW,
4766    > {
4767        crate::common::RegisterField::<
4768            5,
4769            0x1,
4770            1,
4771            0,
4772            adansb1::Ansb21,
4773            adansb1::Ansb21,
4774            Adansb1_SPEC,
4775            crate::common::RW,
4776        >::from_register(self, 0)
4777    }
4778
4779    #[doc = "A/D Conversion Channels Select"]
4780    #[inline(always)]
4781    pub fn ansb22(
4782        self,
4783    ) -> crate::common::RegisterField<
4784        6,
4785        0x1,
4786        1,
4787        0,
4788        adansb1::Ansb22,
4789        adansb1::Ansb22,
4790        Adansb1_SPEC,
4791        crate::common::RW,
4792    > {
4793        crate::common::RegisterField::<
4794            6,
4795            0x1,
4796            1,
4797            0,
4798            adansb1::Ansb22,
4799            adansb1::Ansb22,
4800            Adansb1_SPEC,
4801            crate::common::RW,
4802        >::from_register(self, 0)
4803    }
4804
4805    #[doc = "A/D Conversion Channels Select"]
4806    #[inline(always)]
4807    pub fn ansb23(
4808        self,
4809    ) -> crate::common::RegisterField<
4810        7,
4811        0x1,
4812        1,
4813        0,
4814        adansb1::Ansb23,
4815        adansb1::Ansb23,
4816        Adansb1_SPEC,
4817        crate::common::RW,
4818    > {
4819        crate::common::RegisterField::<
4820            7,
4821            0x1,
4822            1,
4823            0,
4824            adansb1::Ansb23,
4825            adansb1::Ansb23,
4826            Adansb1_SPEC,
4827            crate::common::RW,
4828        >::from_register(self, 0)
4829    }
4830
4831    #[doc = "A/D Conversion Channels Select"]
4832    #[inline(always)]
4833    pub fn ansb24(
4834        self,
4835    ) -> crate::common::RegisterField<
4836        8,
4837        0x1,
4838        1,
4839        0,
4840        adansb1::Ansb24,
4841        adansb1::Ansb24,
4842        Adansb1_SPEC,
4843        crate::common::RW,
4844    > {
4845        crate::common::RegisterField::<
4846            8,
4847            0x1,
4848            1,
4849            0,
4850            adansb1::Ansb24,
4851            adansb1::Ansb24,
4852            Adansb1_SPEC,
4853            crate::common::RW,
4854        >::from_register(self, 0)
4855    }
4856
4857    #[doc = "A/D Conversion Channels Select"]
4858    #[inline(always)]
4859    pub fn ansb25(
4860        self,
4861    ) -> crate::common::RegisterField<
4862        9,
4863        0x1,
4864        1,
4865        0,
4866        adansb1::Ansb25,
4867        adansb1::Ansb25,
4868        Adansb1_SPEC,
4869        crate::common::RW,
4870    > {
4871        crate::common::RegisterField::<
4872            9,
4873            0x1,
4874            1,
4875            0,
4876            adansb1::Ansb25,
4877            adansb1::Ansb25,
4878            Adansb1_SPEC,
4879            crate::common::RW,
4880        >::from_register(self, 0)
4881    }
4882
4883    #[doc = "A/D Conversion Channels Select"]
4884    #[inline(always)]
4885    pub fn ansb26(
4886        self,
4887    ) -> crate::common::RegisterField<
4888        10,
4889        0x1,
4890        1,
4891        0,
4892        adansb1::Ansb26,
4893        adansb1::Ansb26,
4894        Adansb1_SPEC,
4895        crate::common::RW,
4896    > {
4897        crate::common::RegisterField::<
4898            10,
4899            0x1,
4900            1,
4901            0,
4902            adansb1::Ansb26,
4903            adansb1::Ansb26,
4904            Adansb1_SPEC,
4905            crate::common::RW,
4906        >::from_register(self, 0)
4907    }
4908
4909    #[doc = "A/D Conversion Channels Select"]
4910    #[inline(always)]
4911    pub fn ansb27(
4912        self,
4913    ) -> crate::common::RegisterField<
4914        11,
4915        0x1,
4916        1,
4917        0,
4918        adansb1::Ansb27,
4919        adansb1::Ansb27,
4920        Adansb1_SPEC,
4921        crate::common::RW,
4922    > {
4923        crate::common::RegisterField::<
4924            11,
4925            0x1,
4926            1,
4927            0,
4928            adansb1::Ansb27,
4929            adansb1::Ansb27,
4930            Adansb1_SPEC,
4931            crate::common::RW,
4932        >::from_register(self, 0)
4933    }
4934
4935    #[doc = "A/D Conversion Channels Select"]
4936    #[inline(always)]
4937    pub fn ansb28(
4938        self,
4939    ) -> crate::common::RegisterField<
4940        12,
4941        0x1,
4942        1,
4943        0,
4944        adansb1::Ansb28,
4945        adansb1::Ansb28,
4946        Adansb1_SPEC,
4947        crate::common::RW,
4948    > {
4949        crate::common::RegisterField::<
4950            12,
4951            0x1,
4952            1,
4953            0,
4954            adansb1::Ansb28,
4955            adansb1::Ansb28,
4956            Adansb1_SPEC,
4957            crate::common::RW,
4958        >::from_register(self, 0)
4959    }
4960
4961    #[doc = "A/D Conversion Channels Select"]
4962    #[inline(always)]
4963    pub fn ansb29(
4964        self,
4965    ) -> crate::common::RegisterField<
4966        13,
4967        0x1,
4968        1,
4969        0,
4970        adansb1::Ansb29,
4971        adansb1::Ansb29,
4972        Adansb1_SPEC,
4973        crate::common::RW,
4974    > {
4975        crate::common::RegisterField::<
4976            13,
4977            0x1,
4978            1,
4979            0,
4980            adansb1::Ansb29,
4981            adansb1::Ansb29,
4982            Adansb1_SPEC,
4983            crate::common::RW,
4984        >::from_register(self, 0)
4985    }
4986
4987    #[doc = "A/D Conversion Channels Select"]
4988    #[inline(always)]
4989    pub fn ansb30(
4990        self,
4991    ) -> crate::common::RegisterField<
4992        14,
4993        0x1,
4994        1,
4995        0,
4996        adansb1::Ansb30,
4997        adansb1::Ansb30,
4998        Adansb1_SPEC,
4999        crate::common::RW,
5000    > {
5001        crate::common::RegisterField::<
5002            14,
5003            0x1,
5004            1,
5005            0,
5006            adansb1::Ansb30,
5007            adansb1::Ansb30,
5008            Adansb1_SPEC,
5009            crate::common::RW,
5010        >::from_register(self, 0)
5011    }
5012
5013    #[doc = "A/D Conversion Channels Select"]
5014    #[inline(always)]
5015    pub fn ansb31(
5016        self,
5017    ) -> crate::common::RegisterField<
5018        15,
5019        0x1,
5020        1,
5021        0,
5022        adansb1::Ansb31,
5023        adansb1::Ansb31,
5024        Adansb1_SPEC,
5025        crate::common::RW,
5026    > {
5027        crate::common::RegisterField::<
5028            15,
5029            0x1,
5030            1,
5031            0,
5032            adansb1::Ansb31,
5033            adansb1::Ansb31,
5034            Adansb1_SPEC,
5035            crate::common::RW,
5036        >::from_register(self, 0)
5037    }
5038}
5039impl ::core::default::Default for Adansb1 {
5040    #[inline(always)]
5041    fn default() -> Adansb1 {
5042        <crate::RegValueT<Adansb1_SPEC> as RegisterValue<_>>::new(0)
5043    }
5044}
5045pub mod adansb1 {
5046
5047    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5048    pub struct Ansb16_SPEC;
5049    pub type Ansb16 = crate::EnumBitfieldStruct<u8, Ansb16_SPEC>;
5050    impl Ansb16 {
5051        #[doc = "Do not select associated input channel."]
5052        pub const _0: Self = Self::new(0);
5053
5054        #[doc = "Select associated input channel."]
5055        pub const _1: Self = Self::new(1);
5056    }
5057    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5058    pub struct Ansb17_SPEC;
5059    pub type Ansb17 = crate::EnumBitfieldStruct<u8, Ansb17_SPEC>;
5060    impl Ansb17 {
5061        #[doc = "Do not select associated input channel."]
5062        pub const _0: Self = Self::new(0);
5063
5064        #[doc = "Select associated input channel."]
5065        pub const _1: Self = Self::new(1);
5066    }
5067    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5068    pub struct Ansb18_SPEC;
5069    pub type Ansb18 = crate::EnumBitfieldStruct<u8, Ansb18_SPEC>;
5070    impl Ansb18 {
5071        #[doc = "Do not select associated input channel."]
5072        pub const _0: Self = Self::new(0);
5073
5074        #[doc = "Select associated input channel."]
5075        pub const _1: Self = Self::new(1);
5076    }
5077    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5078    pub struct Ansb19_SPEC;
5079    pub type Ansb19 = crate::EnumBitfieldStruct<u8, Ansb19_SPEC>;
5080    impl Ansb19 {
5081        #[doc = "Do not select associated input channel."]
5082        pub const _0: Self = Self::new(0);
5083
5084        #[doc = "Select associated input channel."]
5085        pub const _1: Self = Self::new(1);
5086    }
5087    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5088    pub struct Ansb20_SPEC;
5089    pub type Ansb20 = crate::EnumBitfieldStruct<u8, Ansb20_SPEC>;
5090    impl Ansb20 {
5091        #[doc = "Do not select associated input channel."]
5092        pub const _0: Self = Self::new(0);
5093
5094        #[doc = "Select associated input channel."]
5095        pub const _1: Self = Self::new(1);
5096    }
5097    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5098    pub struct Ansb21_SPEC;
5099    pub type Ansb21 = crate::EnumBitfieldStruct<u8, Ansb21_SPEC>;
5100    impl Ansb21 {
5101        #[doc = "Do not select associated input channel."]
5102        pub const _0: Self = Self::new(0);
5103
5104        #[doc = "Select associated input channel."]
5105        pub const _1: Self = Self::new(1);
5106    }
5107    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5108    pub struct Ansb22_SPEC;
5109    pub type Ansb22 = crate::EnumBitfieldStruct<u8, Ansb22_SPEC>;
5110    impl Ansb22 {
5111        #[doc = "Do not select associated input channel."]
5112        pub const _0: Self = Self::new(0);
5113
5114        #[doc = "Select associated input channel."]
5115        pub const _1: Self = Self::new(1);
5116    }
5117    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5118    pub struct Ansb23_SPEC;
5119    pub type Ansb23 = crate::EnumBitfieldStruct<u8, Ansb23_SPEC>;
5120    impl Ansb23 {
5121        #[doc = "Do not select associated input channel."]
5122        pub const _0: Self = Self::new(0);
5123
5124        #[doc = "Select associated input channel."]
5125        pub const _1: Self = Self::new(1);
5126    }
5127    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5128    pub struct Ansb24_SPEC;
5129    pub type Ansb24 = crate::EnumBitfieldStruct<u8, Ansb24_SPEC>;
5130    impl Ansb24 {
5131        #[doc = "Do not select associated input channel."]
5132        pub const _0: Self = Self::new(0);
5133
5134        #[doc = "Select associated input channel."]
5135        pub const _1: Self = Self::new(1);
5136    }
5137    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5138    pub struct Ansb25_SPEC;
5139    pub type Ansb25 = crate::EnumBitfieldStruct<u8, Ansb25_SPEC>;
5140    impl Ansb25 {
5141        #[doc = "Do not select associated input channel."]
5142        pub const _0: Self = Self::new(0);
5143
5144        #[doc = "Select associated input channel."]
5145        pub const _1: Self = Self::new(1);
5146    }
5147    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5148    pub struct Ansb26_SPEC;
5149    pub type Ansb26 = crate::EnumBitfieldStruct<u8, Ansb26_SPEC>;
5150    impl Ansb26 {
5151        #[doc = "Do not select associated input channel."]
5152        pub const _0: Self = Self::new(0);
5153
5154        #[doc = "Select associated input channel."]
5155        pub const _1: Self = Self::new(1);
5156    }
5157    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5158    pub struct Ansb27_SPEC;
5159    pub type Ansb27 = crate::EnumBitfieldStruct<u8, Ansb27_SPEC>;
5160    impl Ansb27 {
5161        #[doc = "Do not select associated input channel."]
5162        pub const _0: Self = Self::new(0);
5163
5164        #[doc = "Select associated input channel."]
5165        pub const _1: Self = Self::new(1);
5166    }
5167    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5168    pub struct Ansb28_SPEC;
5169    pub type Ansb28 = crate::EnumBitfieldStruct<u8, Ansb28_SPEC>;
5170    impl Ansb28 {
5171        #[doc = "Do not select associated input channel."]
5172        pub const _0: Self = Self::new(0);
5173
5174        #[doc = "Select associated input channel."]
5175        pub const _1: Self = Self::new(1);
5176    }
5177    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5178    pub struct Ansb29_SPEC;
5179    pub type Ansb29 = crate::EnumBitfieldStruct<u8, Ansb29_SPEC>;
5180    impl Ansb29 {
5181        #[doc = "Do not select associated input channel."]
5182        pub const _0: Self = Self::new(0);
5183
5184        #[doc = "Select associated input channel."]
5185        pub const _1: Self = Self::new(1);
5186    }
5187    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5188    pub struct Ansb30_SPEC;
5189    pub type Ansb30 = crate::EnumBitfieldStruct<u8, Ansb30_SPEC>;
5190    impl Ansb30 {
5191        #[doc = "Do not select associated input channel."]
5192        pub const _0: Self = Self::new(0);
5193
5194        #[doc = "Select associated input channel."]
5195        pub const _1: Self = Self::new(1);
5196    }
5197    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5198    pub struct Ansb31_SPEC;
5199    pub type Ansb31 = crate::EnumBitfieldStruct<u8, Ansb31_SPEC>;
5200    impl Ansb31 {
5201        #[doc = "Do not select associated input channel."]
5202        pub const _0: Self = Self::new(0);
5203
5204        #[doc = "Select associated input channel."]
5205        pub const _1: Self = Self::new(1);
5206    }
5207}
5208#[doc(hidden)]
5209#[derive(Copy, Clone, Eq, PartialEq)]
5210pub struct Addbldr_SPEC;
5211impl crate::sealed::RegSpec for Addbldr_SPEC {
5212    type DataType = u16;
5213}
5214
5215#[doc = "A/D Data Duplexing Register"]
5216pub type Addbldr = crate::RegValueT<Addbldr_SPEC>;
5217
5218impl Addbldr {
5219    #[doc = "Converted Value 15 to 0"]
5220    #[inline(always)]
5221    pub fn addbldr(
5222        self,
5223    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldr_SPEC, crate::common::R>
5224    {
5225        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldr_SPEC,crate::common::R>::from_register(self,0)
5226    }
5227}
5228impl ::core::default::Default for Addbldr {
5229    #[inline(always)]
5230    fn default() -> Addbldr {
5231        <crate::RegValueT<Addbldr_SPEC> as RegisterValue<_>>::new(0)
5232    }
5233}
5234
5235#[doc(hidden)]
5236#[derive(Copy, Clone, Eq, PartialEq)]
5237pub struct Adtsdr_SPEC;
5238impl crate::sealed::RegSpec for Adtsdr_SPEC {
5239    type DataType = u16;
5240}
5241
5242#[doc = "A/D Temperature Sensor Data Register"]
5243pub type Adtsdr = crate::RegValueT<Adtsdr_SPEC>;
5244
5245impl Adtsdr {
5246    #[doc = "Converted Value 15 to 0"]
5247    #[inline(always)]
5248    pub fn adtsdr(
5249        self,
5250    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adtsdr_SPEC, crate::common::R>
5251    {
5252        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adtsdr_SPEC,crate::common::R>::from_register(self,0)
5253    }
5254}
5255impl ::core::default::Default for Adtsdr {
5256    #[inline(always)]
5257    fn default() -> Adtsdr {
5258        <crate::RegValueT<Adtsdr_SPEC> as RegisterValue<_>>::new(0)
5259    }
5260}
5261
5262#[doc(hidden)]
5263#[derive(Copy, Clone, Eq, PartialEq)]
5264pub struct Adocdr_SPEC;
5265impl crate::sealed::RegSpec for Adocdr_SPEC {
5266    type DataType = u16;
5267}
5268
5269#[doc = "A/D Internal Reference Voltage Data Register"]
5270pub type Adocdr = crate::RegValueT<Adocdr_SPEC>;
5271
5272impl Adocdr {
5273    #[doc = "Converted Value 15 to 0"]
5274    #[inline(always)]
5275    pub fn adocdr(
5276        self,
5277    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adocdr_SPEC, crate::common::R>
5278    {
5279        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adocdr_SPEC,crate::common::R>::from_register(self,0)
5280    }
5281}
5282impl ::core::default::Default for Adocdr {
5283    #[inline(always)]
5284    fn default() -> Adocdr {
5285        <crate::RegValueT<Adocdr_SPEC> as RegisterValue<_>>::new(0)
5286    }
5287}
5288
5289#[doc(hidden)]
5290#[derive(Copy, Clone, Eq, PartialEq)]
5291pub struct Adrd_SPEC;
5292impl crate::sealed::RegSpec for Adrd_SPEC {
5293    type DataType = u16;
5294}
5295
5296#[doc = "A/D Self-Diagnosis Data Register"]
5297pub type Adrd = crate::RegValueT<Adrd_SPEC>;
5298
5299impl Adrd {
5300    #[doc = "Converted Value 11 to 0"]
5301    #[inline(always)]
5302    pub fn ad(
5303        self,
5304    ) -> crate::common::RegisterField<0, 0xfff, 1, 0, u16, u16, Adrd_SPEC, crate::common::R> {
5305        crate::common::RegisterField::<0,0xfff,1,0,u16,u16,Adrd_SPEC,crate::common::R>::from_register(self,0)
5306    }
5307
5308    #[doc = "Self-Diagnosis Status"]
5309    #[inline(always)]
5310    pub fn diagst(
5311        self,
5312    ) -> crate::common::RegisterField<
5313        14,
5314        0x3,
5315        1,
5316        0,
5317        adrd::Diagst,
5318        adrd::Diagst,
5319        Adrd_SPEC,
5320        crate::common::R,
5321    > {
5322        crate::common::RegisterField::<
5323            14,
5324            0x3,
5325            1,
5326            0,
5327            adrd::Diagst,
5328            adrd::Diagst,
5329            Adrd_SPEC,
5330            crate::common::R,
5331        >::from_register(self, 0)
5332    }
5333}
5334impl ::core::default::Default for Adrd {
5335    #[inline(always)]
5336    fn default() -> Adrd {
5337        <crate::RegValueT<Adrd_SPEC> as RegisterValue<_>>::new(0)
5338    }
5339}
5340pub mod adrd {
5341
5342    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5343    pub struct Diagst_SPEC;
5344    pub type Diagst = crate::EnumBitfieldStruct<u8, Diagst_SPEC>;
5345    impl Diagst {
5346        #[doc = "Self-diagnosis not executed after power-on."]
5347        pub const _00: Self = Self::new(0);
5348
5349        #[doc = "Self-diagnosis was executed using the 0 V voltage."]
5350        pub const _01: Self = Self::new(1);
5351
5352        #[doc = "Self-diagnosis was executed using the reference voltage × 1/2."]
5353        pub const _10: Self = Self::new(2);
5354
5355        #[doc = "Self-diagnosis was executed using the reference voltage ."]
5356        pub const _11: Self = Self::new(3);
5357    }
5358}
5359#[doc(hidden)]
5360#[derive(Copy, Clone, Eq, PartialEq)]
5361pub struct Addr_SPEC;
5362impl crate::sealed::RegSpec for Addr_SPEC {
5363    type DataType = u16;
5364}
5365
5366#[doc = "A/D Data Registers %s"]
5367pub type Addr = crate::RegValueT<Addr_SPEC>;
5368
5369impl Addr {
5370    #[doc = "Converted Value 15 to 0"]
5371    #[inline(always)]
5372    pub fn addr(
5373        self,
5374    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addr_SPEC, crate::common::R> {
5375        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addr_SPEC,crate::common::R>::from_register(self,0)
5376    }
5377}
5378impl ::core::default::Default for Addr {
5379    #[inline(always)]
5380    fn default() -> Addr {
5381        <crate::RegValueT<Addr_SPEC> as RegisterValue<_>>::new(0)
5382    }
5383}
5384
5385#[doc(hidden)]
5386#[derive(Copy, Clone, Eq, PartialEq)]
5387pub struct Addr16_SPEC;
5388impl crate::sealed::RegSpec for Addr16_SPEC {
5389    type DataType = u16;
5390}
5391
5392#[doc = "A/D Data Registers 16"]
5393pub type Addr16 = crate::RegValueT<Addr16_SPEC>;
5394
5395impl Addr16 {
5396    #[doc = "Converted Value 15 to 0"]
5397    #[inline(always)]
5398    pub fn addr(
5399        self,
5400    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addr16_SPEC, crate::common::R>
5401    {
5402        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addr16_SPEC,crate::common::R>::from_register(self,0)
5403    }
5404}
5405impl ::core::default::Default for Addr16 {
5406    #[inline(always)]
5407    fn default() -> Addr16 {
5408        <crate::RegValueT<Addr16_SPEC> as RegisterValue<_>>::new(0)
5409    }
5410}
5411
5412#[doc(hidden)]
5413#[derive(Copy, Clone, Eq, PartialEq)]
5414pub struct Addiscr_SPEC;
5415impl crate::sealed::RegSpec for Addiscr_SPEC {
5416    type DataType = u8;
5417}
5418
5419#[doc = "A/D Disconnection Detection Control Register"]
5420pub type Addiscr = crate::RegValueT<Addiscr_SPEC>;
5421
5422impl Addiscr {
5423    #[doc = "Disconnection Detection Assist Setting"]
5424    #[inline(always)]
5425    pub fn adndis(
5426        self,
5427    ) -> crate::common::RegisterField<
5428        0,
5429        0xf,
5430        1,
5431        0,
5432        addiscr::Adndis,
5433        addiscr::Adndis,
5434        Addiscr_SPEC,
5435        crate::common::RW,
5436    > {
5437        crate::common::RegisterField::<
5438            0,
5439            0xf,
5440            1,
5441            0,
5442            addiscr::Adndis,
5443            addiscr::Adndis,
5444            Addiscr_SPEC,
5445            crate::common::RW,
5446        >::from_register(self, 0)
5447    }
5448
5449    #[doc = "Precharge/discharge select"]
5450    #[inline(always)]
5451    pub fn pchg(
5452        self,
5453    ) -> crate::common::RegisterField<
5454        4,
5455        0x1,
5456        1,
5457        0,
5458        addiscr::Pchg,
5459        addiscr::Pchg,
5460        Addiscr_SPEC,
5461        crate::common::RW,
5462    > {
5463        crate::common::RegisterField::<
5464            4,
5465            0x1,
5466            1,
5467            0,
5468            addiscr::Pchg,
5469            addiscr::Pchg,
5470            Addiscr_SPEC,
5471            crate::common::RW,
5472        >::from_register(self, 0)
5473    }
5474}
5475impl ::core::default::Default for Addiscr {
5476    #[inline(always)]
5477    fn default() -> Addiscr {
5478        <crate::RegValueT<Addiscr_SPEC> as RegisterValue<_>>::new(0)
5479    }
5480}
5481pub mod addiscr {
5482
5483    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5484    pub struct Adndis_SPEC;
5485    pub type Adndis = crate::EnumBitfieldStruct<u8, Adndis_SPEC>;
5486    impl Adndis {
5487        #[doc = "The disconnection detection assist function is disabled"]
5488        pub const _0_X_0: Self = Self::new(0);
5489
5490        #[doc = "Setting prohibited"]
5491        pub const _0_X_1: Self = Self::new(1);
5492
5493        #[doc = "The number of states for the discharge or precharge period."]
5494        pub const OTHERS: Self = Self::new(0);
5495    }
5496    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5497    pub struct Pchg_SPEC;
5498    pub type Pchg = crate::EnumBitfieldStruct<u8, Pchg_SPEC>;
5499    impl Pchg {
5500        #[doc = "Discharge"]
5501        pub const _0: Self = Self::new(0);
5502
5503        #[doc = "Precharge"]
5504        pub const _1: Self = Self::new(1);
5505    }
5506}
5507#[doc(hidden)]
5508#[derive(Copy, Clone, Eq, PartialEq)]
5509pub struct Adgspcr_SPEC;
5510impl crate::sealed::RegSpec for Adgspcr_SPEC {
5511    type DataType = u16;
5512}
5513
5514#[doc = "A/D Group Scan Priority Control Register"]
5515pub type Adgspcr = crate::RegValueT<Adgspcr_SPEC>;
5516
5517impl Adgspcr {
5518    #[doc = "Group Priority Operation Setting"]
5519    #[inline(always)]
5520    pub fn pgs(
5521        self,
5522    ) -> crate::common::RegisterField<
5523        0,
5524        0x1,
5525        1,
5526        0,
5527        adgspcr::Pgs,
5528        adgspcr::Pgs,
5529        Adgspcr_SPEC,
5530        crate::common::RW,
5531    > {
5532        crate::common::RegisterField::<
5533            0,
5534            0x1,
5535            1,
5536            0,
5537            adgspcr::Pgs,
5538            adgspcr::Pgs,
5539            Adgspcr_SPEC,
5540            crate::common::RW,
5541        >::from_register(self, 0)
5542    }
5543
5544    #[doc = "Lower-Priority Group Restart Setting"]
5545    #[inline(always)]
5546    pub fn gbrscn(
5547        self,
5548    ) -> crate::common::RegisterField<
5549        1,
5550        0x1,
5551        1,
5552        0,
5553        adgspcr::Gbrscn,
5554        adgspcr::Gbrscn,
5555        Adgspcr_SPEC,
5556        crate::common::RW,
5557    > {
5558        crate::common::RegisterField::<
5559            1,
5560            0x1,
5561            1,
5562            0,
5563            adgspcr::Gbrscn,
5564            adgspcr::Gbrscn,
5565            Adgspcr_SPEC,
5566            crate::common::RW,
5567        >::from_register(self, 0)
5568    }
5569
5570    #[doc = "Enabled only when PGS = 1 and GBRSCN = 1."]
5571    #[inline(always)]
5572    pub fn lgrrs(
5573        self,
5574    ) -> crate::common::RegisterField<
5575        14,
5576        0x1,
5577        1,
5578        0,
5579        adgspcr::Lgrrs,
5580        adgspcr::Lgrrs,
5581        Adgspcr_SPEC,
5582        crate::common::RW,
5583    > {
5584        crate::common::RegisterField::<
5585            14,
5586            0x1,
5587            1,
5588            0,
5589            adgspcr::Lgrrs,
5590            adgspcr::Lgrrs,
5591            Adgspcr_SPEC,
5592            crate::common::RW,
5593        >::from_register(self, 0)
5594    }
5595
5596    #[doc = "Single Scan Continuous Start"]
5597    #[inline(always)]
5598    pub fn gbrp(
5599        self,
5600    ) -> crate::common::RegisterField<
5601        15,
5602        0x1,
5603        1,
5604        0,
5605        adgspcr::Gbrp,
5606        adgspcr::Gbrp,
5607        Adgspcr_SPEC,
5608        crate::common::RW,
5609    > {
5610        crate::common::RegisterField::<
5611            15,
5612            0x1,
5613            1,
5614            0,
5615            adgspcr::Gbrp,
5616            adgspcr::Gbrp,
5617            Adgspcr_SPEC,
5618            crate::common::RW,
5619        >::from_register(self, 0)
5620    }
5621}
5622impl ::core::default::Default for Adgspcr {
5623    #[inline(always)]
5624    fn default() -> Adgspcr {
5625        <crate::RegValueT<Adgspcr_SPEC> as RegisterValue<_>>::new(0)
5626    }
5627}
5628pub mod adgspcr {
5629
5630    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5631    pub struct Pgs_SPEC;
5632    pub type Pgs = crate::EnumBitfieldStruct<u8, Pgs_SPEC>;
5633    impl Pgs {
5634        #[doc = "Operate without group priority control."]
5635        pub const _0: Self = Self::new(0);
5636
5637        #[doc = "Operate with group priority control."]
5638        pub const _1: Self = Self::new(1);
5639    }
5640    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5641    pub struct Gbrscn_SPEC;
5642    pub type Gbrscn = crate::EnumBitfieldStruct<u8, Gbrscn_SPEC>;
5643    impl Gbrscn {
5644        #[doc = "Disable rescanning of the group that was stopped in group priority operation"]
5645        pub const _0: Self = Self::new(0);
5646
5647        #[doc = "Enable rescanning of the group that was stopped in group priority operation."]
5648        pub const _1: Self = Self::new(1);
5649    }
5650    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5651    pub struct Lgrrs_SPEC;
5652    pub type Lgrrs = crate::EnumBitfieldStruct<u8, Lgrrs_SPEC>;
5653    impl Lgrrs {
5654        #[doc = "Start rescanning from the first channel for scanning"]
5655        pub const _0: Self = Self::new(0);
5656
5657        #[doc = "Start rescanning from the channel for which A/D conversion is not completed."]
5658        pub const _1: Self = Self::new(1);
5659    }
5660    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5661    pub struct Gbrp_SPEC;
5662    pub type Gbrp = crate::EnumBitfieldStruct<u8, Gbrp_SPEC>;
5663    impl Gbrp {
5664        #[doc = "Single scan is not continuously activated."]
5665        pub const _0: Self = Self::new(0);
5666
5667        #[doc = "Single scan for the group with the lower-priority is continuously activated."]
5668        pub const _1: Self = Self::new(1);
5669    }
5670}
5671#[doc(hidden)]
5672#[derive(Copy, Clone, Eq, PartialEq)]
5673pub struct Addbldra_SPEC;
5674impl crate::sealed::RegSpec for Addbldra_SPEC {
5675    type DataType = u16;
5676}
5677
5678#[doc = "A/D Data Duplexing Register A"]
5679pub type Addbldra = crate::RegValueT<Addbldra_SPEC>;
5680
5681impl Addbldra {
5682    #[doc = "Converted Value 15 to 0"]
5683    #[inline(always)]
5684    pub fn addbldr(
5685        self,
5686    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldra_SPEC, crate::common::R>
5687    {
5688        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldra_SPEC,crate::common::R>::from_register(self,0)
5689    }
5690}
5691impl ::core::default::Default for Addbldra {
5692    #[inline(always)]
5693    fn default() -> Addbldra {
5694        <crate::RegValueT<Addbldra_SPEC> as RegisterValue<_>>::new(0)
5695    }
5696}
5697
5698#[doc(hidden)]
5699#[derive(Copy, Clone, Eq, PartialEq)]
5700pub struct Addbldrb_SPEC;
5701impl crate::sealed::RegSpec for Addbldrb_SPEC {
5702    type DataType = u16;
5703}
5704
5705#[doc = "A/D Data Duplexing Register B"]
5706pub type Addbldrb = crate::RegValueT<Addbldrb_SPEC>;
5707
5708impl Addbldrb {
5709    #[doc = "Converted Value 15 to 0"]
5710    #[inline(always)]
5711    pub fn addbldr(
5712        self,
5713    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldrb_SPEC, crate::common::R>
5714    {
5715        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldrb_SPEC,crate::common::R>::from_register(self,0)
5716    }
5717}
5718impl ::core::default::Default for Addbldrb {
5719    #[inline(always)]
5720    fn default() -> Addbldrb {
5721        <crate::RegValueT<Addbldrb_SPEC> as RegisterValue<_>>::new(0)
5722    }
5723}
5724
5725#[doc(hidden)]
5726#[derive(Copy, Clone, Eq, PartialEq)]
5727pub struct Adwinmon_SPEC;
5728impl crate::sealed::RegSpec for Adwinmon_SPEC {
5729    type DataType = u8;
5730}
5731
5732#[doc = "A/D Compare Function Window A/B Status Monitor Register"]
5733pub type Adwinmon = crate::RegValueT<Adwinmon_SPEC>;
5734
5735impl Adwinmon {
5736    #[doc = "Combination Result Monitor"]
5737    #[inline(always)]
5738    pub fn moncomb(
5739        self,
5740    ) -> crate::common::RegisterField<
5741        0,
5742        0x1,
5743        1,
5744        0,
5745        adwinmon::Moncomb,
5746        adwinmon::Moncomb,
5747        Adwinmon_SPEC,
5748        crate::common::R,
5749    > {
5750        crate::common::RegisterField::<
5751            0,
5752            0x1,
5753            1,
5754            0,
5755            adwinmon::Moncomb,
5756            adwinmon::Moncomb,
5757            Adwinmon_SPEC,
5758            crate::common::R,
5759        >::from_register(self, 0)
5760    }
5761
5762    #[doc = "Comparison Result Monitor A"]
5763    #[inline(always)]
5764    pub fn moncmpa(
5765        self,
5766    ) -> crate::common::RegisterField<
5767        4,
5768        0x1,
5769        1,
5770        0,
5771        adwinmon::Moncmpa,
5772        adwinmon::Moncmpa,
5773        Adwinmon_SPEC,
5774        crate::common::R,
5775    > {
5776        crate::common::RegisterField::<
5777            4,
5778            0x1,
5779            1,
5780            0,
5781            adwinmon::Moncmpa,
5782            adwinmon::Moncmpa,
5783            Adwinmon_SPEC,
5784            crate::common::R,
5785        >::from_register(self, 0)
5786    }
5787
5788    #[doc = "Comparison Result Monitor B"]
5789    #[inline(always)]
5790    pub fn moncmpb(
5791        self,
5792    ) -> crate::common::RegisterField<
5793        5,
5794        0x1,
5795        1,
5796        0,
5797        adwinmon::Moncmpb,
5798        adwinmon::Moncmpb,
5799        Adwinmon_SPEC,
5800        crate::common::R,
5801    > {
5802        crate::common::RegisterField::<
5803            5,
5804            0x1,
5805            1,
5806            0,
5807            adwinmon::Moncmpb,
5808            adwinmon::Moncmpb,
5809            Adwinmon_SPEC,
5810            crate::common::R,
5811        >::from_register(self, 0)
5812    }
5813}
5814impl ::core::default::Default for Adwinmon {
5815    #[inline(always)]
5816    fn default() -> Adwinmon {
5817        <crate::RegValueT<Adwinmon_SPEC> as RegisterValue<_>>::new(0)
5818    }
5819}
5820pub mod adwinmon {
5821
5822    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5823    pub struct Moncomb_SPEC;
5824    pub type Moncomb = crate::EnumBitfieldStruct<u8, Moncomb_SPEC>;
5825    impl Moncomb {
5826        #[doc = "Window A/B composite conditions are not met."]
5827        pub const _0: Self = Self::new(0);
5828
5829        #[doc = "Window A/B composite conditions are met."]
5830        pub const _1: Self = Self::new(1);
5831    }
5832    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5833    pub struct Moncmpa_SPEC;
5834    pub type Moncmpa = crate::EnumBitfieldStruct<u8, Moncmpa_SPEC>;
5835    impl Moncmpa {
5836        #[doc = "Window A comparison conditions are not met."]
5837        pub const _0: Self = Self::new(0);
5838
5839        #[doc = "Window A comparison conditions are met."]
5840        pub const _1: Self = Self::new(1);
5841    }
5842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5843    pub struct Moncmpb_SPEC;
5844    pub type Moncmpb = crate::EnumBitfieldStruct<u8, Moncmpb_SPEC>;
5845    impl Moncmpb {
5846        #[doc = "Window B comparison conditions are not met."]
5847        pub const _0: Self = Self::new(0);
5848
5849        #[doc = "Window B comparison conditions are met."]
5850        pub const _1: Self = Self::new(1);
5851    }
5852}
5853#[doc(hidden)]
5854#[derive(Copy, Clone, Eq, PartialEq)]
5855pub struct Adcmpcr_SPEC;
5856impl crate::sealed::RegSpec for Adcmpcr_SPEC {
5857    type DataType = u16;
5858}
5859
5860#[doc = "A/D Compare Function Control Register"]
5861pub type Adcmpcr = crate::RegValueT<Adcmpcr_SPEC>;
5862
5863impl Adcmpcr {
5864    #[doc = "Window A/B Composite Conditions Setting"]
5865    #[inline(always)]
5866    pub fn cmpab(
5867        self,
5868    ) -> crate::common::RegisterField<
5869        0,
5870        0x3,
5871        1,
5872        0,
5873        adcmpcr::Cmpab,
5874        adcmpcr::Cmpab,
5875        Adcmpcr_SPEC,
5876        crate::common::RW,
5877    > {
5878        crate::common::RegisterField::<
5879            0,
5880            0x3,
5881            1,
5882            0,
5883            adcmpcr::Cmpab,
5884            adcmpcr::Cmpab,
5885            Adcmpcr_SPEC,
5886            crate::common::RW,
5887        >::from_register(self, 0)
5888    }
5889
5890    #[doc = "Compare Window B Operation Enable"]
5891    #[inline(always)]
5892    pub fn cmpbe(
5893        self,
5894    ) -> crate::common::RegisterField<
5895        9,
5896        0x1,
5897        1,
5898        0,
5899        adcmpcr::Cmpbe,
5900        adcmpcr::Cmpbe,
5901        Adcmpcr_SPEC,
5902        crate::common::RW,
5903    > {
5904        crate::common::RegisterField::<
5905            9,
5906            0x1,
5907            1,
5908            0,
5909            adcmpcr::Cmpbe,
5910            adcmpcr::Cmpbe,
5911            Adcmpcr_SPEC,
5912            crate::common::RW,
5913        >::from_register(self, 0)
5914    }
5915
5916    #[doc = "Compare Window A Operation Enable"]
5917    #[inline(always)]
5918    pub fn cmpae(
5919        self,
5920    ) -> crate::common::RegisterField<
5921        11,
5922        0x1,
5923        1,
5924        0,
5925        adcmpcr::Cmpae,
5926        adcmpcr::Cmpae,
5927        Adcmpcr_SPEC,
5928        crate::common::RW,
5929    > {
5930        crate::common::RegisterField::<
5931            11,
5932            0x1,
5933            1,
5934            0,
5935            adcmpcr::Cmpae,
5936            adcmpcr::Cmpae,
5937            Adcmpcr_SPEC,
5938            crate::common::RW,
5939        >::from_register(self, 0)
5940    }
5941
5942    #[doc = "Compare B Interrupt Enable"]
5943    #[inline(always)]
5944    pub fn cmpbie(
5945        self,
5946    ) -> crate::common::RegisterField<
5947        13,
5948        0x1,
5949        1,
5950        0,
5951        adcmpcr::Cmpbie,
5952        adcmpcr::Cmpbie,
5953        Adcmpcr_SPEC,
5954        crate::common::RW,
5955    > {
5956        crate::common::RegisterField::<
5957            13,
5958            0x1,
5959            1,
5960            0,
5961            adcmpcr::Cmpbie,
5962            adcmpcr::Cmpbie,
5963            Adcmpcr_SPEC,
5964            crate::common::RW,
5965        >::from_register(self, 0)
5966    }
5967
5968    #[doc = "Window Function Setting"]
5969    #[inline(always)]
5970    pub fn wcmpe(
5971        self,
5972    ) -> crate::common::RegisterField<
5973        14,
5974        0x1,
5975        1,
5976        0,
5977        adcmpcr::Wcmpe,
5978        adcmpcr::Wcmpe,
5979        Adcmpcr_SPEC,
5980        crate::common::RW,
5981    > {
5982        crate::common::RegisterField::<
5983            14,
5984            0x1,
5985            1,
5986            0,
5987            adcmpcr::Wcmpe,
5988            adcmpcr::Wcmpe,
5989            Adcmpcr_SPEC,
5990            crate::common::RW,
5991        >::from_register(self, 0)
5992    }
5993
5994    #[doc = "Compare A Interrupt Enable"]
5995    #[inline(always)]
5996    pub fn cmpaie(
5997        self,
5998    ) -> crate::common::RegisterField<
5999        15,
6000        0x1,
6001        1,
6002        0,
6003        adcmpcr::Cmpaie,
6004        adcmpcr::Cmpaie,
6005        Adcmpcr_SPEC,
6006        crate::common::RW,
6007    > {
6008        crate::common::RegisterField::<
6009            15,
6010            0x1,
6011            1,
6012            0,
6013            adcmpcr::Cmpaie,
6014            adcmpcr::Cmpaie,
6015            Adcmpcr_SPEC,
6016            crate::common::RW,
6017        >::from_register(self, 0)
6018    }
6019}
6020impl ::core::default::Default for Adcmpcr {
6021    #[inline(always)]
6022    fn default() -> Adcmpcr {
6023        <crate::RegValueT<Adcmpcr_SPEC> as RegisterValue<_>>::new(0)
6024    }
6025}
6026pub mod adcmpcr {
6027
6028    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6029    pub struct Cmpab_SPEC;
6030    pub type Cmpab = crate::EnumBitfieldStruct<u8, Cmpab_SPEC>;
6031    impl Cmpab {
6032        #[doc = "Output ADC120_WCMPM when window A OR window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6033        pub const _00: Self = Self::new(0);
6034
6035        #[doc = "Output ADC120_WCMPM when window A EXOR window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6036        pub const _01: Self = Self::new(1);
6037
6038        #[doc = "Output ADC120_WCMPM when window A AND window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6039        pub const _10: Self = Self::new(2);
6040
6041        #[doc = "Setting prohibited."]
6042        pub const _11: Self = Self::new(3);
6043    }
6044    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6045    pub struct Cmpbe_SPEC;
6046    pub type Cmpbe = crate::EnumBitfieldStruct<u8, Cmpbe_SPEC>;
6047    impl Cmpbe {
6048        #[doc = "Disable compare window B operation. Disable ADC120_WCMPM and ADC120_WCMPUM outputs."]
6049        pub const _0: Self = Self::new(0);
6050
6051        #[doc = "Enable compare window B operation."]
6052        pub const _1: Self = Self::new(1);
6053    }
6054    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6055    pub struct Cmpae_SPEC;
6056    pub type Cmpae = crate::EnumBitfieldStruct<u8, Cmpae_SPEC>;
6057    impl Cmpae {
6058        #[doc = "Disable compare window A operation. Disable ADC120_WCMPM and ADC120_WCMPUM outputs."]
6059        pub const _0: Self = Self::new(0);
6060
6061        #[doc = "Enable compare window A operation."]
6062        pub const _1: Self = Self::new(1);
6063    }
6064    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6065    pub struct Cmpbie_SPEC;
6066    pub type Cmpbie = crate::EnumBitfieldStruct<u8, Cmpbie_SPEC>;
6067    impl Cmpbie {
6068        #[doc = "Disable ADC120_CMPBI interrupt when comparison conditions (window B) are met."]
6069        pub const _0: Self = Self::new(0);
6070
6071        #[doc = "Enable ADC120_CMPBI interrupt when comparison conditions (window B) are met."]
6072        pub const _1: Self = Self::new(1);
6073    }
6074    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6075    pub struct Wcmpe_SPEC;
6076    pub type Wcmpe = crate::EnumBitfieldStruct<u8, Wcmpe_SPEC>;
6077    impl Wcmpe {
6078        #[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."]
6079        pub const _0: Self = Self::new(0);
6080
6081        #[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."]
6082        pub const _1: Self = Self::new(1);
6083    }
6084    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6085    pub struct Cmpaie_SPEC;
6086    pub type Cmpaie = crate::EnumBitfieldStruct<u8, Cmpaie_SPEC>;
6087    impl Cmpaie {
6088        #[doc = "Disable ADC120_CMPAI interrupt when comparison conditions (window A) are met."]
6089        pub const _0: Self = Self::new(0);
6090
6091        #[doc = "Enable ADC120_CMPAI interrupt when comparison conditions (window A) are met."]
6092        pub const _1: Self = Self::new(1);
6093    }
6094}
6095#[doc(hidden)]
6096#[derive(Copy, Clone, Eq, PartialEq)]
6097pub struct Adcmpanser_SPEC;
6098impl crate::sealed::RegSpec for Adcmpanser_SPEC {
6099    type DataType = u8;
6100}
6101
6102#[doc = "A/D Compare Function Window A Extended Input Select Register"]
6103pub type Adcmpanser = crate::RegValueT<Adcmpanser_SPEC>;
6104
6105impl Adcmpanser {
6106    #[doc = "Temperature Sensor Output Compare Select"]
6107    #[inline(always)]
6108    pub fn cmptsa(
6109        self,
6110    ) -> crate::common::RegisterField<
6111        0,
6112        0x1,
6113        1,
6114        0,
6115        adcmpanser::Cmptsa,
6116        adcmpanser::Cmptsa,
6117        Adcmpanser_SPEC,
6118        crate::common::RW,
6119    > {
6120        crate::common::RegisterField::<
6121            0,
6122            0x1,
6123            1,
6124            0,
6125            adcmpanser::Cmptsa,
6126            adcmpanser::Cmptsa,
6127            Adcmpanser_SPEC,
6128            crate::common::RW,
6129        >::from_register(self, 0)
6130    }
6131
6132    #[doc = "Internal Reference Voltage Compare Select"]
6133    #[inline(always)]
6134    pub fn cmpoca(
6135        self,
6136    ) -> crate::common::RegisterField<
6137        1,
6138        0x1,
6139        1,
6140        0,
6141        adcmpanser::Cmpoca,
6142        adcmpanser::Cmpoca,
6143        Adcmpanser_SPEC,
6144        crate::common::RW,
6145    > {
6146        crate::common::RegisterField::<
6147            1,
6148            0x1,
6149            1,
6150            0,
6151            adcmpanser::Cmpoca,
6152            adcmpanser::Cmpoca,
6153            Adcmpanser_SPEC,
6154            crate::common::RW,
6155        >::from_register(self, 0)
6156    }
6157}
6158impl ::core::default::Default for Adcmpanser {
6159    #[inline(always)]
6160    fn default() -> Adcmpanser {
6161        <crate::RegValueT<Adcmpanser_SPEC> as RegisterValue<_>>::new(0)
6162    }
6163}
6164pub mod adcmpanser {
6165
6166    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6167    pub struct Cmptsa_SPEC;
6168    pub type Cmptsa = crate::EnumBitfieldStruct<u8, Cmptsa_SPEC>;
6169    impl Cmptsa {
6170        #[doc = "Exclude the temperature sensor output from the compare Window A target range."]
6171        pub const _0: Self = Self::new(0);
6172
6173        #[doc = "Include the temperature sensor output in the compare Window A target range."]
6174        pub const _1: Self = Self::new(1);
6175    }
6176    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6177    pub struct Cmpoca_SPEC;
6178    pub type Cmpoca = crate::EnumBitfieldStruct<u8, Cmpoca_SPEC>;
6179    impl Cmpoca {
6180        #[doc = "Exclude the internal reference voltage from the compare Window A target range."]
6181        pub const _0: Self = Self::new(0);
6182
6183        #[doc = "Include the internal reference voltage in the compare Window A target range."]
6184        pub const _1: Self = Self::new(1);
6185    }
6186}
6187#[doc(hidden)]
6188#[derive(Copy, Clone, Eq, PartialEq)]
6189pub struct Adcmpler_SPEC;
6190impl crate::sealed::RegSpec for Adcmpler_SPEC {
6191    type DataType = u8;
6192}
6193
6194#[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
6195pub type Adcmpler = crate::RegValueT<Adcmpler_SPEC>;
6196
6197impl Adcmpler {
6198    #[doc = "Compare Window A Temperature Sensor Output Comparison Condition Select"]
6199    #[inline(always)]
6200    pub fn cmpltsa(
6201        self,
6202    ) -> crate::common::RegisterField<
6203        0,
6204        0x1,
6205        1,
6206        0,
6207        adcmpler::Cmpltsa,
6208        adcmpler::Cmpltsa,
6209        Adcmpler_SPEC,
6210        crate::common::RW,
6211    > {
6212        crate::common::RegisterField::<
6213            0,
6214            0x1,
6215            1,
6216            0,
6217            adcmpler::Cmpltsa,
6218            adcmpler::Cmpltsa,
6219            Adcmpler_SPEC,
6220            crate::common::RW,
6221        >::from_register(self, 0)
6222    }
6223
6224    #[doc = "Compare Window A Internal Reference Voltage Comparison Condition Select"]
6225    #[inline(always)]
6226    pub fn cmploca(
6227        self,
6228    ) -> crate::common::RegisterField<
6229        1,
6230        0x1,
6231        1,
6232        0,
6233        adcmpler::Cmploca,
6234        adcmpler::Cmploca,
6235        Adcmpler_SPEC,
6236        crate::common::RW,
6237    > {
6238        crate::common::RegisterField::<
6239            1,
6240            0x1,
6241            1,
6242            0,
6243            adcmpler::Cmploca,
6244            adcmpler::Cmploca,
6245            Adcmpler_SPEC,
6246            crate::common::RW,
6247        >::from_register(self, 0)
6248    }
6249}
6250impl ::core::default::Default for Adcmpler {
6251    #[inline(always)]
6252    fn default() -> Adcmpler {
6253        <crate::RegValueT<Adcmpler_SPEC> as RegisterValue<_>>::new(0)
6254    }
6255}
6256pub mod adcmpler {
6257
6258    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6259    pub struct Cmpltsa_SPEC;
6260    pub type Cmpltsa = crate::EnumBitfieldStruct<u8, Cmpltsa_SPEC>;
6261    impl Cmpltsa {
6262        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0) : ADCMPDR0 value > A/D-converted valueCompare Window A Temperature Sensor Output Comparison Condition Select When window function is enabled (ADCMPCR.WCMPE = 1) : Compare Window A Temperature Sensor Output Comparison ConditionA/D-converted value < ADCMPDR0 value, or A/D-converted value > ADCMPDR1 value"]
6263        pub const _0: Self = Self::new(0);
6264
6265        #[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"]
6266        pub const _1: Self = Self::new(1);
6267    }
6268    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6269    pub struct Cmploca_SPEC;
6270    pub type Cmploca = crate::EnumBitfieldStruct<u8, Cmploca_SPEC>;
6271    impl Cmploca {
6272        #[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"]
6273        pub const _0: Self = Self::new(0);
6274
6275        #[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"]
6276        pub const _1: Self = Self::new(1);
6277    }
6278}
6279#[doc(hidden)]
6280#[derive(Copy, Clone, Eq, PartialEq)]
6281pub struct Adcmpansr0_SPEC;
6282impl crate::sealed::RegSpec for Adcmpansr0_SPEC {
6283    type DataType = u16;
6284}
6285
6286#[doc = "A/D Compare Function Window A Channel Select Register 0"]
6287pub type Adcmpansr0 = crate::RegValueT<Adcmpansr0_SPEC>;
6288
6289impl Adcmpansr0 {
6290    #[doc = "Compare Window A Channel Select"]
6291    #[inline(always)]
6292    pub fn cmpcha00(
6293        self,
6294    ) -> crate::common::RegisterField<
6295        0,
6296        0x1,
6297        1,
6298        0,
6299        adcmpansr0::Cmpcha00,
6300        adcmpansr0::Cmpcha00,
6301        Adcmpansr0_SPEC,
6302        crate::common::RW,
6303    > {
6304        crate::common::RegisterField::<
6305            0,
6306            0x1,
6307            1,
6308            0,
6309            adcmpansr0::Cmpcha00,
6310            adcmpansr0::Cmpcha00,
6311            Adcmpansr0_SPEC,
6312            crate::common::RW,
6313        >::from_register(self, 0)
6314    }
6315
6316    #[doc = "Compare Window A Channel Select"]
6317    #[inline(always)]
6318    pub fn cmpcha01(
6319        self,
6320    ) -> crate::common::RegisterField<
6321        1,
6322        0x1,
6323        1,
6324        0,
6325        adcmpansr0::Cmpcha01,
6326        adcmpansr0::Cmpcha01,
6327        Adcmpansr0_SPEC,
6328        crate::common::RW,
6329    > {
6330        crate::common::RegisterField::<
6331            1,
6332            0x1,
6333            1,
6334            0,
6335            adcmpansr0::Cmpcha01,
6336            adcmpansr0::Cmpcha01,
6337            Adcmpansr0_SPEC,
6338            crate::common::RW,
6339        >::from_register(self, 0)
6340    }
6341
6342    #[doc = "Compare Window A Channel Select"]
6343    #[inline(always)]
6344    pub fn cmpcha02(
6345        self,
6346    ) -> crate::common::RegisterField<
6347        2,
6348        0x1,
6349        1,
6350        0,
6351        adcmpansr0::Cmpcha02,
6352        adcmpansr0::Cmpcha02,
6353        Adcmpansr0_SPEC,
6354        crate::common::RW,
6355    > {
6356        crate::common::RegisterField::<
6357            2,
6358            0x1,
6359            1,
6360            0,
6361            adcmpansr0::Cmpcha02,
6362            adcmpansr0::Cmpcha02,
6363            Adcmpansr0_SPEC,
6364            crate::common::RW,
6365        >::from_register(self, 0)
6366    }
6367
6368    #[doc = "Compare Window A Channel Select"]
6369    #[inline(always)]
6370    pub fn cmpcha03(
6371        self,
6372    ) -> crate::common::RegisterField<
6373        3,
6374        0x1,
6375        1,
6376        0,
6377        adcmpansr0::Cmpcha03,
6378        adcmpansr0::Cmpcha03,
6379        Adcmpansr0_SPEC,
6380        crate::common::RW,
6381    > {
6382        crate::common::RegisterField::<
6383            3,
6384            0x1,
6385            1,
6386            0,
6387            adcmpansr0::Cmpcha03,
6388            adcmpansr0::Cmpcha03,
6389            Adcmpansr0_SPEC,
6390            crate::common::RW,
6391        >::from_register(self, 0)
6392    }
6393
6394    #[doc = "Compare Window A Channel Select"]
6395    #[inline(always)]
6396    pub fn cmpcha04(
6397        self,
6398    ) -> crate::common::RegisterField<
6399        4,
6400        0x1,
6401        1,
6402        0,
6403        adcmpansr0::Cmpcha04,
6404        adcmpansr0::Cmpcha04,
6405        Adcmpansr0_SPEC,
6406        crate::common::RW,
6407    > {
6408        crate::common::RegisterField::<
6409            4,
6410            0x1,
6411            1,
6412            0,
6413            adcmpansr0::Cmpcha04,
6414            adcmpansr0::Cmpcha04,
6415            Adcmpansr0_SPEC,
6416            crate::common::RW,
6417        >::from_register(self, 0)
6418    }
6419
6420    #[doc = "Compare Window A Channel Select"]
6421    #[inline(always)]
6422    pub fn cmpcha05(
6423        self,
6424    ) -> crate::common::RegisterField<
6425        5,
6426        0x1,
6427        1,
6428        0,
6429        adcmpansr0::Cmpcha05,
6430        adcmpansr0::Cmpcha05,
6431        Adcmpansr0_SPEC,
6432        crate::common::RW,
6433    > {
6434        crate::common::RegisterField::<
6435            5,
6436            0x1,
6437            1,
6438            0,
6439            adcmpansr0::Cmpcha05,
6440            adcmpansr0::Cmpcha05,
6441            Adcmpansr0_SPEC,
6442            crate::common::RW,
6443        >::from_register(self, 0)
6444    }
6445
6446    #[doc = "Compare Window A Channel Select"]
6447    #[inline(always)]
6448    pub fn cmpcha06(
6449        self,
6450    ) -> crate::common::RegisterField<
6451        6,
6452        0x1,
6453        1,
6454        0,
6455        adcmpansr0::Cmpcha06,
6456        adcmpansr0::Cmpcha06,
6457        Adcmpansr0_SPEC,
6458        crate::common::RW,
6459    > {
6460        crate::common::RegisterField::<
6461            6,
6462            0x1,
6463            1,
6464            0,
6465            adcmpansr0::Cmpcha06,
6466            adcmpansr0::Cmpcha06,
6467            Adcmpansr0_SPEC,
6468            crate::common::RW,
6469        >::from_register(self, 0)
6470    }
6471
6472    #[doc = "Compare Window A Channel Select"]
6473    #[inline(always)]
6474    pub fn cmpcha07(
6475        self,
6476    ) -> crate::common::RegisterField<
6477        7,
6478        0x1,
6479        1,
6480        0,
6481        adcmpansr0::Cmpcha07,
6482        adcmpansr0::Cmpcha07,
6483        Adcmpansr0_SPEC,
6484        crate::common::RW,
6485    > {
6486        crate::common::RegisterField::<
6487            7,
6488            0x1,
6489            1,
6490            0,
6491            adcmpansr0::Cmpcha07,
6492            adcmpansr0::Cmpcha07,
6493            Adcmpansr0_SPEC,
6494            crate::common::RW,
6495        >::from_register(self, 0)
6496    }
6497
6498    #[doc = "Compare Window A Channel Select"]
6499    #[inline(always)]
6500    pub fn cmpcha08(
6501        self,
6502    ) -> crate::common::RegisterField<
6503        8,
6504        0x1,
6505        1,
6506        0,
6507        adcmpansr0::Cmpcha08,
6508        adcmpansr0::Cmpcha08,
6509        Adcmpansr0_SPEC,
6510        crate::common::RW,
6511    > {
6512        crate::common::RegisterField::<
6513            8,
6514            0x1,
6515            1,
6516            0,
6517            adcmpansr0::Cmpcha08,
6518            adcmpansr0::Cmpcha08,
6519            Adcmpansr0_SPEC,
6520            crate::common::RW,
6521        >::from_register(self, 0)
6522    }
6523
6524    #[doc = "Compare Window A Channel Select"]
6525    #[inline(always)]
6526    pub fn cmpcha09(
6527        self,
6528    ) -> crate::common::RegisterField<
6529        9,
6530        0x1,
6531        1,
6532        0,
6533        adcmpansr0::Cmpcha09,
6534        adcmpansr0::Cmpcha09,
6535        Adcmpansr0_SPEC,
6536        crate::common::RW,
6537    > {
6538        crate::common::RegisterField::<
6539            9,
6540            0x1,
6541            1,
6542            0,
6543            adcmpansr0::Cmpcha09,
6544            adcmpansr0::Cmpcha09,
6545            Adcmpansr0_SPEC,
6546            crate::common::RW,
6547        >::from_register(self, 0)
6548    }
6549
6550    #[doc = "Compare Window A Channel Select"]
6551    #[inline(always)]
6552    pub fn cmpcha10(
6553        self,
6554    ) -> crate::common::RegisterField<
6555        10,
6556        0x1,
6557        1,
6558        0,
6559        adcmpansr0::Cmpcha10,
6560        adcmpansr0::Cmpcha10,
6561        Adcmpansr0_SPEC,
6562        crate::common::RW,
6563    > {
6564        crate::common::RegisterField::<
6565            10,
6566            0x1,
6567            1,
6568            0,
6569            adcmpansr0::Cmpcha10,
6570            adcmpansr0::Cmpcha10,
6571            Adcmpansr0_SPEC,
6572            crate::common::RW,
6573        >::from_register(self, 0)
6574    }
6575
6576    #[doc = "Compare Window A Channel Select"]
6577    #[inline(always)]
6578    pub fn cmpcha11(
6579        self,
6580    ) -> crate::common::RegisterField<
6581        11,
6582        0x1,
6583        1,
6584        0,
6585        adcmpansr0::Cmpcha11,
6586        adcmpansr0::Cmpcha11,
6587        Adcmpansr0_SPEC,
6588        crate::common::RW,
6589    > {
6590        crate::common::RegisterField::<
6591            11,
6592            0x1,
6593            1,
6594            0,
6595            adcmpansr0::Cmpcha11,
6596            adcmpansr0::Cmpcha11,
6597            Adcmpansr0_SPEC,
6598            crate::common::RW,
6599        >::from_register(self, 0)
6600    }
6601
6602    #[doc = "Compare Window A Channel Select"]
6603    #[inline(always)]
6604    pub fn cmpcha12(
6605        self,
6606    ) -> crate::common::RegisterField<
6607        12,
6608        0x1,
6609        1,
6610        0,
6611        adcmpansr0::Cmpcha12,
6612        adcmpansr0::Cmpcha12,
6613        Adcmpansr0_SPEC,
6614        crate::common::RW,
6615    > {
6616        crate::common::RegisterField::<
6617            12,
6618            0x1,
6619            1,
6620            0,
6621            adcmpansr0::Cmpcha12,
6622            adcmpansr0::Cmpcha12,
6623            Adcmpansr0_SPEC,
6624            crate::common::RW,
6625        >::from_register(self, 0)
6626    }
6627
6628    #[doc = "Compare Window A Channel Select"]
6629    #[inline(always)]
6630    pub fn cmpcha13(
6631        self,
6632    ) -> crate::common::RegisterField<
6633        13,
6634        0x1,
6635        1,
6636        0,
6637        adcmpansr0::Cmpcha13,
6638        adcmpansr0::Cmpcha13,
6639        Adcmpansr0_SPEC,
6640        crate::common::RW,
6641    > {
6642        crate::common::RegisterField::<
6643            13,
6644            0x1,
6645            1,
6646            0,
6647            adcmpansr0::Cmpcha13,
6648            adcmpansr0::Cmpcha13,
6649            Adcmpansr0_SPEC,
6650            crate::common::RW,
6651        >::from_register(self, 0)
6652    }
6653
6654    #[doc = "Compare Window A Channel Select"]
6655    #[inline(always)]
6656    pub fn cmpcha14(
6657        self,
6658    ) -> crate::common::RegisterField<
6659        14,
6660        0x1,
6661        1,
6662        0,
6663        adcmpansr0::Cmpcha14,
6664        adcmpansr0::Cmpcha14,
6665        Adcmpansr0_SPEC,
6666        crate::common::RW,
6667    > {
6668        crate::common::RegisterField::<
6669            14,
6670            0x1,
6671            1,
6672            0,
6673            adcmpansr0::Cmpcha14,
6674            adcmpansr0::Cmpcha14,
6675            Adcmpansr0_SPEC,
6676            crate::common::RW,
6677        >::from_register(self, 0)
6678    }
6679
6680    #[doc = "Compare Window A Channel Select"]
6681    #[inline(always)]
6682    pub fn cmpcha15(
6683        self,
6684    ) -> crate::common::RegisterField<
6685        15,
6686        0x1,
6687        1,
6688        0,
6689        adcmpansr0::Cmpcha15,
6690        adcmpansr0::Cmpcha15,
6691        Adcmpansr0_SPEC,
6692        crate::common::RW,
6693    > {
6694        crate::common::RegisterField::<
6695            15,
6696            0x1,
6697            1,
6698            0,
6699            adcmpansr0::Cmpcha15,
6700            adcmpansr0::Cmpcha15,
6701            Adcmpansr0_SPEC,
6702            crate::common::RW,
6703        >::from_register(self, 0)
6704    }
6705}
6706impl ::core::default::Default for Adcmpansr0 {
6707    #[inline(always)]
6708    fn default() -> Adcmpansr0 {
6709        <crate::RegValueT<Adcmpansr0_SPEC> as RegisterValue<_>>::new(0)
6710    }
6711}
6712pub mod adcmpansr0 {
6713
6714    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6715    pub struct Cmpcha00_SPEC;
6716    pub type Cmpcha00 = crate::EnumBitfieldStruct<u8, Cmpcha00_SPEC>;
6717    impl Cmpcha00 {
6718        #[doc = "Disable compare function for associated input channel"]
6719        pub const _0: Self = Self::new(0);
6720
6721        #[doc = "Enable compare function for associated input channel"]
6722        pub const _1: Self = Self::new(1);
6723    }
6724    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6725    pub struct Cmpcha01_SPEC;
6726    pub type Cmpcha01 = crate::EnumBitfieldStruct<u8, Cmpcha01_SPEC>;
6727    impl Cmpcha01 {
6728        #[doc = "Disable compare function for associated input channel"]
6729        pub const _0: Self = Self::new(0);
6730
6731        #[doc = "Enable compare function for associated input channel"]
6732        pub const _1: Self = Self::new(1);
6733    }
6734    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6735    pub struct Cmpcha02_SPEC;
6736    pub type Cmpcha02 = crate::EnumBitfieldStruct<u8, Cmpcha02_SPEC>;
6737    impl Cmpcha02 {
6738        #[doc = "Disable compare function for associated input channel"]
6739        pub const _0: Self = Self::new(0);
6740
6741        #[doc = "Enable compare function for associated input channel"]
6742        pub const _1: Self = Self::new(1);
6743    }
6744    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6745    pub struct Cmpcha03_SPEC;
6746    pub type Cmpcha03 = crate::EnumBitfieldStruct<u8, Cmpcha03_SPEC>;
6747    impl Cmpcha03 {
6748        #[doc = "Disable compare function for associated input channel"]
6749        pub const _0: Self = Self::new(0);
6750
6751        #[doc = "Enable compare function for associated input channel"]
6752        pub const _1: Self = Self::new(1);
6753    }
6754    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6755    pub struct Cmpcha04_SPEC;
6756    pub type Cmpcha04 = crate::EnumBitfieldStruct<u8, Cmpcha04_SPEC>;
6757    impl Cmpcha04 {
6758        #[doc = "Disable compare function for associated input channel"]
6759        pub const _0: Self = Self::new(0);
6760
6761        #[doc = "Enable compare function for associated input channel"]
6762        pub const _1: Self = Self::new(1);
6763    }
6764    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6765    pub struct Cmpcha05_SPEC;
6766    pub type Cmpcha05 = crate::EnumBitfieldStruct<u8, Cmpcha05_SPEC>;
6767    impl Cmpcha05 {
6768        #[doc = "Disable compare function for associated input channel"]
6769        pub const _0: Self = Self::new(0);
6770
6771        #[doc = "Enable compare function for associated input channel"]
6772        pub const _1: Self = Self::new(1);
6773    }
6774    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6775    pub struct Cmpcha06_SPEC;
6776    pub type Cmpcha06 = crate::EnumBitfieldStruct<u8, Cmpcha06_SPEC>;
6777    impl Cmpcha06 {
6778        #[doc = "Disable compare function for associated input channel"]
6779        pub const _0: Self = Self::new(0);
6780
6781        #[doc = "Enable compare function for associated input channel"]
6782        pub const _1: Self = Self::new(1);
6783    }
6784    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6785    pub struct Cmpcha07_SPEC;
6786    pub type Cmpcha07 = crate::EnumBitfieldStruct<u8, Cmpcha07_SPEC>;
6787    impl Cmpcha07 {
6788        #[doc = "Disable compare function for associated input channel"]
6789        pub const _0: Self = Self::new(0);
6790
6791        #[doc = "Enable compare function for associated input channel"]
6792        pub const _1: Self = Self::new(1);
6793    }
6794    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6795    pub struct Cmpcha08_SPEC;
6796    pub type Cmpcha08 = crate::EnumBitfieldStruct<u8, Cmpcha08_SPEC>;
6797    impl Cmpcha08 {
6798        #[doc = "Disable compare function for associated input channel"]
6799        pub const _0: Self = Self::new(0);
6800
6801        #[doc = "Enable compare function for associated input channel"]
6802        pub const _1: Self = Self::new(1);
6803    }
6804    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6805    pub struct Cmpcha09_SPEC;
6806    pub type Cmpcha09 = crate::EnumBitfieldStruct<u8, Cmpcha09_SPEC>;
6807    impl Cmpcha09 {
6808        #[doc = "Disable compare function for associated input channel"]
6809        pub const _0: Self = Self::new(0);
6810
6811        #[doc = "Enable compare function for associated input channel"]
6812        pub const _1: Self = Self::new(1);
6813    }
6814    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6815    pub struct Cmpcha10_SPEC;
6816    pub type Cmpcha10 = crate::EnumBitfieldStruct<u8, Cmpcha10_SPEC>;
6817    impl Cmpcha10 {
6818        #[doc = "Disable compare function for associated input channel"]
6819        pub const _0: Self = Self::new(0);
6820
6821        #[doc = "Enable compare function for associated input channel"]
6822        pub const _1: Self = Self::new(1);
6823    }
6824    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6825    pub struct Cmpcha11_SPEC;
6826    pub type Cmpcha11 = crate::EnumBitfieldStruct<u8, Cmpcha11_SPEC>;
6827    impl Cmpcha11 {
6828        #[doc = "Disable compare function for associated input channel"]
6829        pub const _0: Self = Self::new(0);
6830
6831        #[doc = "Enable compare function for associated input channel"]
6832        pub const _1: Self = Self::new(1);
6833    }
6834    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6835    pub struct Cmpcha12_SPEC;
6836    pub type Cmpcha12 = crate::EnumBitfieldStruct<u8, Cmpcha12_SPEC>;
6837    impl Cmpcha12 {
6838        #[doc = "Disable compare function for associated input channel"]
6839        pub const _0: Self = Self::new(0);
6840
6841        #[doc = "Enable compare function for associated input channel"]
6842        pub const _1: Self = Self::new(1);
6843    }
6844    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6845    pub struct Cmpcha13_SPEC;
6846    pub type Cmpcha13 = crate::EnumBitfieldStruct<u8, Cmpcha13_SPEC>;
6847    impl Cmpcha13 {
6848        #[doc = "Disable compare function for associated input channel"]
6849        pub const _0: Self = Self::new(0);
6850
6851        #[doc = "Enable compare function for associated input channel"]
6852        pub const _1: Self = Self::new(1);
6853    }
6854    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6855    pub struct Cmpcha14_SPEC;
6856    pub type Cmpcha14 = crate::EnumBitfieldStruct<u8, Cmpcha14_SPEC>;
6857    impl Cmpcha14 {
6858        #[doc = "Disable compare function for associated input channel"]
6859        pub const _0: Self = Self::new(0);
6860
6861        #[doc = "Enable compare function for associated input channel"]
6862        pub const _1: Self = Self::new(1);
6863    }
6864    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6865    pub struct Cmpcha15_SPEC;
6866    pub type Cmpcha15 = crate::EnumBitfieldStruct<u8, Cmpcha15_SPEC>;
6867    impl Cmpcha15 {
6868        #[doc = "Disable compare function for associated input channel"]
6869        pub const _0: Self = Self::new(0);
6870
6871        #[doc = "Enable compare function for associated input channel"]
6872        pub const _1: Self = Self::new(1);
6873    }
6874}
6875#[doc(hidden)]
6876#[derive(Copy, Clone, Eq, PartialEq)]
6877pub struct Adcmpansr1_SPEC;
6878impl crate::sealed::RegSpec for Adcmpansr1_SPEC {
6879    type DataType = u16;
6880}
6881
6882#[doc = "A/D Compare Function Window A Channel Select Register 1"]
6883pub type Adcmpansr1 = crate::RegValueT<Adcmpansr1_SPEC>;
6884
6885impl Adcmpansr1 {
6886    #[doc = "Compare Window A Channel Select"]
6887    #[inline(always)]
6888    pub fn cmpcha16(
6889        self,
6890    ) -> crate::common::RegisterField<
6891        0,
6892        0x1,
6893        1,
6894        0,
6895        adcmpansr1::Cmpcha16,
6896        adcmpansr1::Cmpcha16,
6897        Adcmpansr1_SPEC,
6898        crate::common::RW,
6899    > {
6900        crate::common::RegisterField::<
6901            0,
6902            0x1,
6903            1,
6904            0,
6905            adcmpansr1::Cmpcha16,
6906            adcmpansr1::Cmpcha16,
6907            Adcmpansr1_SPEC,
6908            crate::common::RW,
6909        >::from_register(self, 0)
6910    }
6911
6912    #[doc = "Compare Window A Channel Select"]
6913    #[inline(always)]
6914    pub fn cmpcha17(
6915        self,
6916    ) -> crate::common::RegisterField<
6917        1,
6918        0x1,
6919        1,
6920        0,
6921        adcmpansr1::Cmpcha17,
6922        adcmpansr1::Cmpcha17,
6923        Adcmpansr1_SPEC,
6924        crate::common::RW,
6925    > {
6926        crate::common::RegisterField::<
6927            1,
6928            0x1,
6929            1,
6930            0,
6931            adcmpansr1::Cmpcha17,
6932            adcmpansr1::Cmpcha17,
6933            Adcmpansr1_SPEC,
6934            crate::common::RW,
6935        >::from_register(self, 0)
6936    }
6937
6938    #[doc = "Compare Window A Channel Select"]
6939    #[inline(always)]
6940    pub fn cmpcha18(
6941        self,
6942    ) -> crate::common::RegisterField<
6943        2,
6944        0x1,
6945        1,
6946        0,
6947        adcmpansr1::Cmpcha18,
6948        adcmpansr1::Cmpcha18,
6949        Adcmpansr1_SPEC,
6950        crate::common::RW,
6951    > {
6952        crate::common::RegisterField::<
6953            2,
6954            0x1,
6955            1,
6956            0,
6957            adcmpansr1::Cmpcha18,
6958            adcmpansr1::Cmpcha18,
6959            Adcmpansr1_SPEC,
6960            crate::common::RW,
6961        >::from_register(self, 0)
6962    }
6963
6964    #[doc = "Compare Window A Channel Select"]
6965    #[inline(always)]
6966    pub fn cmpcha19(
6967        self,
6968    ) -> crate::common::RegisterField<
6969        3,
6970        0x1,
6971        1,
6972        0,
6973        adcmpansr1::Cmpcha19,
6974        adcmpansr1::Cmpcha19,
6975        Adcmpansr1_SPEC,
6976        crate::common::RW,
6977    > {
6978        crate::common::RegisterField::<
6979            3,
6980            0x1,
6981            1,
6982            0,
6983            adcmpansr1::Cmpcha19,
6984            adcmpansr1::Cmpcha19,
6985            Adcmpansr1_SPEC,
6986            crate::common::RW,
6987        >::from_register(self, 0)
6988    }
6989
6990    #[doc = "Compare Window A Channel Select"]
6991    #[inline(always)]
6992    pub fn cmpcha20(
6993        self,
6994    ) -> crate::common::RegisterField<
6995        4,
6996        0x1,
6997        1,
6998        0,
6999        adcmpansr1::Cmpcha20,
7000        adcmpansr1::Cmpcha20,
7001        Adcmpansr1_SPEC,
7002        crate::common::RW,
7003    > {
7004        crate::common::RegisterField::<
7005            4,
7006            0x1,
7007            1,
7008            0,
7009            adcmpansr1::Cmpcha20,
7010            adcmpansr1::Cmpcha20,
7011            Adcmpansr1_SPEC,
7012            crate::common::RW,
7013        >::from_register(self, 0)
7014    }
7015
7016    #[doc = "Compare Window A Channel Select"]
7017    #[inline(always)]
7018    pub fn cmpcha21(
7019        self,
7020    ) -> crate::common::RegisterField<
7021        5,
7022        0x1,
7023        1,
7024        0,
7025        adcmpansr1::Cmpcha21,
7026        adcmpansr1::Cmpcha21,
7027        Adcmpansr1_SPEC,
7028        crate::common::RW,
7029    > {
7030        crate::common::RegisterField::<
7031            5,
7032            0x1,
7033            1,
7034            0,
7035            adcmpansr1::Cmpcha21,
7036            adcmpansr1::Cmpcha21,
7037            Adcmpansr1_SPEC,
7038            crate::common::RW,
7039        >::from_register(self, 0)
7040    }
7041
7042    #[doc = "Compare Window A Channel Select"]
7043    #[inline(always)]
7044    pub fn cmpcha22(
7045        self,
7046    ) -> crate::common::RegisterField<
7047        6,
7048        0x1,
7049        1,
7050        0,
7051        adcmpansr1::Cmpcha22,
7052        adcmpansr1::Cmpcha22,
7053        Adcmpansr1_SPEC,
7054        crate::common::RW,
7055    > {
7056        crate::common::RegisterField::<
7057            6,
7058            0x1,
7059            1,
7060            0,
7061            adcmpansr1::Cmpcha22,
7062            adcmpansr1::Cmpcha22,
7063            Adcmpansr1_SPEC,
7064            crate::common::RW,
7065        >::from_register(self, 0)
7066    }
7067
7068    #[doc = "Compare Window A Channel Select"]
7069    #[inline(always)]
7070    pub fn cmpcha23(
7071        self,
7072    ) -> crate::common::RegisterField<
7073        7,
7074        0x1,
7075        1,
7076        0,
7077        adcmpansr1::Cmpcha23,
7078        adcmpansr1::Cmpcha23,
7079        Adcmpansr1_SPEC,
7080        crate::common::RW,
7081    > {
7082        crate::common::RegisterField::<
7083            7,
7084            0x1,
7085            1,
7086            0,
7087            adcmpansr1::Cmpcha23,
7088            adcmpansr1::Cmpcha23,
7089            Adcmpansr1_SPEC,
7090            crate::common::RW,
7091        >::from_register(self, 0)
7092    }
7093
7094    #[doc = "Compare Window A Channel Select"]
7095    #[inline(always)]
7096    pub fn cmpcha24(
7097        self,
7098    ) -> crate::common::RegisterField<
7099        8,
7100        0x1,
7101        1,
7102        0,
7103        adcmpansr1::Cmpcha24,
7104        adcmpansr1::Cmpcha24,
7105        Adcmpansr1_SPEC,
7106        crate::common::RW,
7107    > {
7108        crate::common::RegisterField::<
7109            8,
7110            0x1,
7111            1,
7112            0,
7113            adcmpansr1::Cmpcha24,
7114            adcmpansr1::Cmpcha24,
7115            Adcmpansr1_SPEC,
7116            crate::common::RW,
7117        >::from_register(self, 0)
7118    }
7119
7120    #[doc = "Compare Window A Channel Select"]
7121    #[inline(always)]
7122    pub fn cmpcha25(
7123        self,
7124    ) -> crate::common::RegisterField<
7125        9,
7126        0x1,
7127        1,
7128        0,
7129        adcmpansr1::Cmpcha25,
7130        adcmpansr1::Cmpcha25,
7131        Adcmpansr1_SPEC,
7132        crate::common::RW,
7133    > {
7134        crate::common::RegisterField::<
7135            9,
7136            0x1,
7137            1,
7138            0,
7139            adcmpansr1::Cmpcha25,
7140            adcmpansr1::Cmpcha25,
7141            Adcmpansr1_SPEC,
7142            crate::common::RW,
7143        >::from_register(self, 0)
7144    }
7145
7146    #[doc = "Compare Window A Channel Select"]
7147    #[inline(always)]
7148    pub fn cmpcha26(
7149        self,
7150    ) -> crate::common::RegisterField<
7151        10,
7152        0x1,
7153        1,
7154        0,
7155        adcmpansr1::Cmpcha26,
7156        adcmpansr1::Cmpcha26,
7157        Adcmpansr1_SPEC,
7158        crate::common::RW,
7159    > {
7160        crate::common::RegisterField::<
7161            10,
7162            0x1,
7163            1,
7164            0,
7165            adcmpansr1::Cmpcha26,
7166            adcmpansr1::Cmpcha26,
7167            Adcmpansr1_SPEC,
7168            crate::common::RW,
7169        >::from_register(self, 0)
7170    }
7171
7172    #[doc = "Compare Window A Channel Select"]
7173    #[inline(always)]
7174    pub fn cmpcha27(
7175        self,
7176    ) -> crate::common::RegisterField<
7177        11,
7178        0x1,
7179        1,
7180        0,
7181        adcmpansr1::Cmpcha27,
7182        adcmpansr1::Cmpcha27,
7183        Adcmpansr1_SPEC,
7184        crate::common::RW,
7185    > {
7186        crate::common::RegisterField::<
7187            11,
7188            0x1,
7189            1,
7190            0,
7191            adcmpansr1::Cmpcha27,
7192            adcmpansr1::Cmpcha27,
7193            Adcmpansr1_SPEC,
7194            crate::common::RW,
7195        >::from_register(self, 0)
7196    }
7197
7198    #[doc = "Compare Window A Channel Select"]
7199    #[inline(always)]
7200    pub fn cmpcha28(
7201        self,
7202    ) -> crate::common::RegisterField<
7203        12,
7204        0x1,
7205        1,
7206        0,
7207        adcmpansr1::Cmpcha28,
7208        adcmpansr1::Cmpcha28,
7209        Adcmpansr1_SPEC,
7210        crate::common::RW,
7211    > {
7212        crate::common::RegisterField::<
7213            12,
7214            0x1,
7215            1,
7216            0,
7217            adcmpansr1::Cmpcha28,
7218            adcmpansr1::Cmpcha28,
7219            Adcmpansr1_SPEC,
7220            crate::common::RW,
7221        >::from_register(self, 0)
7222    }
7223
7224    #[doc = "Compare Window A Channel Select"]
7225    #[inline(always)]
7226    pub fn cmpcha29(
7227        self,
7228    ) -> crate::common::RegisterField<
7229        13,
7230        0x1,
7231        1,
7232        0,
7233        adcmpansr1::Cmpcha29,
7234        adcmpansr1::Cmpcha29,
7235        Adcmpansr1_SPEC,
7236        crate::common::RW,
7237    > {
7238        crate::common::RegisterField::<
7239            13,
7240            0x1,
7241            1,
7242            0,
7243            adcmpansr1::Cmpcha29,
7244            adcmpansr1::Cmpcha29,
7245            Adcmpansr1_SPEC,
7246            crate::common::RW,
7247        >::from_register(self, 0)
7248    }
7249
7250    #[doc = "Compare Window A Channel Select"]
7251    #[inline(always)]
7252    pub fn cmpcha30(
7253        self,
7254    ) -> crate::common::RegisterField<
7255        14,
7256        0x1,
7257        1,
7258        0,
7259        adcmpansr1::Cmpcha30,
7260        adcmpansr1::Cmpcha30,
7261        Adcmpansr1_SPEC,
7262        crate::common::RW,
7263    > {
7264        crate::common::RegisterField::<
7265            14,
7266            0x1,
7267            1,
7268            0,
7269            adcmpansr1::Cmpcha30,
7270            adcmpansr1::Cmpcha30,
7271            Adcmpansr1_SPEC,
7272            crate::common::RW,
7273        >::from_register(self, 0)
7274    }
7275
7276    #[doc = "Compare Window A Channel Select"]
7277    #[inline(always)]
7278    pub fn cmpcha31(
7279        self,
7280    ) -> crate::common::RegisterField<
7281        15,
7282        0x1,
7283        1,
7284        0,
7285        adcmpansr1::Cmpcha31,
7286        adcmpansr1::Cmpcha31,
7287        Adcmpansr1_SPEC,
7288        crate::common::RW,
7289    > {
7290        crate::common::RegisterField::<
7291            15,
7292            0x1,
7293            1,
7294            0,
7295            adcmpansr1::Cmpcha31,
7296            adcmpansr1::Cmpcha31,
7297            Adcmpansr1_SPEC,
7298            crate::common::RW,
7299        >::from_register(self, 0)
7300    }
7301}
7302impl ::core::default::Default for Adcmpansr1 {
7303    #[inline(always)]
7304    fn default() -> Adcmpansr1 {
7305        <crate::RegValueT<Adcmpansr1_SPEC> as RegisterValue<_>>::new(0)
7306    }
7307}
7308pub mod adcmpansr1 {
7309
7310    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7311    pub struct Cmpcha16_SPEC;
7312    pub type Cmpcha16 = crate::EnumBitfieldStruct<u8, Cmpcha16_SPEC>;
7313    impl Cmpcha16 {
7314        #[doc = "Disable compare function for associated input channel"]
7315        pub const _0: Self = Self::new(0);
7316
7317        #[doc = "Enable compare function for associated input channel"]
7318        pub const _1: Self = Self::new(1);
7319    }
7320    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7321    pub struct Cmpcha17_SPEC;
7322    pub type Cmpcha17 = crate::EnumBitfieldStruct<u8, Cmpcha17_SPEC>;
7323    impl Cmpcha17 {
7324        #[doc = "Disable compare function for associated input channel"]
7325        pub const _0: Self = Self::new(0);
7326
7327        #[doc = "Enable compare function for associated input channel"]
7328        pub const _1: Self = Self::new(1);
7329    }
7330    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7331    pub struct Cmpcha18_SPEC;
7332    pub type Cmpcha18 = crate::EnumBitfieldStruct<u8, Cmpcha18_SPEC>;
7333    impl Cmpcha18 {
7334        #[doc = "Disable compare function for associated input channel"]
7335        pub const _0: Self = Self::new(0);
7336
7337        #[doc = "Enable compare function for associated input channel"]
7338        pub const _1: Self = Self::new(1);
7339    }
7340    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7341    pub struct Cmpcha19_SPEC;
7342    pub type Cmpcha19 = crate::EnumBitfieldStruct<u8, Cmpcha19_SPEC>;
7343    impl Cmpcha19 {
7344        #[doc = "Disable compare function for associated input channel"]
7345        pub const _0: Self = Self::new(0);
7346
7347        #[doc = "Enable compare function for associated input channel"]
7348        pub const _1: Self = Self::new(1);
7349    }
7350    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7351    pub struct Cmpcha20_SPEC;
7352    pub type Cmpcha20 = crate::EnumBitfieldStruct<u8, Cmpcha20_SPEC>;
7353    impl Cmpcha20 {
7354        #[doc = "Disable compare function for associated input channel"]
7355        pub const _0: Self = Self::new(0);
7356
7357        #[doc = "Enable compare function for associated input channel"]
7358        pub const _1: Self = Self::new(1);
7359    }
7360    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7361    pub struct Cmpcha21_SPEC;
7362    pub type Cmpcha21 = crate::EnumBitfieldStruct<u8, Cmpcha21_SPEC>;
7363    impl Cmpcha21 {
7364        #[doc = "Disable compare function for associated input channel"]
7365        pub const _0: Self = Self::new(0);
7366
7367        #[doc = "Enable compare function for associated input channel"]
7368        pub const _1: Self = Self::new(1);
7369    }
7370    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7371    pub struct Cmpcha22_SPEC;
7372    pub type Cmpcha22 = crate::EnumBitfieldStruct<u8, Cmpcha22_SPEC>;
7373    impl Cmpcha22 {
7374        #[doc = "Disable compare function for associated input channel"]
7375        pub const _0: Self = Self::new(0);
7376
7377        #[doc = "Enable compare function for associated input channel"]
7378        pub const _1: Self = Self::new(1);
7379    }
7380    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7381    pub struct Cmpcha23_SPEC;
7382    pub type Cmpcha23 = crate::EnumBitfieldStruct<u8, Cmpcha23_SPEC>;
7383    impl Cmpcha23 {
7384        #[doc = "Disable compare function for associated input channel"]
7385        pub const _0: Self = Self::new(0);
7386
7387        #[doc = "Enable compare function for associated input channel"]
7388        pub const _1: Self = Self::new(1);
7389    }
7390    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7391    pub struct Cmpcha24_SPEC;
7392    pub type Cmpcha24 = crate::EnumBitfieldStruct<u8, Cmpcha24_SPEC>;
7393    impl Cmpcha24 {
7394        #[doc = "Disable compare function for associated input channel"]
7395        pub const _0: Self = Self::new(0);
7396
7397        #[doc = "Enable compare function for associated input channel"]
7398        pub const _1: Self = Self::new(1);
7399    }
7400    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7401    pub struct Cmpcha25_SPEC;
7402    pub type Cmpcha25 = crate::EnumBitfieldStruct<u8, Cmpcha25_SPEC>;
7403    impl Cmpcha25 {
7404        #[doc = "Disable compare function for associated input channel"]
7405        pub const _0: Self = Self::new(0);
7406
7407        #[doc = "Enable compare function for associated input channel"]
7408        pub const _1: Self = Self::new(1);
7409    }
7410    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7411    pub struct Cmpcha26_SPEC;
7412    pub type Cmpcha26 = crate::EnumBitfieldStruct<u8, Cmpcha26_SPEC>;
7413    impl Cmpcha26 {
7414        #[doc = "Disable compare function for associated input channel"]
7415        pub const _0: Self = Self::new(0);
7416
7417        #[doc = "Enable compare function for associated input channel"]
7418        pub const _1: Self = Self::new(1);
7419    }
7420    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7421    pub struct Cmpcha27_SPEC;
7422    pub type Cmpcha27 = crate::EnumBitfieldStruct<u8, Cmpcha27_SPEC>;
7423    impl Cmpcha27 {
7424        #[doc = "Disable compare function for associated input channel"]
7425        pub const _0: Self = Self::new(0);
7426
7427        #[doc = "Enable compare function for associated input channel"]
7428        pub const _1: Self = Self::new(1);
7429    }
7430    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7431    pub struct Cmpcha28_SPEC;
7432    pub type Cmpcha28 = crate::EnumBitfieldStruct<u8, Cmpcha28_SPEC>;
7433    impl Cmpcha28 {
7434        #[doc = "Disable compare function for associated input channel"]
7435        pub const _0: Self = Self::new(0);
7436
7437        #[doc = "Enable compare function for associated input channel"]
7438        pub const _1: Self = Self::new(1);
7439    }
7440    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7441    pub struct Cmpcha29_SPEC;
7442    pub type Cmpcha29 = crate::EnumBitfieldStruct<u8, Cmpcha29_SPEC>;
7443    impl Cmpcha29 {
7444        #[doc = "Disable compare function for associated input channel"]
7445        pub const _0: Self = Self::new(0);
7446
7447        #[doc = "Enable compare function for associated input channel"]
7448        pub const _1: Self = Self::new(1);
7449    }
7450    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7451    pub struct Cmpcha30_SPEC;
7452    pub type Cmpcha30 = crate::EnumBitfieldStruct<u8, Cmpcha30_SPEC>;
7453    impl Cmpcha30 {
7454        #[doc = "Disable compare function for associated input channel"]
7455        pub const _0: Self = Self::new(0);
7456
7457        #[doc = "Enable compare function for associated input channel"]
7458        pub const _1: Self = Self::new(1);
7459    }
7460    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7461    pub struct Cmpcha31_SPEC;
7462    pub type Cmpcha31 = crate::EnumBitfieldStruct<u8, Cmpcha31_SPEC>;
7463    impl Cmpcha31 {
7464        #[doc = "Disable compare function for associated input channel"]
7465        pub const _0: Self = Self::new(0);
7466
7467        #[doc = "Enable compare function for associated input channel"]
7468        pub const _1: Self = Self::new(1);
7469    }
7470}
7471#[doc(hidden)]
7472#[derive(Copy, Clone, Eq, PartialEq)]
7473pub struct Adcmplr0_SPEC;
7474impl crate::sealed::RegSpec for Adcmplr0_SPEC {
7475    type DataType = u16;
7476}
7477
7478#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
7479pub type Adcmplr0 = crate::RegValueT<Adcmplr0_SPEC>;
7480
7481impl Adcmplr0 {
7482    #[doc = "Compare Window A Comparison Condition Select"]
7483    #[inline(always)]
7484    pub fn cmplcha00(
7485        self,
7486    ) -> crate::common::RegisterField<
7487        0,
7488        0x1,
7489        1,
7490        0,
7491        adcmplr0::Cmplcha00,
7492        adcmplr0::Cmplcha00,
7493        Adcmplr0_SPEC,
7494        crate::common::RW,
7495    > {
7496        crate::common::RegisterField::<
7497            0,
7498            0x1,
7499            1,
7500            0,
7501            adcmplr0::Cmplcha00,
7502            adcmplr0::Cmplcha00,
7503            Adcmplr0_SPEC,
7504            crate::common::RW,
7505        >::from_register(self, 0)
7506    }
7507
7508    #[doc = "Compare Window A Comparison Condition Select"]
7509    #[inline(always)]
7510    pub fn cmplcha01(
7511        self,
7512    ) -> crate::common::RegisterField<
7513        1,
7514        0x1,
7515        1,
7516        0,
7517        adcmplr0::Cmplcha01,
7518        adcmplr0::Cmplcha01,
7519        Adcmplr0_SPEC,
7520        crate::common::RW,
7521    > {
7522        crate::common::RegisterField::<
7523            1,
7524            0x1,
7525            1,
7526            0,
7527            adcmplr0::Cmplcha01,
7528            adcmplr0::Cmplcha01,
7529            Adcmplr0_SPEC,
7530            crate::common::RW,
7531        >::from_register(self, 0)
7532    }
7533
7534    #[doc = "Compare Window A Comparison Condition Select"]
7535    #[inline(always)]
7536    pub fn cmplcha02(
7537        self,
7538    ) -> crate::common::RegisterField<
7539        2,
7540        0x1,
7541        1,
7542        0,
7543        adcmplr0::Cmplcha02,
7544        adcmplr0::Cmplcha02,
7545        Adcmplr0_SPEC,
7546        crate::common::RW,
7547    > {
7548        crate::common::RegisterField::<
7549            2,
7550            0x1,
7551            1,
7552            0,
7553            adcmplr0::Cmplcha02,
7554            adcmplr0::Cmplcha02,
7555            Adcmplr0_SPEC,
7556            crate::common::RW,
7557        >::from_register(self, 0)
7558    }
7559
7560    #[doc = "Compare Window A Comparison Condition Select"]
7561    #[inline(always)]
7562    pub fn cmplcha03(
7563        self,
7564    ) -> crate::common::RegisterField<
7565        3,
7566        0x1,
7567        1,
7568        0,
7569        adcmplr0::Cmplcha03,
7570        adcmplr0::Cmplcha03,
7571        Adcmplr0_SPEC,
7572        crate::common::RW,
7573    > {
7574        crate::common::RegisterField::<
7575            3,
7576            0x1,
7577            1,
7578            0,
7579            adcmplr0::Cmplcha03,
7580            adcmplr0::Cmplcha03,
7581            Adcmplr0_SPEC,
7582            crate::common::RW,
7583        >::from_register(self, 0)
7584    }
7585
7586    #[doc = "Compare Window A Comparison Condition Select"]
7587    #[inline(always)]
7588    pub fn cmplcha04(
7589        self,
7590    ) -> crate::common::RegisterField<
7591        4,
7592        0x1,
7593        1,
7594        0,
7595        adcmplr0::Cmplcha04,
7596        adcmplr0::Cmplcha04,
7597        Adcmplr0_SPEC,
7598        crate::common::RW,
7599    > {
7600        crate::common::RegisterField::<
7601            4,
7602            0x1,
7603            1,
7604            0,
7605            adcmplr0::Cmplcha04,
7606            adcmplr0::Cmplcha04,
7607            Adcmplr0_SPEC,
7608            crate::common::RW,
7609        >::from_register(self, 0)
7610    }
7611
7612    #[doc = "Compare Window A Comparison Condition Select"]
7613    #[inline(always)]
7614    pub fn cmplcha05(
7615        self,
7616    ) -> crate::common::RegisterField<
7617        5,
7618        0x1,
7619        1,
7620        0,
7621        adcmplr0::Cmplcha05,
7622        adcmplr0::Cmplcha05,
7623        Adcmplr0_SPEC,
7624        crate::common::RW,
7625    > {
7626        crate::common::RegisterField::<
7627            5,
7628            0x1,
7629            1,
7630            0,
7631            adcmplr0::Cmplcha05,
7632            adcmplr0::Cmplcha05,
7633            Adcmplr0_SPEC,
7634            crate::common::RW,
7635        >::from_register(self, 0)
7636    }
7637
7638    #[doc = "Compare Window A Comparison Condition Select"]
7639    #[inline(always)]
7640    pub fn cmplcha06(
7641        self,
7642    ) -> crate::common::RegisterField<
7643        6,
7644        0x1,
7645        1,
7646        0,
7647        adcmplr0::Cmplcha06,
7648        adcmplr0::Cmplcha06,
7649        Adcmplr0_SPEC,
7650        crate::common::RW,
7651    > {
7652        crate::common::RegisterField::<
7653            6,
7654            0x1,
7655            1,
7656            0,
7657            adcmplr0::Cmplcha06,
7658            adcmplr0::Cmplcha06,
7659            Adcmplr0_SPEC,
7660            crate::common::RW,
7661        >::from_register(self, 0)
7662    }
7663
7664    #[doc = "Compare Window A Comparison Condition Select"]
7665    #[inline(always)]
7666    pub fn cmplcha07(
7667        self,
7668    ) -> crate::common::RegisterField<
7669        7,
7670        0x1,
7671        1,
7672        0,
7673        adcmplr0::Cmplcha07,
7674        adcmplr0::Cmplcha07,
7675        Adcmplr0_SPEC,
7676        crate::common::RW,
7677    > {
7678        crate::common::RegisterField::<
7679            7,
7680            0x1,
7681            1,
7682            0,
7683            adcmplr0::Cmplcha07,
7684            adcmplr0::Cmplcha07,
7685            Adcmplr0_SPEC,
7686            crate::common::RW,
7687        >::from_register(self, 0)
7688    }
7689
7690    #[doc = "Compare Window A Comparison Condition Select"]
7691    #[inline(always)]
7692    pub fn cmplcha08(
7693        self,
7694    ) -> crate::common::RegisterField<
7695        8,
7696        0x1,
7697        1,
7698        0,
7699        adcmplr0::Cmplcha08,
7700        adcmplr0::Cmplcha08,
7701        Adcmplr0_SPEC,
7702        crate::common::RW,
7703    > {
7704        crate::common::RegisterField::<
7705            8,
7706            0x1,
7707            1,
7708            0,
7709            adcmplr0::Cmplcha08,
7710            adcmplr0::Cmplcha08,
7711            Adcmplr0_SPEC,
7712            crate::common::RW,
7713        >::from_register(self, 0)
7714    }
7715
7716    #[doc = "Compare Window A Comparison Condition Select"]
7717    #[inline(always)]
7718    pub fn cmplcha09(
7719        self,
7720    ) -> crate::common::RegisterField<
7721        9,
7722        0x1,
7723        1,
7724        0,
7725        adcmplr0::Cmplcha09,
7726        adcmplr0::Cmplcha09,
7727        Adcmplr0_SPEC,
7728        crate::common::RW,
7729    > {
7730        crate::common::RegisterField::<
7731            9,
7732            0x1,
7733            1,
7734            0,
7735            adcmplr0::Cmplcha09,
7736            adcmplr0::Cmplcha09,
7737            Adcmplr0_SPEC,
7738            crate::common::RW,
7739        >::from_register(self, 0)
7740    }
7741
7742    #[doc = "Compare Window A Comparison Condition Select"]
7743    #[inline(always)]
7744    pub fn cmplcha10(
7745        self,
7746    ) -> crate::common::RegisterField<
7747        10,
7748        0x1,
7749        1,
7750        0,
7751        adcmplr0::Cmplcha10,
7752        adcmplr0::Cmplcha10,
7753        Adcmplr0_SPEC,
7754        crate::common::RW,
7755    > {
7756        crate::common::RegisterField::<
7757            10,
7758            0x1,
7759            1,
7760            0,
7761            adcmplr0::Cmplcha10,
7762            adcmplr0::Cmplcha10,
7763            Adcmplr0_SPEC,
7764            crate::common::RW,
7765        >::from_register(self, 0)
7766    }
7767
7768    #[doc = "Compare Window A Comparison Condition Select"]
7769    #[inline(always)]
7770    pub fn cmplcha11(
7771        self,
7772    ) -> crate::common::RegisterField<
7773        11,
7774        0x1,
7775        1,
7776        0,
7777        adcmplr0::Cmplcha11,
7778        adcmplr0::Cmplcha11,
7779        Adcmplr0_SPEC,
7780        crate::common::RW,
7781    > {
7782        crate::common::RegisterField::<
7783            11,
7784            0x1,
7785            1,
7786            0,
7787            adcmplr0::Cmplcha11,
7788            adcmplr0::Cmplcha11,
7789            Adcmplr0_SPEC,
7790            crate::common::RW,
7791        >::from_register(self, 0)
7792    }
7793
7794    #[doc = "Compare Window A Comparison Condition Select"]
7795    #[inline(always)]
7796    pub fn cmplcha12(
7797        self,
7798    ) -> crate::common::RegisterField<
7799        12,
7800        0x1,
7801        1,
7802        0,
7803        adcmplr0::Cmplcha12,
7804        adcmplr0::Cmplcha12,
7805        Adcmplr0_SPEC,
7806        crate::common::RW,
7807    > {
7808        crate::common::RegisterField::<
7809            12,
7810            0x1,
7811            1,
7812            0,
7813            adcmplr0::Cmplcha12,
7814            adcmplr0::Cmplcha12,
7815            Adcmplr0_SPEC,
7816            crate::common::RW,
7817        >::from_register(self, 0)
7818    }
7819
7820    #[doc = "Compare Window A Comparison Condition Select"]
7821    #[inline(always)]
7822    pub fn cmplcha13(
7823        self,
7824    ) -> crate::common::RegisterField<
7825        13,
7826        0x1,
7827        1,
7828        0,
7829        adcmplr0::Cmplcha13,
7830        adcmplr0::Cmplcha13,
7831        Adcmplr0_SPEC,
7832        crate::common::RW,
7833    > {
7834        crate::common::RegisterField::<
7835            13,
7836            0x1,
7837            1,
7838            0,
7839            adcmplr0::Cmplcha13,
7840            adcmplr0::Cmplcha13,
7841            Adcmplr0_SPEC,
7842            crate::common::RW,
7843        >::from_register(self, 0)
7844    }
7845
7846    #[doc = "Compare Window A Comparison Condition Select"]
7847    #[inline(always)]
7848    pub fn cmplcha14(
7849        self,
7850    ) -> crate::common::RegisterField<
7851        14,
7852        0x1,
7853        1,
7854        0,
7855        adcmplr0::Cmplcha14,
7856        adcmplr0::Cmplcha14,
7857        Adcmplr0_SPEC,
7858        crate::common::RW,
7859    > {
7860        crate::common::RegisterField::<
7861            14,
7862            0x1,
7863            1,
7864            0,
7865            adcmplr0::Cmplcha14,
7866            adcmplr0::Cmplcha14,
7867            Adcmplr0_SPEC,
7868            crate::common::RW,
7869        >::from_register(self, 0)
7870    }
7871
7872    #[doc = "Compare Window A Comparison Condition Select"]
7873    #[inline(always)]
7874    pub fn cmplcha15(
7875        self,
7876    ) -> crate::common::RegisterField<
7877        15,
7878        0x1,
7879        1,
7880        0,
7881        adcmplr0::Cmplcha15,
7882        adcmplr0::Cmplcha15,
7883        Adcmplr0_SPEC,
7884        crate::common::RW,
7885    > {
7886        crate::common::RegisterField::<
7887            15,
7888            0x1,
7889            1,
7890            0,
7891            adcmplr0::Cmplcha15,
7892            adcmplr0::Cmplcha15,
7893            Adcmplr0_SPEC,
7894            crate::common::RW,
7895        >::from_register(self, 0)
7896    }
7897}
7898impl ::core::default::Default for Adcmplr0 {
7899    #[inline(always)]
7900    fn default() -> Adcmplr0 {
7901        <crate::RegValueT<Adcmplr0_SPEC> as RegisterValue<_>>::new(0)
7902    }
7903}
7904pub mod adcmplr0 {
7905
7906    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7907    pub struct Cmplcha00_SPEC;
7908    pub type Cmplcha00 = crate::EnumBitfieldStruct<u8, Cmplcha00_SPEC>;
7909    impl Cmplcha00 {
7910        #[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"]
7911        pub const _0: Self = Self::new(0);
7912
7913        #[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"]
7914        pub const _1: Self = Self::new(1);
7915    }
7916    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7917    pub struct Cmplcha01_SPEC;
7918    pub type Cmplcha01 = crate::EnumBitfieldStruct<u8, Cmplcha01_SPEC>;
7919    impl Cmplcha01 {
7920        #[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"]
7921        pub const _0: Self = Self::new(0);
7922
7923        #[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"]
7924        pub const _1: Self = Self::new(1);
7925    }
7926    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7927    pub struct Cmplcha02_SPEC;
7928    pub type Cmplcha02 = crate::EnumBitfieldStruct<u8, Cmplcha02_SPEC>;
7929    impl Cmplcha02 {
7930        #[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"]
7931        pub const _0: Self = Self::new(0);
7932
7933        #[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"]
7934        pub const _1: Self = Self::new(1);
7935    }
7936    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7937    pub struct Cmplcha03_SPEC;
7938    pub type Cmplcha03 = crate::EnumBitfieldStruct<u8, Cmplcha03_SPEC>;
7939    impl Cmplcha03 {
7940        #[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"]
7941        pub const _0: Self = Self::new(0);
7942
7943        #[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"]
7944        pub const _1: Self = Self::new(1);
7945    }
7946    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7947    pub struct Cmplcha04_SPEC;
7948    pub type Cmplcha04 = crate::EnumBitfieldStruct<u8, Cmplcha04_SPEC>;
7949    impl Cmplcha04 {
7950        #[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"]
7951        pub const _0: Self = Self::new(0);
7952
7953        #[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"]
7954        pub const _1: Self = Self::new(1);
7955    }
7956    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7957    pub struct Cmplcha05_SPEC;
7958    pub type Cmplcha05 = crate::EnumBitfieldStruct<u8, Cmplcha05_SPEC>;
7959    impl Cmplcha05 {
7960        #[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"]
7961        pub const _0: Self = Self::new(0);
7962
7963        #[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"]
7964        pub const _1: Self = Self::new(1);
7965    }
7966    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7967    pub struct Cmplcha06_SPEC;
7968    pub type Cmplcha06 = crate::EnumBitfieldStruct<u8, Cmplcha06_SPEC>;
7969    impl Cmplcha06 {
7970        #[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"]
7971        pub const _0: Self = Self::new(0);
7972
7973        #[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"]
7974        pub const _1: Self = Self::new(1);
7975    }
7976    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7977    pub struct Cmplcha07_SPEC;
7978    pub type Cmplcha07 = crate::EnumBitfieldStruct<u8, Cmplcha07_SPEC>;
7979    impl Cmplcha07 {
7980        #[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"]
7981        pub const _0: Self = Self::new(0);
7982
7983        #[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"]
7984        pub const _1: Self = Self::new(1);
7985    }
7986    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7987    pub struct Cmplcha08_SPEC;
7988    pub type Cmplcha08 = crate::EnumBitfieldStruct<u8, Cmplcha08_SPEC>;
7989    impl Cmplcha08 {
7990        #[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"]
7991        pub const _0: Self = Self::new(0);
7992
7993        #[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"]
7994        pub const _1: Self = Self::new(1);
7995    }
7996    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7997    pub struct Cmplcha09_SPEC;
7998    pub type Cmplcha09 = crate::EnumBitfieldStruct<u8, Cmplcha09_SPEC>;
7999    impl Cmplcha09 {
8000        #[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"]
8001        pub const _0: Self = Self::new(0);
8002
8003        #[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"]
8004        pub const _1: Self = Self::new(1);
8005    }
8006    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8007    pub struct Cmplcha10_SPEC;
8008    pub type Cmplcha10 = crate::EnumBitfieldStruct<u8, Cmplcha10_SPEC>;
8009    impl Cmplcha10 {
8010        #[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"]
8011        pub const _0: Self = Self::new(0);
8012
8013        #[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"]
8014        pub const _1: Self = Self::new(1);
8015    }
8016    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8017    pub struct Cmplcha11_SPEC;
8018    pub type Cmplcha11 = crate::EnumBitfieldStruct<u8, Cmplcha11_SPEC>;
8019    impl Cmplcha11 {
8020        #[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"]
8021        pub const _0: Self = Self::new(0);
8022
8023        #[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"]
8024        pub const _1: Self = Self::new(1);
8025    }
8026    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8027    pub struct Cmplcha12_SPEC;
8028    pub type Cmplcha12 = crate::EnumBitfieldStruct<u8, Cmplcha12_SPEC>;
8029    impl Cmplcha12 {
8030        #[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"]
8031        pub const _0: Self = Self::new(0);
8032
8033        #[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"]
8034        pub const _1: Self = Self::new(1);
8035    }
8036    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8037    pub struct Cmplcha13_SPEC;
8038    pub type Cmplcha13 = crate::EnumBitfieldStruct<u8, Cmplcha13_SPEC>;
8039    impl Cmplcha13 {
8040        #[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"]
8041        pub const _0: Self = Self::new(0);
8042
8043        #[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"]
8044        pub const _1: Self = Self::new(1);
8045    }
8046    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8047    pub struct Cmplcha14_SPEC;
8048    pub type Cmplcha14 = crate::EnumBitfieldStruct<u8, Cmplcha14_SPEC>;
8049    impl Cmplcha14 {
8050        #[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"]
8051        pub const _0: Self = Self::new(0);
8052
8053        #[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"]
8054        pub const _1: Self = Self::new(1);
8055    }
8056    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8057    pub struct Cmplcha15_SPEC;
8058    pub type Cmplcha15 = crate::EnumBitfieldStruct<u8, Cmplcha15_SPEC>;
8059    impl Cmplcha15 {
8060        #[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"]
8061        pub const _0: Self = Self::new(0);
8062
8063        #[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"]
8064        pub const _1: Self = Self::new(1);
8065    }
8066}
8067#[doc(hidden)]
8068#[derive(Copy, Clone, Eq, PartialEq)]
8069pub struct Adcmplr1_SPEC;
8070impl crate::sealed::RegSpec for Adcmplr1_SPEC {
8071    type DataType = u16;
8072}
8073
8074#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
8075pub type Adcmplr1 = crate::RegValueT<Adcmplr1_SPEC>;
8076
8077impl Adcmplr1 {
8078    #[doc = "Compare Window A Comparison Condition Select"]
8079    #[inline(always)]
8080    pub fn cmplcha16(
8081        self,
8082    ) -> crate::common::RegisterField<
8083        0,
8084        0x1,
8085        1,
8086        0,
8087        adcmplr1::Cmplcha16,
8088        adcmplr1::Cmplcha16,
8089        Adcmplr1_SPEC,
8090        crate::common::RW,
8091    > {
8092        crate::common::RegisterField::<
8093            0,
8094            0x1,
8095            1,
8096            0,
8097            adcmplr1::Cmplcha16,
8098            adcmplr1::Cmplcha16,
8099            Adcmplr1_SPEC,
8100            crate::common::RW,
8101        >::from_register(self, 0)
8102    }
8103
8104    #[doc = "Compare Window A Comparison Condition Select"]
8105    #[inline(always)]
8106    pub fn cmplcha17(
8107        self,
8108    ) -> crate::common::RegisterField<
8109        1,
8110        0x1,
8111        1,
8112        0,
8113        adcmplr1::Cmplcha17,
8114        adcmplr1::Cmplcha17,
8115        Adcmplr1_SPEC,
8116        crate::common::RW,
8117    > {
8118        crate::common::RegisterField::<
8119            1,
8120            0x1,
8121            1,
8122            0,
8123            adcmplr1::Cmplcha17,
8124            adcmplr1::Cmplcha17,
8125            Adcmplr1_SPEC,
8126            crate::common::RW,
8127        >::from_register(self, 0)
8128    }
8129
8130    #[doc = "Compare Window A Comparison Condition Select"]
8131    #[inline(always)]
8132    pub fn cmplcha18(
8133        self,
8134    ) -> crate::common::RegisterField<
8135        2,
8136        0x1,
8137        1,
8138        0,
8139        adcmplr1::Cmplcha18,
8140        adcmplr1::Cmplcha18,
8141        Adcmplr1_SPEC,
8142        crate::common::RW,
8143    > {
8144        crate::common::RegisterField::<
8145            2,
8146            0x1,
8147            1,
8148            0,
8149            adcmplr1::Cmplcha18,
8150            adcmplr1::Cmplcha18,
8151            Adcmplr1_SPEC,
8152            crate::common::RW,
8153        >::from_register(self, 0)
8154    }
8155
8156    #[doc = "Compare Window A Comparison Condition Select"]
8157    #[inline(always)]
8158    pub fn cmplcha19(
8159        self,
8160    ) -> crate::common::RegisterField<
8161        3,
8162        0x1,
8163        1,
8164        0,
8165        adcmplr1::Cmplcha19,
8166        adcmplr1::Cmplcha19,
8167        Adcmplr1_SPEC,
8168        crate::common::RW,
8169    > {
8170        crate::common::RegisterField::<
8171            3,
8172            0x1,
8173            1,
8174            0,
8175            adcmplr1::Cmplcha19,
8176            adcmplr1::Cmplcha19,
8177            Adcmplr1_SPEC,
8178            crate::common::RW,
8179        >::from_register(self, 0)
8180    }
8181
8182    #[doc = "Compare Window A Comparison Condition Select"]
8183    #[inline(always)]
8184    pub fn cmplcha20(
8185        self,
8186    ) -> crate::common::RegisterField<
8187        4,
8188        0x1,
8189        1,
8190        0,
8191        adcmplr1::Cmplcha20,
8192        adcmplr1::Cmplcha20,
8193        Adcmplr1_SPEC,
8194        crate::common::RW,
8195    > {
8196        crate::common::RegisterField::<
8197            4,
8198            0x1,
8199            1,
8200            0,
8201            adcmplr1::Cmplcha20,
8202            adcmplr1::Cmplcha20,
8203            Adcmplr1_SPEC,
8204            crate::common::RW,
8205        >::from_register(self, 0)
8206    }
8207
8208    #[doc = "Compare Window A Comparison Condition Select"]
8209    #[inline(always)]
8210    pub fn cmplcha21(
8211        self,
8212    ) -> crate::common::RegisterField<
8213        5,
8214        0x1,
8215        1,
8216        0,
8217        adcmplr1::Cmplcha21,
8218        adcmplr1::Cmplcha21,
8219        Adcmplr1_SPEC,
8220        crate::common::RW,
8221    > {
8222        crate::common::RegisterField::<
8223            5,
8224            0x1,
8225            1,
8226            0,
8227            adcmplr1::Cmplcha21,
8228            adcmplr1::Cmplcha21,
8229            Adcmplr1_SPEC,
8230            crate::common::RW,
8231        >::from_register(self, 0)
8232    }
8233
8234    #[doc = "Compare Window A Comparison Condition Select"]
8235    #[inline(always)]
8236    pub fn cmplcha22(
8237        self,
8238    ) -> crate::common::RegisterField<
8239        6,
8240        0x1,
8241        1,
8242        0,
8243        adcmplr1::Cmplcha22,
8244        adcmplr1::Cmplcha22,
8245        Adcmplr1_SPEC,
8246        crate::common::RW,
8247    > {
8248        crate::common::RegisterField::<
8249            6,
8250            0x1,
8251            1,
8252            0,
8253            adcmplr1::Cmplcha22,
8254            adcmplr1::Cmplcha22,
8255            Adcmplr1_SPEC,
8256            crate::common::RW,
8257        >::from_register(self, 0)
8258    }
8259
8260    #[doc = "Compare Window A Comparison Condition Select"]
8261    #[inline(always)]
8262    pub fn cmplcha23(
8263        self,
8264    ) -> crate::common::RegisterField<
8265        7,
8266        0x1,
8267        1,
8268        0,
8269        adcmplr1::Cmplcha23,
8270        adcmplr1::Cmplcha23,
8271        Adcmplr1_SPEC,
8272        crate::common::RW,
8273    > {
8274        crate::common::RegisterField::<
8275            7,
8276            0x1,
8277            1,
8278            0,
8279            adcmplr1::Cmplcha23,
8280            adcmplr1::Cmplcha23,
8281            Adcmplr1_SPEC,
8282            crate::common::RW,
8283        >::from_register(self, 0)
8284    }
8285
8286    #[doc = "Compare Window A Comparison Condition Select"]
8287    #[inline(always)]
8288    pub fn cmplcha24(
8289        self,
8290    ) -> crate::common::RegisterField<
8291        8,
8292        0x1,
8293        1,
8294        0,
8295        adcmplr1::Cmplcha24,
8296        adcmplr1::Cmplcha24,
8297        Adcmplr1_SPEC,
8298        crate::common::RW,
8299    > {
8300        crate::common::RegisterField::<
8301            8,
8302            0x1,
8303            1,
8304            0,
8305            adcmplr1::Cmplcha24,
8306            adcmplr1::Cmplcha24,
8307            Adcmplr1_SPEC,
8308            crate::common::RW,
8309        >::from_register(self, 0)
8310    }
8311
8312    #[doc = "Compare Window A Comparison Condition Select"]
8313    #[inline(always)]
8314    pub fn cmplcha25(
8315        self,
8316    ) -> crate::common::RegisterField<
8317        9,
8318        0x1,
8319        1,
8320        0,
8321        adcmplr1::Cmplcha25,
8322        adcmplr1::Cmplcha25,
8323        Adcmplr1_SPEC,
8324        crate::common::RW,
8325    > {
8326        crate::common::RegisterField::<
8327            9,
8328            0x1,
8329            1,
8330            0,
8331            adcmplr1::Cmplcha25,
8332            adcmplr1::Cmplcha25,
8333            Adcmplr1_SPEC,
8334            crate::common::RW,
8335        >::from_register(self, 0)
8336    }
8337
8338    #[doc = "Compare Window A Comparison Condition Select"]
8339    #[inline(always)]
8340    pub fn cmplcha26(
8341        self,
8342    ) -> crate::common::RegisterField<
8343        10,
8344        0x1,
8345        1,
8346        0,
8347        adcmplr1::Cmplcha26,
8348        adcmplr1::Cmplcha26,
8349        Adcmplr1_SPEC,
8350        crate::common::RW,
8351    > {
8352        crate::common::RegisterField::<
8353            10,
8354            0x1,
8355            1,
8356            0,
8357            adcmplr1::Cmplcha26,
8358            adcmplr1::Cmplcha26,
8359            Adcmplr1_SPEC,
8360            crate::common::RW,
8361        >::from_register(self, 0)
8362    }
8363
8364    #[doc = "Compare Window A Comparison Condition Select"]
8365    #[inline(always)]
8366    pub fn cmplcha27(
8367        self,
8368    ) -> crate::common::RegisterField<
8369        11,
8370        0x1,
8371        1,
8372        0,
8373        adcmplr1::Cmplcha27,
8374        adcmplr1::Cmplcha27,
8375        Adcmplr1_SPEC,
8376        crate::common::RW,
8377    > {
8378        crate::common::RegisterField::<
8379            11,
8380            0x1,
8381            1,
8382            0,
8383            adcmplr1::Cmplcha27,
8384            adcmplr1::Cmplcha27,
8385            Adcmplr1_SPEC,
8386            crate::common::RW,
8387        >::from_register(self, 0)
8388    }
8389
8390    #[doc = "Compare Window A Comparison Condition Select"]
8391    #[inline(always)]
8392    pub fn cmplcha28(
8393        self,
8394    ) -> crate::common::RegisterField<
8395        12,
8396        0x1,
8397        1,
8398        0,
8399        adcmplr1::Cmplcha28,
8400        adcmplr1::Cmplcha28,
8401        Adcmplr1_SPEC,
8402        crate::common::RW,
8403    > {
8404        crate::common::RegisterField::<
8405            12,
8406            0x1,
8407            1,
8408            0,
8409            adcmplr1::Cmplcha28,
8410            adcmplr1::Cmplcha28,
8411            Adcmplr1_SPEC,
8412            crate::common::RW,
8413        >::from_register(self, 0)
8414    }
8415
8416    #[doc = "Compare Window A Comparison Condition Select"]
8417    #[inline(always)]
8418    pub fn cmplcha29(
8419        self,
8420    ) -> crate::common::RegisterField<
8421        13,
8422        0x1,
8423        1,
8424        0,
8425        adcmplr1::Cmplcha29,
8426        adcmplr1::Cmplcha29,
8427        Adcmplr1_SPEC,
8428        crate::common::RW,
8429    > {
8430        crate::common::RegisterField::<
8431            13,
8432            0x1,
8433            1,
8434            0,
8435            adcmplr1::Cmplcha29,
8436            adcmplr1::Cmplcha29,
8437            Adcmplr1_SPEC,
8438            crate::common::RW,
8439        >::from_register(self, 0)
8440    }
8441
8442    #[doc = "Compare Window A Comparison Condition Select"]
8443    #[inline(always)]
8444    pub fn cmplcha30(
8445        self,
8446    ) -> crate::common::RegisterField<
8447        14,
8448        0x1,
8449        1,
8450        0,
8451        adcmplr1::Cmplcha30,
8452        adcmplr1::Cmplcha30,
8453        Adcmplr1_SPEC,
8454        crate::common::RW,
8455    > {
8456        crate::common::RegisterField::<
8457            14,
8458            0x1,
8459            1,
8460            0,
8461            adcmplr1::Cmplcha30,
8462            adcmplr1::Cmplcha30,
8463            Adcmplr1_SPEC,
8464            crate::common::RW,
8465        >::from_register(self, 0)
8466    }
8467
8468    #[doc = "Compare Window A Comparison Condition Select"]
8469    #[inline(always)]
8470    pub fn cmplcha31(
8471        self,
8472    ) -> crate::common::RegisterField<
8473        15,
8474        0x1,
8475        1,
8476        0,
8477        adcmplr1::Cmplcha31,
8478        adcmplr1::Cmplcha31,
8479        Adcmplr1_SPEC,
8480        crate::common::RW,
8481    > {
8482        crate::common::RegisterField::<
8483            15,
8484            0x1,
8485            1,
8486            0,
8487            adcmplr1::Cmplcha31,
8488            adcmplr1::Cmplcha31,
8489            Adcmplr1_SPEC,
8490            crate::common::RW,
8491        >::from_register(self, 0)
8492    }
8493}
8494impl ::core::default::Default for Adcmplr1 {
8495    #[inline(always)]
8496    fn default() -> Adcmplr1 {
8497        <crate::RegValueT<Adcmplr1_SPEC> as RegisterValue<_>>::new(0)
8498    }
8499}
8500pub mod adcmplr1 {
8501
8502    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8503    pub struct Cmplcha16_SPEC;
8504    pub type Cmplcha16 = crate::EnumBitfieldStruct<u8, Cmplcha16_SPEC>;
8505    impl Cmplcha16 {
8506        #[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"]
8507        pub const _0: Self = Self::new(0);
8508
8509        #[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"]
8510        pub const _1: Self = Self::new(1);
8511    }
8512    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8513    pub struct Cmplcha17_SPEC;
8514    pub type Cmplcha17 = crate::EnumBitfieldStruct<u8, Cmplcha17_SPEC>;
8515    impl Cmplcha17 {
8516        #[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"]
8517        pub const _0: Self = Self::new(0);
8518
8519        #[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"]
8520        pub const _1: Self = Self::new(1);
8521    }
8522    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8523    pub struct Cmplcha18_SPEC;
8524    pub type Cmplcha18 = crate::EnumBitfieldStruct<u8, Cmplcha18_SPEC>;
8525    impl Cmplcha18 {
8526        #[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"]
8527        pub const _0: Self = Self::new(0);
8528
8529        #[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"]
8530        pub const _1: Self = Self::new(1);
8531    }
8532    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8533    pub struct Cmplcha19_SPEC;
8534    pub type Cmplcha19 = crate::EnumBitfieldStruct<u8, Cmplcha19_SPEC>;
8535    impl Cmplcha19 {
8536        #[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"]
8537        pub const _0: Self = Self::new(0);
8538
8539        #[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"]
8540        pub const _1: Self = Self::new(1);
8541    }
8542    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8543    pub struct Cmplcha20_SPEC;
8544    pub type Cmplcha20 = crate::EnumBitfieldStruct<u8, Cmplcha20_SPEC>;
8545    impl Cmplcha20 {
8546        #[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"]
8547        pub const _0: Self = Self::new(0);
8548
8549        #[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"]
8550        pub const _1: Self = Self::new(1);
8551    }
8552    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8553    pub struct Cmplcha21_SPEC;
8554    pub type Cmplcha21 = crate::EnumBitfieldStruct<u8, Cmplcha21_SPEC>;
8555    impl Cmplcha21 {
8556        #[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"]
8557        pub const _0: Self = Self::new(0);
8558
8559        #[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"]
8560        pub const _1: Self = Self::new(1);
8561    }
8562    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8563    pub struct Cmplcha22_SPEC;
8564    pub type Cmplcha22 = crate::EnumBitfieldStruct<u8, Cmplcha22_SPEC>;
8565    impl Cmplcha22 {
8566        #[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"]
8567        pub const _0: Self = Self::new(0);
8568
8569        #[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"]
8570        pub const _1: Self = Self::new(1);
8571    }
8572    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8573    pub struct Cmplcha23_SPEC;
8574    pub type Cmplcha23 = crate::EnumBitfieldStruct<u8, Cmplcha23_SPEC>;
8575    impl Cmplcha23 {
8576        #[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"]
8577        pub const _0: Self = Self::new(0);
8578
8579        #[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"]
8580        pub const _1: Self = Self::new(1);
8581    }
8582    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8583    pub struct Cmplcha24_SPEC;
8584    pub type Cmplcha24 = crate::EnumBitfieldStruct<u8, Cmplcha24_SPEC>;
8585    impl Cmplcha24 {
8586        #[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"]
8587        pub const _0: Self = Self::new(0);
8588
8589        #[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"]
8590        pub const _1: Self = Self::new(1);
8591    }
8592    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8593    pub struct Cmplcha25_SPEC;
8594    pub type Cmplcha25 = crate::EnumBitfieldStruct<u8, Cmplcha25_SPEC>;
8595    impl Cmplcha25 {
8596        #[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"]
8597        pub const _0: Self = Self::new(0);
8598
8599        #[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"]
8600        pub const _1: Self = Self::new(1);
8601    }
8602    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8603    pub struct Cmplcha26_SPEC;
8604    pub type Cmplcha26 = crate::EnumBitfieldStruct<u8, Cmplcha26_SPEC>;
8605    impl Cmplcha26 {
8606        #[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"]
8607        pub const _0: Self = Self::new(0);
8608
8609        #[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"]
8610        pub const _1: Self = Self::new(1);
8611    }
8612    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8613    pub struct Cmplcha27_SPEC;
8614    pub type Cmplcha27 = crate::EnumBitfieldStruct<u8, Cmplcha27_SPEC>;
8615    impl Cmplcha27 {
8616        #[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"]
8617        pub const _0: Self = Self::new(0);
8618
8619        #[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"]
8620        pub const _1: Self = Self::new(1);
8621    }
8622    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8623    pub struct Cmplcha28_SPEC;
8624    pub type Cmplcha28 = crate::EnumBitfieldStruct<u8, Cmplcha28_SPEC>;
8625    impl Cmplcha28 {
8626        #[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"]
8627        pub const _0: Self = Self::new(0);
8628
8629        #[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"]
8630        pub const _1: Self = Self::new(1);
8631    }
8632    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8633    pub struct Cmplcha29_SPEC;
8634    pub type Cmplcha29 = crate::EnumBitfieldStruct<u8, Cmplcha29_SPEC>;
8635    impl Cmplcha29 {
8636        #[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"]
8637        pub const _0: Self = Self::new(0);
8638
8639        #[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"]
8640        pub const _1: Self = Self::new(1);
8641    }
8642    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8643    pub struct Cmplcha30_SPEC;
8644    pub type Cmplcha30 = crate::EnumBitfieldStruct<u8, Cmplcha30_SPEC>;
8645    impl Cmplcha30 {
8646        #[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"]
8647        pub const _0: Self = Self::new(0);
8648
8649        #[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"]
8650        pub const _1: Self = Self::new(1);
8651    }
8652    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8653    pub struct Cmplcha31_SPEC;
8654    pub type Cmplcha31 = crate::EnumBitfieldStruct<u8, Cmplcha31_SPEC>;
8655    impl Cmplcha31 {
8656        #[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"]
8657        pub const _0: Self = Self::new(0);
8658
8659        #[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"]
8660        pub const _1: Self = Self::new(1);
8661    }
8662}
8663#[doc(hidden)]
8664#[derive(Copy, Clone, Eq, PartialEq)]
8665pub struct Adcmpdr_SPEC;
8666impl crate::sealed::RegSpec for Adcmpdr_SPEC {
8667    type DataType = u16;
8668}
8669
8670#[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register %s"]
8671pub type Adcmpdr = crate::RegValueT<Adcmpdr_SPEC>;
8672
8673impl NoBitfieldReg<Adcmpdr_SPEC> for Adcmpdr {}
8674impl ::core::default::Default for Adcmpdr {
8675    #[inline(always)]
8676    fn default() -> Adcmpdr {
8677        <crate::RegValueT<Adcmpdr_SPEC> as RegisterValue<_>>::new(0)
8678    }
8679}
8680
8681#[doc(hidden)]
8682#[derive(Copy, Clone, Eq, PartialEq)]
8683pub struct Adcmpsr0_SPEC;
8684impl crate::sealed::RegSpec for Adcmpsr0_SPEC {
8685    type DataType = u16;
8686}
8687
8688#[doc = "A/D Compare Function Window A Channel Status Register 0"]
8689pub type Adcmpsr0 = crate::RegValueT<Adcmpsr0_SPEC>;
8690
8691impl Adcmpsr0 {
8692    #[doc = "Compare Window A Flag"]
8693    #[inline(always)]
8694    pub fn cmpstcha00(
8695        self,
8696    ) -> crate::common::RegisterField<
8697        0,
8698        0x1,
8699        1,
8700        0,
8701        adcmpsr0::Cmpstcha00,
8702        adcmpsr0::Cmpstcha00,
8703        Adcmpsr0_SPEC,
8704        crate::common::RW,
8705    > {
8706        crate::common::RegisterField::<
8707            0,
8708            0x1,
8709            1,
8710            0,
8711            adcmpsr0::Cmpstcha00,
8712            adcmpsr0::Cmpstcha00,
8713            Adcmpsr0_SPEC,
8714            crate::common::RW,
8715        >::from_register(self, 0)
8716    }
8717
8718    #[doc = "Compare Window A Flag"]
8719    #[inline(always)]
8720    pub fn cmpstcha01(
8721        self,
8722    ) -> crate::common::RegisterField<
8723        1,
8724        0x1,
8725        1,
8726        0,
8727        adcmpsr0::Cmpstcha01,
8728        adcmpsr0::Cmpstcha01,
8729        Adcmpsr0_SPEC,
8730        crate::common::RW,
8731    > {
8732        crate::common::RegisterField::<
8733            1,
8734            0x1,
8735            1,
8736            0,
8737            adcmpsr0::Cmpstcha01,
8738            adcmpsr0::Cmpstcha01,
8739            Adcmpsr0_SPEC,
8740            crate::common::RW,
8741        >::from_register(self, 0)
8742    }
8743
8744    #[doc = "Compare Window A Flag"]
8745    #[inline(always)]
8746    pub fn cmpstcha02(
8747        self,
8748    ) -> crate::common::RegisterField<
8749        2,
8750        0x1,
8751        1,
8752        0,
8753        adcmpsr0::Cmpstcha02,
8754        adcmpsr0::Cmpstcha02,
8755        Adcmpsr0_SPEC,
8756        crate::common::RW,
8757    > {
8758        crate::common::RegisterField::<
8759            2,
8760            0x1,
8761            1,
8762            0,
8763            adcmpsr0::Cmpstcha02,
8764            adcmpsr0::Cmpstcha02,
8765            Adcmpsr0_SPEC,
8766            crate::common::RW,
8767        >::from_register(self, 0)
8768    }
8769
8770    #[doc = "Compare Window A Flag"]
8771    #[inline(always)]
8772    pub fn cmpstcha03(
8773        self,
8774    ) -> crate::common::RegisterField<
8775        3,
8776        0x1,
8777        1,
8778        0,
8779        adcmpsr0::Cmpstcha03,
8780        adcmpsr0::Cmpstcha03,
8781        Adcmpsr0_SPEC,
8782        crate::common::RW,
8783    > {
8784        crate::common::RegisterField::<
8785            3,
8786            0x1,
8787            1,
8788            0,
8789            adcmpsr0::Cmpstcha03,
8790            adcmpsr0::Cmpstcha03,
8791            Adcmpsr0_SPEC,
8792            crate::common::RW,
8793        >::from_register(self, 0)
8794    }
8795
8796    #[doc = "Compare Window A Flag"]
8797    #[inline(always)]
8798    pub fn cmpstcha04(
8799        self,
8800    ) -> crate::common::RegisterField<
8801        4,
8802        0x1,
8803        1,
8804        0,
8805        adcmpsr0::Cmpstcha04,
8806        adcmpsr0::Cmpstcha04,
8807        Adcmpsr0_SPEC,
8808        crate::common::RW,
8809    > {
8810        crate::common::RegisterField::<
8811            4,
8812            0x1,
8813            1,
8814            0,
8815            adcmpsr0::Cmpstcha04,
8816            adcmpsr0::Cmpstcha04,
8817            Adcmpsr0_SPEC,
8818            crate::common::RW,
8819        >::from_register(self, 0)
8820    }
8821
8822    #[doc = "Compare Window A Flag"]
8823    #[inline(always)]
8824    pub fn cmpstcha05(
8825        self,
8826    ) -> crate::common::RegisterField<
8827        5,
8828        0x1,
8829        1,
8830        0,
8831        adcmpsr0::Cmpstcha05,
8832        adcmpsr0::Cmpstcha05,
8833        Adcmpsr0_SPEC,
8834        crate::common::RW,
8835    > {
8836        crate::common::RegisterField::<
8837            5,
8838            0x1,
8839            1,
8840            0,
8841            adcmpsr0::Cmpstcha05,
8842            adcmpsr0::Cmpstcha05,
8843            Adcmpsr0_SPEC,
8844            crate::common::RW,
8845        >::from_register(self, 0)
8846    }
8847
8848    #[doc = "Compare Window A Flag"]
8849    #[inline(always)]
8850    pub fn cmpstcha06(
8851        self,
8852    ) -> crate::common::RegisterField<
8853        6,
8854        0x1,
8855        1,
8856        0,
8857        adcmpsr0::Cmpstcha06,
8858        adcmpsr0::Cmpstcha06,
8859        Adcmpsr0_SPEC,
8860        crate::common::RW,
8861    > {
8862        crate::common::RegisterField::<
8863            6,
8864            0x1,
8865            1,
8866            0,
8867            adcmpsr0::Cmpstcha06,
8868            adcmpsr0::Cmpstcha06,
8869            Adcmpsr0_SPEC,
8870            crate::common::RW,
8871        >::from_register(self, 0)
8872    }
8873
8874    #[doc = "Compare Window A Flag"]
8875    #[inline(always)]
8876    pub fn cmpstcha07(
8877        self,
8878    ) -> crate::common::RegisterField<
8879        7,
8880        0x1,
8881        1,
8882        0,
8883        adcmpsr0::Cmpstcha07,
8884        adcmpsr0::Cmpstcha07,
8885        Adcmpsr0_SPEC,
8886        crate::common::RW,
8887    > {
8888        crate::common::RegisterField::<
8889            7,
8890            0x1,
8891            1,
8892            0,
8893            adcmpsr0::Cmpstcha07,
8894            adcmpsr0::Cmpstcha07,
8895            Adcmpsr0_SPEC,
8896            crate::common::RW,
8897        >::from_register(self, 0)
8898    }
8899
8900    #[doc = "Compare Window A Flag"]
8901    #[inline(always)]
8902    pub fn cmpstcha08(
8903        self,
8904    ) -> crate::common::RegisterField<
8905        8,
8906        0x1,
8907        1,
8908        0,
8909        adcmpsr0::Cmpstcha08,
8910        adcmpsr0::Cmpstcha08,
8911        Adcmpsr0_SPEC,
8912        crate::common::RW,
8913    > {
8914        crate::common::RegisterField::<
8915            8,
8916            0x1,
8917            1,
8918            0,
8919            adcmpsr0::Cmpstcha08,
8920            adcmpsr0::Cmpstcha08,
8921            Adcmpsr0_SPEC,
8922            crate::common::RW,
8923        >::from_register(self, 0)
8924    }
8925
8926    #[doc = "Compare Window A Flag"]
8927    #[inline(always)]
8928    pub fn cmpstcha09(
8929        self,
8930    ) -> crate::common::RegisterField<
8931        9,
8932        0x1,
8933        1,
8934        0,
8935        adcmpsr0::Cmpstcha09,
8936        adcmpsr0::Cmpstcha09,
8937        Adcmpsr0_SPEC,
8938        crate::common::RW,
8939    > {
8940        crate::common::RegisterField::<
8941            9,
8942            0x1,
8943            1,
8944            0,
8945            adcmpsr0::Cmpstcha09,
8946            adcmpsr0::Cmpstcha09,
8947            Adcmpsr0_SPEC,
8948            crate::common::RW,
8949        >::from_register(self, 0)
8950    }
8951
8952    #[doc = "Compare Window A Flag"]
8953    #[inline(always)]
8954    pub fn cmpstcha10(
8955        self,
8956    ) -> crate::common::RegisterField<
8957        10,
8958        0x1,
8959        1,
8960        0,
8961        adcmpsr0::Cmpstcha10,
8962        adcmpsr0::Cmpstcha10,
8963        Adcmpsr0_SPEC,
8964        crate::common::RW,
8965    > {
8966        crate::common::RegisterField::<
8967            10,
8968            0x1,
8969            1,
8970            0,
8971            adcmpsr0::Cmpstcha10,
8972            adcmpsr0::Cmpstcha10,
8973            Adcmpsr0_SPEC,
8974            crate::common::RW,
8975        >::from_register(self, 0)
8976    }
8977
8978    #[doc = "Compare Window A Flag"]
8979    #[inline(always)]
8980    pub fn cmpstcha11(
8981        self,
8982    ) -> crate::common::RegisterField<
8983        11,
8984        0x1,
8985        1,
8986        0,
8987        adcmpsr0::Cmpstcha11,
8988        adcmpsr0::Cmpstcha11,
8989        Adcmpsr0_SPEC,
8990        crate::common::RW,
8991    > {
8992        crate::common::RegisterField::<
8993            11,
8994            0x1,
8995            1,
8996            0,
8997            adcmpsr0::Cmpstcha11,
8998            adcmpsr0::Cmpstcha11,
8999            Adcmpsr0_SPEC,
9000            crate::common::RW,
9001        >::from_register(self, 0)
9002    }
9003
9004    #[doc = "Compare Window A Flag"]
9005    #[inline(always)]
9006    pub fn cmpstcha12(
9007        self,
9008    ) -> crate::common::RegisterField<
9009        12,
9010        0x1,
9011        1,
9012        0,
9013        adcmpsr0::Cmpstcha12,
9014        adcmpsr0::Cmpstcha12,
9015        Adcmpsr0_SPEC,
9016        crate::common::RW,
9017    > {
9018        crate::common::RegisterField::<
9019            12,
9020            0x1,
9021            1,
9022            0,
9023            adcmpsr0::Cmpstcha12,
9024            adcmpsr0::Cmpstcha12,
9025            Adcmpsr0_SPEC,
9026            crate::common::RW,
9027        >::from_register(self, 0)
9028    }
9029
9030    #[doc = "Compare Window A Flag"]
9031    #[inline(always)]
9032    pub fn cmpstcha13(
9033        self,
9034    ) -> crate::common::RegisterField<
9035        13,
9036        0x1,
9037        1,
9038        0,
9039        adcmpsr0::Cmpstcha13,
9040        adcmpsr0::Cmpstcha13,
9041        Adcmpsr0_SPEC,
9042        crate::common::RW,
9043    > {
9044        crate::common::RegisterField::<
9045            13,
9046            0x1,
9047            1,
9048            0,
9049            adcmpsr0::Cmpstcha13,
9050            adcmpsr0::Cmpstcha13,
9051            Adcmpsr0_SPEC,
9052            crate::common::RW,
9053        >::from_register(self, 0)
9054    }
9055
9056    #[doc = "Compare Window A Flag"]
9057    #[inline(always)]
9058    pub fn cmpstcha14(
9059        self,
9060    ) -> crate::common::RegisterField<
9061        14,
9062        0x1,
9063        1,
9064        0,
9065        adcmpsr0::Cmpstcha14,
9066        adcmpsr0::Cmpstcha14,
9067        Adcmpsr0_SPEC,
9068        crate::common::RW,
9069    > {
9070        crate::common::RegisterField::<
9071            14,
9072            0x1,
9073            1,
9074            0,
9075            adcmpsr0::Cmpstcha14,
9076            adcmpsr0::Cmpstcha14,
9077            Adcmpsr0_SPEC,
9078            crate::common::RW,
9079        >::from_register(self, 0)
9080    }
9081
9082    #[doc = "Compare Window A Flag"]
9083    #[inline(always)]
9084    pub fn cmpstcha15(
9085        self,
9086    ) -> crate::common::RegisterField<
9087        15,
9088        0x1,
9089        1,
9090        0,
9091        adcmpsr0::Cmpstcha15,
9092        adcmpsr0::Cmpstcha15,
9093        Adcmpsr0_SPEC,
9094        crate::common::RW,
9095    > {
9096        crate::common::RegisterField::<
9097            15,
9098            0x1,
9099            1,
9100            0,
9101            adcmpsr0::Cmpstcha15,
9102            adcmpsr0::Cmpstcha15,
9103            Adcmpsr0_SPEC,
9104            crate::common::RW,
9105        >::from_register(self, 0)
9106    }
9107}
9108impl ::core::default::Default for Adcmpsr0 {
9109    #[inline(always)]
9110    fn default() -> Adcmpsr0 {
9111        <crate::RegValueT<Adcmpsr0_SPEC> as RegisterValue<_>>::new(0)
9112    }
9113}
9114pub mod adcmpsr0 {
9115
9116    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9117    pub struct Cmpstcha00_SPEC;
9118    pub type Cmpstcha00 = crate::EnumBitfieldStruct<u8, Cmpstcha00_SPEC>;
9119    impl Cmpstcha00 {
9120        #[doc = "Comparison conditions are not met."]
9121        pub const _0: Self = Self::new(0);
9122
9123        #[doc = "Comparison conditions are met."]
9124        pub const _1: Self = Self::new(1);
9125    }
9126    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9127    pub struct Cmpstcha01_SPEC;
9128    pub type Cmpstcha01 = crate::EnumBitfieldStruct<u8, Cmpstcha01_SPEC>;
9129    impl Cmpstcha01 {
9130        #[doc = "Comparison conditions are not met."]
9131        pub const _0: Self = Self::new(0);
9132
9133        #[doc = "Comparison conditions are met."]
9134        pub const _1: Self = Self::new(1);
9135    }
9136    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9137    pub struct Cmpstcha02_SPEC;
9138    pub type Cmpstcha02 = crate::EnumBitfieldStruct<u8, Cmpstcha02_SPEC>;
9139    impl Cmpstcha02 {
9140        #[doc = "Comparison conditions are not met."]
9141        pub const _0: Self = Self::new(0);
9142
9143        #[doc = "Comparison conditions are met."]
9144        pub const _1: Self = Self::new(1);
9145    }
9146    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9147    pub struct Cmpstcha03_SPEC;
9148    pub type Cmpstcha03 = crate::EnumBitfieldStruct<u8, Cmpstcha03_SPEC>;
9149    impl Cmpstcha03 {
9150        #[doc = "Comparison conditions are not met."]
9151        pub const _0: Self = Self::new(0);
9152
9153        #[doc = "Comparison conditions are met."]
9154        pub const _1: Self = Self::new(1);
9155    }
9156    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9157    pub struct Cmpstcha04_SPEC;
9158    pub type Cmpstcha04 = crate::EnumBitfieldStruct<u8, Cmpstcha04_SPEC>;
9159    impl Cmpstcha04 {
9160        #[doc = "Comparison conditions are not met."]
9161        pub const _0: Self = Self::new(0);
9162
9163        #[doc = "Comparison conditions are met."]
9164        pub const _1: Self = Self::new(1);
9165    }
9166    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9167    pub struct Cmpstcha05_SPEC;
9168    pub type Cmpstcha05 = crate::EnumBitfieldStruct<u8, Cmpstcha05_SPEC>;
9169    impl Cmpstcha05 {
9170        #[doc = "Comparison conditions are not met."]
9171        pub const _0: Self = Self::new(0);
9172
9173        #[doc = "Comparison conditions are met."]
9174        pub const _1: Self = Self::new(1);
9175    }
9176    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9177    pub struct Cmpstcha06_SPEC;
9178    pub type Cmpstcha06 = crate::EnumBitfieldStruct<u8, Cmpstcha06_SPEC>;
9179    impl Cmpstcha06 {
9180        #[doc = "Comparison conditions are not met."]
9181        pub const _0: Self = Self::new(0);
9182
9183        #[doc = "Comparison conditions are met."]
9184        pub const _1: Self = Self::new(1);
9185    }
9186    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9187    pub struct Cmpstcha07_SPEC;
9188    pub type Cmpstcha07 = crate::EnumBitfieldStruct<u8, Cmpstcha07_SPEC>;
9189    impl Cmpstcha07 {
9190        #[doc = "Comparison conditions are not met."]
9191        pub const _0: Self = Self::new(0);
9192
9193        #[doc = "Comparison conditions are met."]
9194        pub const _1: Self = Self::new(1);
9195    }
9196    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9197    pub struct Cmpstcha08_SPEC;
9198    pub type Cmpstcha08 = crate::EnumBitfieldStruct<u8, Cmpstcha08_SPEC>;
9199    impl Cmpstcha08 {
9200        #[doc = "Comparison conditions are not met."]
9201        pub const _0: Self = Self::new(0);
9202
9203        #[doc = "Comparison conditions are met."]
9204        pub const _1: Self = Self::new(1);
9205    }
9206    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9207    pub struct Cmpstcha09_SPEC;
9208    pub type Cmpstcha09 = crate::EnumBitfieldStruct<u8, Cmpstcha09_SPEC>;
9209    impl Cmpstcha09 {
9210        #[doc = "Comparison conditions are not met."]
9211        pub const _0: Self = Self::new(0);
9212
9213        #[doc = "Comparison conditions are met."]
9214        pub const _1: Self = Self::new(1);
9215    }
9216    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9217    pub struct Cmpstcha10_SPEC;
9218    pub type Cmpstcha10 = crate::EnumBitfieldStruct<u8, Cmpstcha10_SPEC>;
9219    impl Cmpstcha10 {
9220        #[doc = "Comparison conditions are not met."]
9221        pub const _0: Self = Self::new(0);
9222
9223        #[doc = "Comparison conditions are met."]
9224        pub const _1: Self = Self::new(1);
9225    }
9226    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9227    pub struct Cmpstcha11_SPEC;
9228    pub type Cmpstcha11 = crate::EnumBitfieldStruct<u8, Cmpstcha11_SPEC>;
9229    impl Cmpstcha11 {
9230        #[doc = "Comparison conditions are not met."]
9231        pub const _0: Self = Self::new(0);
9232
9233        #[doc = "Comparison conditions are met."]
9234        pub const _1: Self = Self::new(1);
9235    }
9236    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9237    pub struct Cmpstcha12_SPEC;
9238    pub type Cmpstcha12 = crate::EnumBitfieldStruct<u8, Cmpstcha12_SPEC>;
9239    impl Cmpstcha12 {
9240        #[doc = "Comparison conditions are not met."]
9241        pub const _0: Self = Self::new(0);
9242
9243        #[doc = "Comparison conditions are met."]
9244        pub const _1: Self = Self::new(1);
9245    }
9246    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9247    pub struct Cmpstcha13_SPEC;
9248    pub type Cmpstcha13 = crate::EnumBitfieldStruct<u8, Cmpstcha13_SPEC>;
9249    impl Cmpstcha13 {
9250        #[doc = "Comparison conditions are not met."]
9251        pub const _0: Self = Self::new(0);
9252
9253        #[doc = "Comparison conditions are met."]
9254        pub const _1: Self = Self::new(1);
9255    }
9256    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9257    pub struct Cmpstcha14_SPEC;
9258    pub type Cmpstcha14 = crate::EnumBitfieldStruct<u8, Cmpstcha14_SPEC>;
9259    impl Cmpstcha14 {
9260        #[doc = "Comparison conditions are not met."]
9261        pub const _0: Self = Self::new(0);
9262
9263        #[doc = "Comparison conditions are met."]
9264        pub const _1: Self = Self::new(1);
9265    }
9266    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9267    pub struct Cmpstcha15_SPEC;
9268    pub type Cmpstcha15 = crate::EnumBitfieldStruct<u8, Cmpstcha15_SPEC>;
9269    impl Cmpstcha15 {
9270        #[doc = "Comparison conditions are not met."]
9271        pub const _0: Self = Self::new(0);
9272
9273        #[doc = "Comparison conditions are met."]
9274        pub const _1: Self = Self::new(1);
9275    }
9276}
9277#[doc(hidden)]
9278#[derive(Copy, Clone, Eq, PartialEq)]
9279pub struct Adcmpsr1_SPEC;
9280impl crate::sealed::RegSpec for Adcmpsr1_SPEC {
9281    type DataType = u16;
9282}
9283
9284#[doc = "A/D Compare Function Window A Channel Status Register1"]
9285pub type Adcmpsr1 = crate::RegValueT<Adcmpsr1_SPEC>;
9286
9287impl Adcmpsr1 {
9288    #[doc = "Compare Window A Flag"]
9289    #[inline(always)]
9290    pub fn cmpstcha16(
9291        self,
9292    ) -> crate::common::RegisterField<
9293        0,
9294        0x1,
9295        1,
9296        0,
9297        adcmpsr1::Cmpstcha16,
9298        adcmpsr1::Cmpstcha16,
9299        Adcmpsr1_SPEC,
9300        crate::common::RW,
9301    > {
9302        crate::common::RegisterField::<
9303            0,
9304            0x1,
9305            1,
9306            0,
9307            adcmpsr1::Cmpstcha16,
9308            adcmpsr1::Cmpstcha16,
9309            Adcmpsr1_SPEC,
9310            crate::common::RW,
9311        >::from_register(self, 0)
9312    }
9313
9314    #[doc = "Compare Window A Flag"]
9315    #[inline(always)]
9316    pub fn cmpstcha17(
9317        self,
9318    ) -> crate::common::RegisterField<
9319        1,
9320        0x1,
9321        1,
9322        0,
9323        adcmpsr1::Cmpstcha17,
9324        adcmpsr1::Cmpstcha17,
9325        Adcmpsr1_SPEC,
9326        crate::common::RW,
9327    > {
9328        crate::common::RegisterField::<
9329            1,
9330            0x1,
9331            1,
9332            0,
9333            adcmpsr1::Cmpstcha17,
9334            adcmpsr1::Cmpstcha17,
9335            Adcmpsr1_SPEC,
9336            crate::common::RW,
9337        >::from_register(self, 0)
9338    }
9339
9340    #[doc = "Compare Window A Flag"]
9341    #[inline(always)]
9342    pub fn cmpstcha18(
9343        self,
9344    ) -> crate::common::RegisterField<
9345        2,
9346        0x1,
9347        1,
9348        0,
9349        adcmpsr1::Cmpstcha18,
9350        adcmpsr1::Cmpstcha18,
9351        Adcmpsr1_SPEC,
9352        crate::common::RW,
9353    > {
9354        crate::common::RegisterField::<
9355            2,
9356            0x1,
9357            1,
9358            0,
9359            adcmpsr1::Cmpstcha18,
9360            adcmpsr1::Cmpstcha18,
9361            Adcmpsr1_SPEC,
9362            crate::common::RW,
9363        >::from_register(self, 0)
9364    }
9365
9366    #[doc = "Compare Window A Flag"]
9367    #[inline(always)]
9368    pub fn cmpstcha19(
9369        self,
9370    ) -> crate::common::RegisterField<
9371        3,
9372        0x1,
9373        1,
9374        0,
9375        adcmpsr1::Cmpstcha19,
9376        adcmpsr1::Cmpstcha19,
9377        Adcmpsr1_SPEC,
9378        crate::common::RW,
9379    > {
9380        crate::common::RegisterField::<
9381            3,
9382            0x1,
9383            1,
9384            0,
9385            adcmpsr1::Cmpstcha19,
9386            adcmpsr1::Cmpstcha19,
9387            Adcmpsr1_SPEC,
9388            crate::common::RW,
9389        >::from_register(self, 0)
9390    }
9391
9392    #[doc = "Compare Window A Flag"]
9393    #[inline(always)]
9394    pub fn cmpstcha20(
9395        self,
9396    ) -> crate::common::RegisterField<
9397        4,
9398        0x1,
9399        1,
9400        0,
9401        adcmpsr1::Cmpstcha20,
9402        adcmpsr1::Cmpstcha20,
9403        Adcmpsr1_SPEC,
9404        crate::common::RW,
9405    > {
9406        crate::common::RegisterField::<
9407            4,
9408            0x1,
9409            1,
9410            0,
9411            adcmpsr1::Cmpstcha20,
9412            adcmpsr1::Cmpstcha20,
9413            Adcmpsr1_SPEC,
9414            crate::common::RW,
9415        >::from_register(self, 0)
9416    }
9417
9418    #[doc = "Compare Window A Flag"]
9419    #[inline(always)]
9420    pub fn cmpstcha21(
9421        self,
9422    ) -> crate::common::RegisterField<
9423        5,
9424        0x1,
9425        1,
9426        0,
9427        adcmpsr1::Cmpstcha21,
9428        adcmpsr1::Cmpstcha21,
9429        Adcmpsr1_SPEC,
9430        crate::common::RW,
9431    > {
9432        crate::common::RegisterField::<
9433            5,
9434            0x1,
9435            1,
9436            0,
9437            adcmpsr1::Cmpstcha21,
9438            adcmpsr1::Cmpstcha21,
9439            Adcmpsr1_SPEC,
9440            crate::common::RW,
9441        >::from_register(self, 0)
9442    }
9443
9444    #[doc = "Compare Window A Flag"]
9445    #[inline(always)]
9446    pub fn cmpstcha22(
9447        self,
9448    ) -> crate::common::RegisterField<
9449        6,
9450        0x1,
9451        1,
9452        0,
9453        adcmpsr1::Cmpstcha22,
9454        adcmpsr1::Cmpstcha22,
9455        Adcmpsr1_SPEC,
9456        crate::common::RW,
9457    > {
9458        crate::common::RegisterField::<
9459            6,
9460            0x1,
9461            1,
9462            0,
9463            adcmpsr1::Cmpstcha22,
9464            adcmpsr1::Cmpstcha22,
9465            Adcmpsr1_SPEC,
9466            crate::common::RW,
9467        >::from_register(self, 0)
9468    }
9469
9470    #[doc = "Compare Window A Flag"]
9471    #[inline(always)]
9472    pub fn cmpstcha23(
9473        self,
9474    ) -> crate::common::RegisterField<
9475        7,
9476        0x1,
9477        1,
9478        0,
9479        adcmpsr1::Cmpstcha23,
9480        adcmpsr1::Cmpstcha23,
9481        Adcmpsr1_SPEC,
9482        crate::common::RW,
9483    > {
9484        crate::common::RegisterField::<
9485            7,
9486            0x1,
9487            1,
9488            0,
9489            adcmpsr1::Cmpstcha23,
9490            adcmpsr1::Cmpstcha23,
9491            Adcmpsr1_SPEC,
9492            crate::common::RW,
9493        >::from_register(self, 0)
9494    }
9495
9496    #[doc = "Compare Window A Flag"]
9497    #[inline(always)]
9498    pub fn cmpstcha24(
9499        self,
9500    ) -> crate::common::RegisterField<
9501        8,
9502        0x1,
9503        1,
9504        0,
9505        adcmpsr1::Cmpstcha24,
9506        adcmpsr1::Cmpstcha24,
9507        Adcmpsr1_SPEC,
9508        crate::common::RW,
9509    > {
9510        crate::common::RegisterField::<
9511            8,
9512            0x1,
9513            1,
9514            0,
9515            adcmpsr1::Cmpstcha24,
9516            adcmpsr1::Cmpstcha24,
9517            Adcmpsr1_SPEC,
9518            crate::common::RW,
9519        >::from_register(self, 0)
9520    }
9521
9522    #[doc = "Compare Window A Flag"]
9523    #[inline(always)]
9524    pub fn cmpstcha25(
9525        self,
9526    ) -> crate::common::RegisterField<
9527        9,
9528        0x1,
9529        1,
9530        0,
9531        adcmpsr1::Cmpstcha25,
9532        adcmpsr1::Cmpstcha25,
9533        Adcmpsr1_SPEC,
9534        crate::common::RW,
9535    > {
9536        crate::common::RegisterField::<
9537            9,
9538            0x1,
9539            1,
9540            0,
9541            adcmpsr1::Cmpstcha25,
9542            adcmpsr1::Cmpstcha25,
9543            Adcmpsr1_SPEC,
9544            crate::common::RW,
9545        >::from_register(self, 0)
9546    }
9547
9548    #[doc = "Compare Window A Flag"]
9549    #[inline(always)]
9550    pub fn cmpstcha26(
9551        self,
9552    ) -> crate::common::RegisterField<
9553        10,
9554        0x1,
9555        1,
9556        0,
9557        adcmpsr1::Cmpstcha26,
9558        adcmpsr1::Cmpstcha26,
9559        Adcmpsr1_SPEC,
9560        crate::common::RW,
9561    > {
9562        crate::common::RegisterField::<
9563            10,
9564            0x1,
9565            1,
9566            0,
9567            adcmpsr1::Cmpstcha26,
9568            adcmpsr1::Cmpstcha26,
9569            Adcmpsr1_SPEC,
9570            crate::common::RW,
9571        >::from_register(self, 0)
9572    }
9573
9574    #[doc = "Compare Window A Flag"]
9575    #[inline(always)]
9576    pub fn cmpstcha27(
9577        self,
9578    ) -> crate::common::RegisterField<
9579        11,
9580        0x1,
9581        1,
9582        0,
9583        adcmpsr1::Cmpstcha27,
9584        adcmpsr1::Cmpstcha27,
9585        Adcmpsr1_SPEC,
9586        crate::common::RW,
9587    > {
9588        crate::common::RegisterField::<
9589            11,
9590            0x1,
9591            1,
9592            0,
9593            adcmpsr1::Cmpstcha27,
9594            adcmpsr1::Cmpstcha27,
9595            Adcmpsr1_SPEC,
9596            crate::common::RW,
9597        >::from_register(self, 0)
9598    }
9599
9600    #[doc = "Compare Window A Flag"]
9601    #[inline(always)]
9602    pub fn cmpstcha28(
9603        self,
9604    ) -> crate::common::RegisterField<
9605        12,
9606        0x1,
9607        1,
9608        0,
9609        adcmpsr1::Cmpstcha28,
9610        adcmpsr1::Cmpstcha28,
9611        Adcmpsr1_SPEC,
9612        crate::common::RW,
9613    > {
9614        crate::common::RegisterField::<
9615            12,
9616            0x1,
9617            1,
9618            0,
9619            adcmpsr1::Cmpstcha28,
9620            adcmpsr1::Cmpstcha28,
9621            Adcmpsr1_SPEC,
9622            crate::common::RW,
9623        >::from_register(self, 0)
9624    }
9625
9626    #[doc = "Compare Window A Flag"]
9627    #[inline(always)]
9628    pub fn cmpstcha29(
9629        self,
9630    ) -> crate::common::RegisterField<
9631        13,
9632        0x1,
9633        1,
9634        0,
9635        adcmpsr1::Cmpstcha29,
9636        adcmpsr1::Cmpstcha29,
9637        Adcmpsr1_SPEC,
9638        crate::common::RW,
9639    > {
9640        crate::common::RegisterField::<
9641            13,
9642            0x1,
9643            1,
9644            0,
9645            adcmpsr1::Cmpstcha29,
9646            adcmpsr1::Cmpstcha29,
9647            Adcmpsr1_SPEC,
9648            crate::common::RW,
9649        >::from_register(self, 0)
9650    }
9651
9652    #[doc = "Compare Window A Flag"]
9653    #[inline(always)]
9654    pub fn cmpstcha30(
9655        self,
9656    ) -> crate::common::RegisterField<
9657        14,
9658        0x1,
9659        1,
9660        0,
9661        adcmpsr1::Cmpstcha30,
9662        adcmpsr1::Cmpstcha30,
9663        Adcmpsr1_SPEC,
9664        crate::common::RW,
9665    > {
9666        crate::common::RegisterField::<
9667            14,
9668            0x1,
9669            1,
9670            0,
9671            adcmpsr1::Cmpstcha30,
9672            adcmpsr1::Cmpstcha30,
9673            Adcmpsr1_SPEC,
9674            crate::common::RW,
9675        >::from_register(self, 0)
9676    }
9677
9678    #[doc = "Compare Window A Flag"]
9679    #[inline(always)]
9680    pub fn cmpstcha31(
9681        self,
9682    ) -> crate::common::RegisterField<
9683        15,
9684        0x1,
9685        1,
9686        0,
9687        adcmpsr1::Cmpstcha31,
9688        adcmpsr1::Cmpstcha31,
9689        Adcmpsr1_SPEC,
9690        crate::common::RW,
9691    > {
9692        crate::common::RegisterField::<
9693            15,
9694            0x1,
9695            1,
9696            0,
9697            adcmpsr1::Cmpstcha31,
9698            adcmpsr1::Cmpstcha31,
9699            Adcmpsr1_SPEC,
9700            crate::common::RW,
9701        >::from_register(self, 0)
9702    }
9703}
9704impl ::core::default::Default for Adcmpsr1 {
9705    #[inline(always)]
9706    fn default() -> Adcmpsr1 {
9707        <crate::RegValueT<Adcmpsr1_SPEC> as RegisterValue<_>>::new(0)
9708    }
9709}
9710pub mod adcmpsr1 {
9711
9712    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9713    pub struct Cmpstcha16_SPEC;
9714    pub type Cmpstcha16 = crate::EnumBitfieldStruct<u8, Cmpstcha16_SPEC>;
9715    impl Cmpstcha16 {
9716        #[doc = "Comparison conditions are not met."]
9717        pub const _0: Self = Self::new(0);
9718
9719        #[doc = "Comparison conditions are met."]
9720        pub const _1: Self = Self::new(1);
9721    }
9722    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9723    pub struct Cmpstcha17_SPEC;
9724    pub type Cmpstcha17 = crate::EnumBitfieldStruct<u8, Cmpstcha17_SPEC>;
9725    impl Cmpstcha17 {
9726        #[doc = "Comparison conditions are not met."]
9727        pub const _0: Self = Self::new(0);
9728
9729        #[doc = "Comparison conditions are met."]
9730        pub const _1: Self = Self::new(1);
9731    }
9732    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9733    pub struct Cmpstcha18_SPEC;
9734    pub type Cmpstcha18 = crate::EnumBitfieldStruct<u8, Cmpstcha18_SPEC>;
9735    impl Cmpstcha18 {
9736        #[doc = "Comparison conditions are not met."]
9737        pub const _0: Self = Self::new(0);
9738
9739        #[doc = "Comparison conditions are met."]
9740        pub const _1: Self = Self::new(1);
9741    }
9742    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9743    pub struct Cmpstcha19_SPEC;
9744    pub type Cmpstcha19 = crate::EnumBitfieldStruct<u8, Cmpstcha19_SPEC>;
9745    impl Cmpstcha19 {
9746        #[doc = "Comparison conditions are not met."]
9747        pub const _0: Self = Self::new(0);
9748
9749        #[doc = "Comparison conditions are met."]
9750        pub const _1: Self = Self::new(1);
9751    }
9752    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9753    pub struct Cmpstcha20_SPEC;
9754    pub type Cmpstcha20 = crate::EnumBitfieldStruct<u8, Cmpstcha20_SPEC>;
9755    impl Cmpstcha20 {
9756        #[doc = "Comparison conditions are not met."]
9757        pub const _0: Self = Self::new(0);
9758
9759        #[doc = "Comparison conditions are met."]
9760        pub const _1: Self = Self::new(1);
9761    }
9762    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9763    pub struct Cmpstcha21_SPEC;
9764    pub type Cmpstcha21 = crate::EnumBitfieldStruct<u8, Cmpstcha21_SPEC>;
9765    impl Cmpstcha21 {
9766        #[doc = "Comparison conditions are not met."]
9767        pub const _0: Self = Self::new(0);
9768
9769        #[doc = "Comparison conditions are met."]
9770        pub const _1: Self = Self::new(1);
9771    }
9772    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9773    pub struct Cmpstcha22_SPEC;
9774    pub type Cmpstcha22 = crate::EnumBitfieldStruct<u8, Cmpstcha22_SPEC>;
9775    impl Cmpstcha22 {
9776        #[doc = "Comparison conditions are not met."]
9777        pub const _0: Self = Self::new(0);
9778
9779        #[doc = "Comparison conditions are met."]
9780        pub const _1: Self = Self::new(1);
9781    }
9782    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9783    pub struct Cmpstcha23_SPEC;
9784    pub type Cmpstcha23 = crate::EnumBitfieldStruct<u8, Cmpstcha23_SPEC>;
9785    impl Cmpstcha23 {
9786        #[doc = "Comparison conditions are not met."]
9787        pub const _0: Self = Self::new(0);
9788
9789        #[doc = "Comparison conditions are met."]
9790        pub const _1: Self = Self::new(1);
9791    }
9792    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9793    pub struct Cmpstcha24_SPEC;
9794    pub type Cmpstcha24 = crate::EnumBitfieldStruct<u8, Cmpstcha24_SPEC>;
9795    impl Cmpstcha24 {
9796        #[doc = "Comparison conditions are not met."]
9797        pub const _0: Self = Self::new(0);
9798
9799        #[doc = "Comparison conditions are met."]
9800        pub const _1: Self = Self::new(1);
9801    }
9802    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9803    pub struct Cmpstcha25_SPEC;
9804    pub type Cmpstcha25 = crate::EnumBitfieldStruct<u8, Cmpstcha25_SPEC>;
9805    impl Cmpstcha25 {
9806        #[doc = "Comparison conditions are not met."]
9807        pub const _0: Self = Self::new(0);
9808
9809        #[doc = "Comparison conditions are met."]
9810        pub const _1: Self = Self::new(1);
9811    }
9812    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9813    pub struct Cmpstcha26_SPEC;
9814    pub type Cmpstcha26 = crate::EnumBitfieldStruct<u8, Cmpstcha26_SPEC>;
9815    impl Cmpstcha26 {
9816        #[doc = "Comparison conditions are not met."]
9817        pub const _0: Self = Self::new(0);
9818
9819        #[doc = "Comparison conditions are met."]
9820        pub const _1: Self = Self::new(1);
9821    }
9822    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9823    pub struct Cmpstcha27_SPEC;
9824    pub type Cmpstcha27 = crate::EnumBitfieldStruct<u8, Cmpstcha27_SPEC>;
9825    impl Cmpstcha27 {
9826        #[doc = "Comparison conditions are not met."]
9827        pub const _0: Self = Self::new(0);
9828
9829        #[doc = "Comparison conditions are met."]
9830        pub const _1: Self = Self::new(1);
9831    }
9832    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9833    pub struct Cmpstcha28_SPEC;
9834    pub type Cmpstcha28 = crate::EnumBitfieldStruct<u8, Cmpstcha28_SPEC>;
9835    impl Cmpstcha28 {
9836        #[doc = "Comparison conditions are not met."]
9837        pub const _0: Self = Self::new(0);
9838
9839        #[doc = "Comparison conditions are met."]
9840        pub const _1: Self = Self::new(1);
9841    }
9842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9843    pub struct Cmpstcha29_SPEC;
9844    pub type Cmpstcha29 = crate::EnumBitfieldStruct<u8, Cmpstcha29_SPEC>;
9845    impl Cmpstcha29 {
9846        #[doc = "Comparison conditions are not met."]
9847        pub const _0: Self = Self::new(0);
9848
9849        #[doc = "Comparison conditions are met."]
9850        pub const _1: Self = Self::new(1);
9851    }
9852    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9853    pub struct Cmpstcha30_SPEC;
9854    pub type Cmpstcha30 = crate::EnumBitfieldStruct<u8, Cmpstcha30_SPEC>;
9855    impl Cmpstcha30 {
9856        #[doc = "Comparison conditions are not met."]
9857        pub const _0: Self = Self::new(0);
9858
9859        #[doc = "Comparison conditions are met."]
9860        pub const _1: Self = Self::new(1);
9861    }
9862    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9863    pub struct Cmpstcha31_SPEC;
9864    pub type Cmpstcha31 = crate::EnumBitfieldStruct<u8, Cmpstcha31_SPEC>;
9865    impl Cmpstcha31 {
9866        #[doc = "Comparison conditions are not met."]
9867        pub const _0: Self = Self::new(0);
9868
9869        #[doc = "Comparison conditions are met."]
9870        pub const _1: Self = Self::new(1);
9871    }
9872}
9873#[doc(hidden)]
9874#[derive(Copy, Clone, Eq, PartialEq)]
9875pub struct Adcmpser_SPEC;
9876impl crate::sealed::RegSpec for Adcmpser_SPEC {
9877    type DataType = u8;
9878}
9879
9880#[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
9881pub type Adcmpser = crate::RegValueT<Adcmpser_SPEC>;
9882
9883impl Adcmpser {
9884    #[doc = "Compare Window A Temperature Sensor Output Compare Flag"]
9885    #[inline(always)]
9886    pub fn cmpsttsa(
9887        self,
9888    ) -> crate::common::RegisterField<
9889        0,
9890        0x1,
9891        1,
9892        0,
9893        adcmpser::Cmpsttsa,
9894        adcmpser::Cmpsttsa,
9895        Adcmpser_SPEC,
9896        crate::common::RW,
9897    > {
9898        crate::common::RegisterField::<
9899            0,
9900            0x1,
9901            1,
9902            0,
9903            adcmpser::Cmpsttsa,
9904            adcmpser::Cmpsttsa,
9905            Adcmpser_SPEC,
9906            crate::common::RW,
9907        >::from_register(self, 0)
9908    }
9909
9910    #[doc = "Compare Window A Internal Reference Voltage Compare Flag"]
9911    #[inline(always)]
9912    pub fn cmpstoca(
9913        self,
9914    ) -> crate::common::RegisterField<
9915        1,
9916        0x1,
9917        1,
9918        0,
9919        adcmpser::Cmpstoca,
9920        adcmpser::Cmpstoca,
9921        Adcmpser_SPEC,
9922        crate::common::RW,
9923    > {
9924        crate::common::RegisterField::<
9925            1,
9926            0x1,
9927            1,
9928            0,
9929            adcmpser::Cmpstoca,
9930            adcmpser::Cmpstoca,
9931            Adcmpser_SPEC,
9932            crate::common::RW,
9933        >::from_register(self, 0)
9934    }
9935}
9936impl ::core::default::Default for Adcmpser {
9937    #[inline(always)]
9938    fn default() -> Adcmpser {
9939        <crate::RegValueT<Adcmpser_SPEC> as RegisterValue<_>>::new(0)
9940    }
9941}
9942pub mod adcmpser {
9943
9944    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9945    pub struct Cmpsttsa_SPEC;
9946    pub type Cmpsttsa = crate::EnumBitfieldStruct<u8, Cmpsttsa_SPEC>;
9947    impl Cmpsttsa {
9948        #[doc = "Comparison conditions are not met."]
9949        pub const _0: Self = Self::new(0);
9950
9951        #[doc = "Comparison conditions are met."]
9952        pub const _1: Self = Self::new(1);
9953    }
9954    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9955    pub struct Cmpstoca_SPEC;
9956    pub type Cmpstoca = crate::EnumBitfieldStruct<u8, Cmpstoca_SPEC>;
9957    impl Cmpstoca {
9958        #[doc = "Comparison conditions are not met."]
9959        pub const _0: Self = Self::new(0);
9960
9961        #[doc = "Comparison conditions are met."]
9962        pub const _1: Self = Self::new(1);
9963    }
9964}
9965#[doc(hidden)]
9966#[derive(Copy, Clone, Eq, PartialEq)]
9967pub struct Adcmpbnsr_SPEC;
9968impl crate::sealed::RegSpec for Adcmpbnsr_SPEC {
9969    type DataType = u8;
9970}
9971
9972#[doc = "A/D Compare Function Window B Channel Select Register"]
9973pub type Adcmpbnsr = crate::RegValueT<Adcmpbnsr_SPEC>;
9974
9975impl Adcmpbnsr {
9976    #[doc = "Compare Window B Channel Select"]
9977    #[inline(always)]
9978    pub fn cmpchb(
9979        self,
9980    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adcmpbnsr_SPEC, crate::common::RW>
9981    {
9982        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adcmpbnsr_SPEC,crate::common::RW>::from_register(self,0)
9983    }
9984
9985    #[doc = "Compare Window B Comparison Condition Setting"]
9986    #[inline(always)]
9987    pub fn cmplb(
9988        self,
9989    ) -> crate::common::RegisterField<
9990        7,
9991        0x1,
9992        1,
9993        0,
9994        adcmpbnsr::Cmplb,
9995        adcmpbnsr::Cmplb,
9996        Adcmpbnsr_SPEC,
9997        crate::common::RW,
9998    > {
9999        crate::common::RegisterField::<
10000            7,
10001            0x1,
10002            1,
10003            0,
10004            adcmpbnsr::Cmplb,
10005            adcmpbnsr::Cmplb,
10006            Adcmpbnsr_SPEC,
10007            crate::common::RW,
10008        >::from_register(self, 0)
10009    }
10010}
10011impl ::core::default::Default for Adcmpbnsr {
10012    #[inline(always)]
10013    fn default() -> Adcmpbnsr {
10014        <crate::RegValueT<Adcmpbnsr_SPEC> as RegisterValue<_>>::new(0)
10015    }
10016}
10017pub mod adcmpbnsr {
10018
10019    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10020    pub struct Cmplb_SPEC;
10021    pub type Cmplb = crate::EnumBitfieldStruct<u8, Cmplb_SPEC>;
10022    impl Cmplb {
10023        #[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"]
10024        pub const _0: Self = Self::new(0);
10025
10026        #[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"]
10027        pub const _1: Self = Self::new(1);
10028    }
10029}
10030#[doc(hidden)]
10031#[derive(Copy, Clone, Eq, PartialEq)]
10032pub struct Adwinllb_SPEC;
10033impl crate::sealed::RegSpec for Adwinllb_SPEC {
10034    type DataType = u16;
10035}
10036
10037#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register L"]
10038pub type Adwinllb = crate::RegValueT<Adwinllb_SPEC>;
10039
10040impl NoBitfieldReg<Adwinllb_SPEC> for Adwinllb {}
10041impl ::core::default::Default for Adwinllb {
10042    #[inline(always)]
10043    fn default() -> Adwinllb {
10044        <crate::RegValueT<Adwinllb_SPEC> as RegisterValue<_>>::new(0)
10045    }
10046}
10047
10048#[doc(hidden)]
10049#[derive(Copy, Clone, Eq, PartialEq)]
10050pub struct Adwinulb_SPEC;
10051impl crate::sealed::RegSpec for Adwinulb_SPEC {
10052    type DataType = u16;
10053}
10054
10055#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register U"]
10056pub type Adwinulb = crate::RegValueT<Adwinulb_SPEC>;
10057
10058impl NoBitfieldReg<Adwinulb_SPEC> for Adwinulb {}
10059impl ::core::default::Default for Adwinulb {
10060    #[inline(always)]
10061    fn default() -> Adwinulb {
10062        <crate::RegValueT<Adwinulb_SPEC> as RegisterValue<_>>::new(0)
10063    }
10064}
10065
10066#[doc(hidden)]
10067#[derive(Copy, Clone, Eq, PartialEq)]
10068pub struct Adcmpbsr_SPEC;
10069impl crate::sealed::RegSpec for Adcmpbsr_SPEC {
10070    type DataType = u8;
10071}
10072
10073#[doc = "A/D Compare Function Window B Status Register"]
10074pub type Adcmpbsr = crate::RegValueT<Adcmpbsr_SPEC>;
10075
10076impl Adcmpbsr {
10077    #[doc = "Compare Window B Flag"]
10078    #[inline(always)]
10079    pub fn cmpstb(
10080        self,
10081    ) -> crate::common::RegisterField<
10082        0,
10083        0x1,
10084        1,
10085        0,
10086        adcmpbsr::Cmpstb,
10087        adcmpbsr::Cmpstb,
10088        Adcmpbsr_SPEC,
10089        crate::common::RW,
10090    > {
10091        crate::common::RegisterField::<
10092            0,
10093            0x1,
10094            1,
10095            0,
10096            adcmpbsr::Cmpstb,
10097            adcmpbsr::Cmpstb,
10098            Adcmpbsr_SPEC,
10099            crate::common::RW,
10100        >::from_register(self, 0)
10101    }
10102}
10103impl ::core::default::Default for Adcmpbsr {
10104    #[inline(always)]
10105    fn default() -> Adcmpbsr {
10106        <crate::RegValueT<Adcmpbsr_SPEC> as RegisterValue<_>>::new(0)
10107    }
10108}
10109pub mod adcmpbsr {
10110
10111    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10112    pub struct Cmpstb_SPEC;
10113    pub type Cmpstb = crate::EnumBitfieldStruct<u8, Cmpstb_SPEC>;
10114    impl Cmpstb {
10115        #[doc = "Comparison conditions are not met."]
10116        pub const _0: Self = Self::new(0);
10117
10118        #[doc = "Comparison conditions are met."]
10119        pub const _1: Self = Self::new(1);
10120    }
10121}
10122#[doc(hidden)]
10123#[derive(Copy, Clone, Eq, PartialEq)]
10124pub struct Adbuf_SPEC;
10125impl crate::sealed::RegSpec for Adbuf_SPEC {
10126    type DataType = u16;
10127}
10128
10129#[doc = "A/D Data Buffer Registers %s"]
10130pub type Adbuf = crate::RegValueT<Adbuf_SPEC>;
10131
10132impl Adbuf {
10133    #[doc = "Converted Value 15 to 0"]
10134    #[inline(always)]
10135    pub fn adbuf(
10136        self,
10137    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adbuf_SPEC, crate::common::R> {
10138        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adbuf_SPEC,crate::common::R>::from_register(self,0)
10139    }
10140}
10141impl ::core::default::Default for Adbuf {
10142    #[inline(always)]
10143    fn default() -> Adbuf {
10144        <crate::RegValueT<Adbuf_SPEC> as RegisterValue<_>>::new(0)
10145    }
10146}
10147
10148#[doc(hidden)]
10149#[derive(Copy, Clone, Eq, PartialEq)]
10150pub struct Adbufen_SPEC;
10151impl crate::sealed::RegSpec for Adbufen_SPEC {
10152    type DataType = u8;
10153}
10154
10155#[doc = "A/D Data Buffer Enable Register"]
10156pub type Adbufen = crate::RegValueT<Adbufen_SPEC>;
10157
10158impl Adbufen {
10159    #[doc = "Data Buffer Enable"]
10160    #[inline(always)]
10161    pub fn bufen(
10162        self,
10163    ) -> crate::common::RegisterField<
10164        0,
10165        0x1,
10166        1,
10167        0,
10168        adbufen::Bufen,
10169        adbufen::Bufen,
10170        Adbufen_SPEC,
10171        crate::common::RW,
10172    > {
10173        crate::common::RegisterField::<
10174            0,
10175            0x1,
10176            1,
10177            0,
10178            adbufen::Bufen,
10179            adbufen::Bufen,
10180            Adbufen_SPEC,
10181            crate::common::RW,
10182        >::from_register(self, 0)
10183    }
10184}
10185impl ::core::default::Default for Adbufen {
10186    #[inline(always)]
10187    fn default() -> Adbufen {
10188        <crate::RegValueT<Adbufen_SPEC> as RegisterValue<_>>::new(0)
10189    }
10190}
10191pub mod adbufen {
10192
10193    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10194    pub struct Bufen_SPEC;
10195    pub type Bufen = crate::EnumBitfieldStruct<u8, Bufen_SPEC>;
10196    impl Bufen {
10197        #[doc = "The data buffer is not used."]
10198        pub const _0: Self = Self::new(0);
10199
10200        #[doc = "The data buffer is used."]
10201        pub const _1: Self = Self::new(1);
10202    }
10203}
10204#[doc(hidden)]
10205#[derive(Copy, Clone, Eq, PartialEq)]
10206pub struct Adbufptr_SPEC;
10207impl crate::sealed::RegSpec for Adbufptr_SPEC {
10208    type DataType = u8;
10209}
10210
10211#[doc = "A/D Data Buffer Pointer Register"]
10212pub type Adbufptr = crate::RegValueT<Adbufptr_SPEC>;
10213
10214impl Adbufptr {
10215    #[doc = "Data Buffer Pointer"]
10216    #[inline(always)]
10217    pub fn bufptr(
10218        self,
10219    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Adbufptr_SPEC, crate::common::RW> {
10220        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Adbufptr_SPEC,crate::common::RW>::from_register(self,0)
10221    }
10222
10223    #[doc = "Pointer Overflow Flag"]
10224    #[inline(always)]
10225    pub fn ptrovf(
10226        self,
10227    ) -> crate::common::RegisterField<
10228        4,
10229        0x1,
10230        1,
10231        0,
10232        adbufptr::Ptrovf,
10233        adbufptr::Ptrovf,
10234        Adbufptr_SPEC,
10235        crate::common::RW,
10236    > {
10237        crate::common::RegisterField::<
10238            4,
10239            0x1,
10240            1,
10241            0,
10242            adbufptr::Ptrovf,
10243            adbufptr::Ptrovf,
10244            Adbufptr_SPEC,
10245            crate::common::RW,
10246        >::from_register(self, 0)
10247    }
10248}
10249impl ::core::default::Default for Adbufptr {
10250    #[inline(always)]
10251    fn default() -> Adbufptr {
10252        <crate::RegValueT<Adbufptr_SPEC> as RegisterValue<_>>::new(0)
10253    }
10254}
10255pub mod adbufptr {
10256
10257    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10258    pub struct Ptrovf_SPEC;
10259    pub type Ptrovf = crate::EnumBitfieldStruct<u8, Ptrovf_SPEC>;
10260    impl Ptrovf {
10261        #[doc = "The data buffer pointer has not overflowed."]
10262        pub const _0: Self = Self::new(0);
10263
10264        #[doc = "The data buffer pointer has overflowed."]
10265        pub const _1: Self = Self::new(1);
10266    }
10267}
10268#[doc(hidden)]
10269#[derive(Copy, Clone, Eq, PartialEq)]
10270pub struct Adsstrl_SPEC;
10271impl crate::sealed::RegSpec for Adsstrl_SPEC {
10272    type DataType = u8;
10273}
10274
10275#[doc = "A/D Sampling State Register"]
10276pub type Adsstrl = crate::RegValueT<Adsstrl_SPEC>;
10277
10278impl Adsstrl {
10279    #[doc = "Sampling Time Setting"]
10280    #[inline(always)]
10281    pub fn sst(
10282        self,
10283    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrl_SPEC, crate::common::RW> {
10284        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrl_SPEC,crate::common::RW>::from_register(self,0)
10285    }
10286}
10287impl ::core::default::Default for Adsstrl {
10288    #[inline(always)]
10289    fn default() -> Adsstrl {
10290        <crate::RegValueT<Adsstrl_SPEC> as RegisterValue<_>>::new(11)
10291    }
10292}
10293
10294#[doc(hidden)]
10295#[derive(Copy, Clone, Eq, PartialEq)]
10296pub struct Adsstrt_SPEC;
10297impl crate::sealed::RegSpec for Adsstrt_SPEC {
10298    type DataType = u8;
10299}
10300
10301#[doc = "A/D Sampling State Register"]
10302pub type Adsstrt = crate::RegValueT<Adsstrt_SPEC>;
10303
10304impl Adsstrt {
10305    #[doc = "Sampling Time Setting"]
10306    #[inline(always)]
10307    pub fn sst(
10308        self,
10309    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrt_SPEC, crate::common::RW> {
10310        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrt_SPEC,crate::common::RW>::from_register(self,0)
10311    }
10312}
10313impl ::core::default::Default for Adsstrt {
10314    #[inline(always)]
10315    fn default() -> Adsstrt {
10316        <crate::RegValueT<Adsstrt_SPEC> as RegisterValue<_>>::new(11)
10317    }
10318}
10319
10320#[doc(hidden)]
10321#[derive(Copy, Clone, Eq, PartialEq)]
10322pub struct Adsstro_SPEC;
10323impl crate::sealed::RegSpec for Adsstro_SPEC {
10324    type DataType = u8;
10325}
10326
10327#[doc = "A/D Sampling State Register"]
10328pub type Adsstro = crate::RegValueT<Adsstro_SPEC>;
10329
10330impl Adsstro {
10331    #[doc = "Sampling Time Setting"]
10332    #[inline(always)]
10333    pub fn sst(
10334        self,
10335    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstro_SPEC, crate::common::RW> {
10336        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstro_SPEC,crate::common::RW>::from_register(self,0)
10337    }
10338}
10339impl ::core::default::Default for Adsstro {
10340    #[inline(always)]
10341    fn default() -> Adsstro {
10342        <crate::RegValueT<Adsstro_SPEC> as RegisterValue<_>>::new(11)
10343    }
10344}
10345
10346#[doc(hidden)]
10347#[derive(Copy, Clone, Eq, PartialEq)]
10348pub struct Adsstr_SPEC;
10349impl crate::sealed::RegSpec for Adsstr_SPEC {
10350    type DataType = u8;
10351}
10352
10353#[doc = "A/D Sampling State Register"]
10354pub type Adsstr = crate::RegValueT<Adsstr_SPEC>;
10355
10356impl Adsstr {
10357    #[doc = "Sampling Time Setting"]
10358    #[inline(always)]
10359    pub fn sst(
10360        self,
10361    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstr_SPEC, crate::common::RW> {
10362        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstr_SPEC,crate::common::RW>::from_register(self,0)
10363    }
10364}
10365impl ::core::default::Default for Adsstr {
10366    #[inline(always)]
10367    fn default() -> Adsstr {
10368        <crate::RegValueT<Adsstr_SPEC> as RegisterValue<_>>::new(11)
10369    }
10370}