Skip to main content

ra4m2_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.1 on Sun, 15 Mar 2026 07:07:12 +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"]
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"]
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"]
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)Setting prohibited"]
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    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3486    pub struct Avee_SPEC;
3487    pub type Avee = crate::EnumBitfieldStruct<u8, Avee_SPEC>;
3488    impl Avee {
3489        #[doc = "Enable addition mode"]
3490        pub const _0: Self = Self::new(0);
3491
3492        #[doc = "Enable average mode"]
3493        pub const _1: Self = Self::new(1);
3494    }
3495}
3496#[doc(hidden)]
3497#[derive(Copy, Clone, Eq, PartialEq)]
3498pub struct Adcer_SPEC;
3499impl crate::sealed::RegSpec for Adcer_SPEC {
3500    type DataType = u16;
3501}
3502
3503#[doc = "A/D Control Extended Register"]
3504pub type Adcer = crate::RegValueT<Adcer_SPEC>;
3505
3506impl Adcer {
3507    #[inline(always)]
3508    pub fn adprc(
3509        self,
3510    ) -> crate::common::RegisterField<
3511        1,
3512        0x3,
3513        1,
3514        0,
3515        adcer::Adprc,
3516        adcer::Adprc,
3517        Adcer_SPEC,
3518        crate::common::RW,
3519    > {
3520        crate::common::RegisterField::<
3521            1,
3522            0x3,
3523            1,
3524            0,
3525            adcer::Adprc,
3526            adcer::Adprc,
3527            Adcer_SPEC,
3528            crate::common::RW,
3529        >::from_register(self, 0)
3530    }
3531
3532    #[doc = "A/D Data Register Automatic Clearing Enable"]
3533    #[inline(always)]
3534    pub fn ace(
3535        self,
3536    ) -> crate::common::RegisterField<
3537        5,
3538        0x1,
3539        1,
3540        0,
3541        adcer::Ace,
3542        adcer::Ace,
3543        Adcer_SPEC,
3544        crate::common::RW,
3545    > {
3546        crate::common::RegisterField::<
3547            5,
3548            0x1,
3549            1,
3550            0,
3551            adcer::Ace,
3552            adcer::Ace,
3553            Adcer_SPEC,
3554            crate::common::RW,
3555        >::from_register(self, 0)
3556    }
3557
3558    #[doc = "Self-Diagnosis Conversion Voltage Select"]
3559    #[inline(always)]
3560    pub fn diagval(
3561        self,
3562    ) -> crate::common::RegisterField<
3563        8,
3564        0x3,
3565        1,
3566        0,
3567        adcer::Diagval,
3568        adcer::Diagval,
3569        Adcer_SPEC,
3570        crate::common::RW,
3571    > {
3572        crate::common::RegisterField::<
3573            8,
3574            0x3,
3575            1,
3576            0,
3577            adcer::Diagval,
3578            adcer::Diagval,
3579            Adcer_SPEC,
3580            crate::common::RW,
3581        >::from_register(self, 0)
3582    }
3583
3584    #[doc = "Self-Diagnosis Mode Select"]
3585    #[inline(always)]
3586    pub fn diagld(
3587        self,
3588    ) -> crate::common::RegisterField<
3589        10,
3590        0x1,
3591        1,
3592        0,
3593        adcer::Diagld,
3594        adcer::Diagld,
3595        Adcer_SPEC,
3596        crate::common::RW,
3597    > {
3598        crate::common::RegisterField::<
3599            10,
3600            0x1,
3601            1,
3602            0,
3603            adcer::Diagld,
3604            adcer::Diagld,
3605            Adcer_SPEC,
3606            crate::common::RW,
3607        >::from_register(self, 0)
3608    }
3609
3610    #[doc = "Self-Diagnosis Enable"]
3611    #[inline(always)]
3612    pub fn diagm(
3613        self,
3614    ) -> crate::common::RegisterField<
3615        11,
3616        0x1,
3617        1,
3618        0,
3619        adcer::Diagm,
3620        adcer::Diagm,
3621        Adcer_SPEC,
3622        crate::common::RW,
3623    > {
3624        crate::common::RegisterField::<
3625            11,
3626            0x1,
3627            1,
3628            0,
3629            adcer::Diagm,
3630            adcer::Diagm,
3631            Adcer_SPEC,
3632            crate::common::RW,
3633        >::from_register(self, 0)
3634    }
3635
3636    #[doc = "A/D Data Register Format Select"]
3637    #[inline(always)]
3638    pub fn adrfmt(
3639        self,
3640    ) -> crate::common::RegisterField<
3641        15,
3642        0x1,
3643        1,
3644        0,
3645        adcer::Adrfmt,
3646        adcer::Adrfmt,
3647        Adcer_SPEC,
3648        crate::common::RW,
3649    > {
3650        crate::common::RegisterField::<
3651            15,
3652            0x1,
3653            1,
3654            0,
3655            adcer::Adrfmt,
3656            adcer::Adrfmt,
3657            Adcer_SPEC,
3658            crate::common::RW,
3659        >::from_register(self, 0)
3660    }
3661}
3662impl ::core::default::Default for Adcer {
3663    #[inline(always)]
3664    fn default() -> Adcer {
3665        <crate::RegValueT<Adcer_SPEC> as RegisterValue<_>>::new(0)
3666    }
3667}
3668pub mod adcer {
3669
3670    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3671    pub struct Adprc_SPEC;
3672    pub type Adprc = crate::EnumBitfieldStruct<u8, Adprc_SPEC>;
3673    impl Adprc {
3674        #[doc = "12-bit accuracy"]
3675        pub const _00: Self = Self::new(0);
3676
3677        #[doc = "10-bit accuracy"]
3678        pub const _01: Self = Self::new(1);
3679
3680        #[doc = "8-bit accuracy"]
3681        pub const _10: Self = Self::new(2);
3682
3683        #[doc = "Setting prohibited"]
3684        pub const _11: Self = Self::new(3);
3685    }
3686    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3687    pub struct Ace_SPEC;
3688    pub type Ace = crate::EnumBitfieldStruct<u8, Ace_SPEC>;
3689    impl Ace {
3690        #[doc = "Disable automatic clearing"]
3691        pub const _0: Self = Self::new(0);
3692
3693        #[doc = "Enable automatic clearing"]
3694        pub const _1: Self = Self::new(1);
3695    }
3696    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3697    pub struct Diagval_SPEC;
3698    pub type Diagval = crate::EnumBitfieldStruct<u8, Diagval_SPEC>;
3699    impl Diagval {
3700        #[doc = "Setting prohibited when self-diagnosis is enabled"]
3701        pub const _00: Self = Self::new(0);
3702
3703        #[doc = "0 volts"]
3704        pub const _01: Self = Self::new(1);
3705
3706        #[doc = "Reference voltage × 1/2"]
3707        pub const _10: Self = Self::new(2);
3708
3709        #[doc = "Reference voltage"]
3710        pub const _11: Self = Self::new(3);
3711    }
3712    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3713    pub struct Diagld_SPEC;
3714    pub type Diagld = crate::EnumBitfieldStruct<u8, Diagld_SPEC>;
3715    impl Diagld {
3716        #[doc = "Select rotation mode for self-diagnosis voltage"]
3717        pub const _0: Self = Self::new(0);
3718
3719        #[doc = "Select mixed mode for self-diagnosis voltage"]
3720        pub const _1: Self = Self::new(1);
3721    }
3722    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3723    pub struct Diagm_SPEC;
3724    pub type Diagm = crate::EnumBitfieldStruct<u8, Diagm_SPEC>;
3725    impl Diagm {
3726        #[doc = "Disable ADC12 self-diagnosis"]
3727        pub const _0: Self = Self::new(0);
3728
3729        #[doc = "Enable ADC12 self-diagnosis"]
3730        pub const _1: Self = Self::new(1);
3731    }
3732    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3733    pub struct Adrfmt_SPEC;
3734    pub type Adrfmt = crate::EnumBitfieldStruct<u8, Adrfmt_SPEC>;
3735    impl Adrfmt {
3736        #[doc = "Select right-justified for the A/D data register format"]
3737        pub const _0: Self = Self::new(0);
3738
3739        #[doc = "Select left-justified for the A/D data register format"]
3740        pub const _1: Self = Self::new(1);
3741    }
3742}
3743#[doc(hidden)]
3744#[derive(Copy, Clone, Eq, PartialEq)]
3745pub struct Adstrgr_SPEC;
3746impl crate::sealed::RegSpec for Adstrgr_SPEC {
3747    type DataType = u16;
3748}
3749
3750#[doc = "A/D Conversion Start Trigger Select Register"]
3751pub type Adstrgr = crate::RegValueT<Adstrgr_SPEC>;
3752
3753impl Adstrgr {
3754    #[doc = "A/D Conversion Start Trigger Select for Group B"]
3755    #[inline(always)]
3756    pub fn trsb(
3757        self,
3758    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
3759        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
3760    }
3761
3762    #[doc = "A/D Conversion Start Trigger Select"]
3763    #[inline(always)]
3764    pub fn trsa(
3765        self,
3766    ) -> crate::common::RegisterField<8, 0x3f, 1, 0, u8, u8, Adstrgr_SPEC, crate::common::RW> {
3767        crate::common::RegisterField::<8,0x3f,1,0,u8,u8,Adstrgr_SPEC,crate::common::RW>::from_register(self,0)
3768    }
3769}
3770impl ::core::default::Default for Adstrgr {
3771    #[inline(always)]
3772    fn default() -> Adstrgr {
3773        <crate::RegValueT<Adstrgr_SPEC> as RegisterValue<_>>::new(0)
3774    }
3775}
3776
3777#[doc(hidden)]
3778#[derive(Copy, Clone, Eq, PartialEq)]
3779pub struct Adexicr_SPEC;
3780impl crate::sealed::RegSpec for Adexicr_SPEC {
3781    type DataType = u16;
3782}
3783
3784#[doc = "A/D Conversion Extended Input Control Registers"]
3785pub type Adexicr = crate::RegValueT<Adexicr_SPEC>;
3786
3787impl Adexicr {
3788    #[doc = "Temperature Sensor Output A/D-Converted Value Addition/Average Mode Select"]
3789    #[inline(always)]
3790    pub fn tssad(
3791        self,
3792    ) -> crate::common::RegisterField<
3793        0,
3794        0x1,
3795        1,
3796        0,
3797        adexicr::Tssad,
3798        adexicr::Tssad,
3799        Adexicr_SPEC,
3800        crate::common::RW,
3801    > {
3802        crate::common::RegisterField::<
3803            0,
3804            0x1,
3805            1,
3806            0,
3807            adexicr::Tssad,
3808            adexicr::Tssad,
3809            Adexicr_SPEC,
3810            crate::common::RW,
3811        >::from_register(self, 0)
3812    }
3813
3814    #[doc = "Internal Reference Voltage A/D-Converted Value Addition/Average Mode Select"]
3815    #[inline(always)]
3816    pub fn ocsad(
3817        self,
3818    ) -> crate::common::RegisterField<
3819        1,
3820        0x1,
3821        1,
3822        0,
3823        adexicr::Ocsad,
3824        adexicr::Ocsad,
3825        Adexicr_SPEC,
3826        crate::common::RW,
3827    > {
3828        crate::common::RegisterField::<
3829            1,
3830            0x1,
3831            1,
3832            0,
3833            adexicr::Ocsad,
3834            adexicr::Ocsad,
3835            Adexicr_SPEC,
3836            crate::common::RW,
3837        >::from_register(self, 0)
3838    }
3839
3840    #[doc = "Temperature Sensor Output A/D Conversion Select"]
3841    #[inline(always)]
3842    pub fn tssa(
3843        self,
3844    ) -> crate::common::RegisterField<
3845        8,
3846        0x1,
3847        1,
3848        0,
3849        adexicr::Tssa,
3850        adexicr::Tssa,
3851        Adexicr_SPEC,
3852        crate::common::RW,
3853    > {
3854        crate::common::RegisterField::<
3855            8,
3856            0x1,
3857            1,
3858            0,
3859            adexicr::Tssa,
3860            adexicr::Tssa,
3861            Adexicr_SPEC,
3862            crate::common::RW,
3863        >::from_register(self, 0)
3864    }
3865
3866    #[doc = "Internal Reference Voltage A/D Conversion Select"]
3867    #[inline(always)]
3868    pub fn ocsa(
3869        self,
3870    ) -> crate::common::RegisterField<
3871        9,
3872        0x1,
3873        1,
3874        0,
3875        adexicr::Ocsa,
3876        adexicr::Ocsa,
3877        Adexicr_SPEC,
3878        crate::common::RW,
3879    > {
3880        crate::common::RegisterField::<
3881            9,
3882            0x1,
3883            1,
3884            0,
3885            adexicr::Ocsa,
3886            adexicr::Ocsa,
3887            Adexicr_SPEC,
3888            crate::common::RW,
3889        >::from_register(self, 0)
3890    }
3891
3892    #[doc = "Temperature Sensor Output A/D Conversion Select for Group B"]
3893    #[inline(always)]
3894    pub fn tssb(
3895        self,
3896    ) -> crate::common::RegisterField<
3897        10,
3898        0x1,
3899        1,
3900        0,
3901        adexicr::Tssb,
3902        adexicr::Tssb,
3903        Adexicr_SPEC,
3904        crate::common::RW,
3905    > {
3906        crate::common::RegisterField::<
3907            10,
3908            0x1,
3909            1,
3910            0,
3911            adexicr::Tssb,
3912            adexicr::Tssb,
3913            Adexicr_SPEC,
3914            crate::common::RW,
3915        >::from_register(self, 0)
3916    }
3917
3918    #[doc = "Internal Reference Voltage A/D Conversion Select for Group B"]
3919    #[inline(always)]
3920    pub fn ocsb(
3921        self,
3922    ) -> crate::common::RegisterField<
3923        11,
3924        0x1,
3925        1,
3926        0,
3927        adexicr::Ocsb,
3928        adexicr::Ocsb,
3929        Adexicr_SPEC,
3930        crate::common::RW,
3931    > {
3932        crate::common::RegisterField::<
3933            11,
3934            0x1,
3935            1,
3936            0,
3937            adexicr::Ocsb,
3938            adexicr::Ocsb,
3939            Adexicr_SPEC,
3940            crate::common::RW,
3941        >::from_register(self, 0)
3942    }
3943}
3944impl ::core::default::Default for Adexicr {
3945    #[inline(always)]
3946    fn default() -> Adexicr {
3947        <crate::RegValueT<Adexicr_SPEC> as RegisterValue<_>>::new(0)
3948    }
3949}
3950pub mod adexicr {
3951
3952    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3953    pub struct Tssad_SPEC;
3954    pub type Tssad = crate::EnumBitfieldStruct<u8, Tssad_SPEC>;
3955    impl Tssad {
3956        #[doc = "Do not select addition/average mode for temperature sensor output."]
3957        pub const _0: Self = Self::new(0);
3958
3959        #[doc = "Select addition/average mode for temperature sensor output."]
3960        pub const _1: Self = Self::new(1);
3961    }
3962    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3963    pub struct Ocsad_SPEC;
3964    pub type Ocsad = crate::EnumBitfieldStruct<u8, Ocsad_SPEC>;
3965    impl Ocsad {
3966        #[doc = "Do not select addition/average mode for internal reference voltage."]
3967        pub const _0: Self = Self::new(0);
3968
3969        #[doc = "Select addition/average mode for internal reference voltage."]
3970        pub const _1: Self = Self::new(1);
3971    }
3972    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3973    pub struct Tssa_SPEC;
3974    pub type Tssa = crate::EnumBitfieldStruct<u8, Tssa_SPEC>;
3975    impl Tssa {
3976        #[doc = "Disable A/D conversion of temperature sensor output"]
3977        pub const _0: Self = Self::new(0);
3978
3979        #[doc = "Enable A/D conversion of temperature sensor output"]
3980        pub const _1: Self = Self::new(1);
3981    }
3982    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3983    pub struct Ocsa_SPEC;
3984    pub type Ocsa = crate::EnumBitfieldStruct<u8, Ocsa_SPEC>;
3985    impl Ocsa {
3986        #[doc = "Disable A/D conversion of internal reference voltage"]
3987        pub const _0: Self = Self::new(0);
3988
3989        #[doc = "Enable A/D conversion of internal reference voltage"]
3990        pub const _1: Self = Self::new(1);
3991    }
3992    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3993    pub struct Tssb_SPEC;
3994    pub type Tssb = crate::EnumBitfieldStruct<u8, Tssb_SPEC>;
3995    impl Tssb {
3996        #[doc = "Disable A/D conversion of temperature sensor output"]
3997        pub const _0: Self = Self::new(0);
3998
3999        #[doc = "Enable A/D conversion of temperature sensor output"]
4000        pub const _1: Self = Self::new(1);
4001    }
4002    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4003    pub struct Ocsb_SPEC;
4004    pub type Ocsb = crate::EnumBitfieldStruct<u8, Ocsb_SPEC>;
4005    impl Ocsb {
4006        #[doc = "Disable A/D conversion of internal reference voltage"]
4007        pub const _0: Self = Self::new(0);
4008
4009        #[doc = "Enable A/D conversion of internal reference voltage"]
4010        pub const _1: Self = Self::new(1);
4011    }
4012}
4013#[doc(hidden)]
4014#[derive(Copy, Clone, Eq, PartialEq)]
4015pub struct Adansb0_SPEC;
4016impl crate::sealed::RegSpec for Adansb0_SPEC {
4017    type DataType = u16;
4018}
4019
4020#[doc = "A/D Channel Select Register B0"]
4021pub type Adansb0 = crate::RegValueT<Adansb0_SPEC>;
4022
4023impl Adansb0 {
4024    #[doc = "A/D Conversion Channels Select"]
4025    #[inline(always)]
4026    pub fn ansb00(
4027        self,
4028    ) -> crate::common::RegisterField<
4029        0,
4030        0x1,
4031        1,
4032        0,
4033        adansb0::Ansb00,
4034        adansb0::Ansb00,
4035        Adansb0_SPEC,
4036        crate::common::RW,
4037    > {
4038        crate::common::RegisterField::<
4039            0,
4040            0x1,
4041            1,
4042            0,
4043            adansb0::Ansb00,
4044            adansb0::Ansb00,
4045            Adansb0_SPEC,
4046            crate::common::RW,
4047        >::from_register(self, 0)
4048    }
4049
4050    #[doc = "A/D Conversion Channels Select"]
4051    #[inline(always)]
4052    pub fn ansb01(
4053        self,
4054    ) -> crate::common::RegisterField<
4055        1,
4056        0x1,
4057        1,
4058        0,
4059        adansb0::Ansb01,
4060        adansb0::Ansb01,
4061        Adansb0_SPEC,
4062        crate::common::RW,
4063    > {
4064        crate::common::RegisterField::<
4065            1,
4066            0x1,
4067            1,
4068            0,
4069            adansb0::Ansb01,
4070            adansb0::Ansb01,
4071            Adansb0_SPEC,
4072            crate::common::RW,
4073        >::from_register(self, 0)
4074    }
4075
4076    #[doc = "A/D Conversion Channels Select"]
4077    #[inline(always)]
4078    pub fn ansb02(
4079        self,
4080    ) -> crate::common::RegisterField<
4081        2,
4082        0x1,
4083        1,
4084        0,
4085        adansb0::Ansb02,
4086        adansb0::Ansb02,
4087        Adansb0_SPEC,
4088        crate::common::RW,
4089    > {
4090        crate::common::RegisterField::<
4091            2,
4092            0x1,
4093            1,
4094            0,
4095            adansb0::Ansb02,
4096            adansb0::Ansb02,
4097            Adansb0_SPEC,
4098            crate::common::RW,
4099        >::from_register(self, 0)
4100    }
4101
4102    #[doc = "A/D Conversion Channels Select"]
4103    #[inline(always)]
4104    pub fn ansb03(
4105        self,
4106    ) -> crate::common::RegisterField<
4107        3,
4108        0x1,
4109        1,
4110        0,
4111        adansb0::Ansb03,
4112        adansb0::Ansb03,
4113        Adansb0_SPEC,
4114        crate::common::RW,
4115    > {
4116        crate::common::RegisterField::<
4117            3,
4118            0x1,
4119            1,
4120            0,
4121            adansb0::Ansb03,
4122            adansb0::Ansb03,
4123            Adansb0_SPEC,
4124            crate::common::RW,
4125        >::from_register(self, 0)
4126    }
4127
4128    #[doc = "A/D Conversion Channels Select"]
4129    #[inline(always)]
4130    pub fn ansb04(
4131        self,
4132    ) -> crate::common::RegisterField<
4133        4,
4134        0x1,
4135        1,
4136        0,
4137        adansb0::Ansb04,
4138        adansb0::Ansb04,
4139        Adansb0_SPEC,
4140        crate::common::RW,
4141    > {
4142        crate::common::RegisterField::<
4143            4,
4144            0x1,
4145            1,
4146            0,
4147            adansb0::Ansb04,
4148            adansb0::Ansb04,
4149            Adansb0_SPEC,
4150            crate::common::RW,
4151        >::from_register(self, 0)
4152    }
4153
4154    #[doc = "A/D Conversion Channels Select"]
4155    #[inline(always)]
4156    pub fn ansb05(
4157        self,
4158    ) -> crate::common::RegisterField<
4159        5,
4160        0x1,
4161        1,
4162        0,
4163        adansb0::Ansb05,
4164        adansb0::Ansb05,
4165        Adansb0_SPEC,
4166        crate::common::RW,
4167    > {
4168        crate::common::RegisterField::<
4169            5,
4170            0x1,
4171            1,
4172            0,
4173            adansb0::Ansb05,
4174            adansb0::Ansb05,
4175            Adansb0_SPEC,
4176            crate::common::RW,
4177        >::from_register(self, 0)
4178    }
4179
4180    #[doc = "A/D Conversion Channels Select"]
4181    #[inline(always)]
4182    pub fn ansb06(
4183        self,
4184    ) -> crate::common::RegisterField<
4185        6,
4186        0x1,
4187        1,
4188        0,
4189        adansb0::Ansb06,
4190        adansb0::Ansb06,
4191        Adansb0_SPEC,
4192        crate::common::RW,
4193    > {
4194        crate::common::RegisterField::<
4195            6,
4196            0x1,
4197            1,
4198            0,
4199            adansb0::Ansb06,
4200            adansb0::Ansb06,
4201            Adansb0_SPEC,
4202            crate::common::RW,
4203        >::from_register(self, 0)
4204    }
4205
4206    #[doc = "A/D Conversion Channels Select"]
4207    #[inline(always)]
4208    pub fn ansb07(
4209        self,
4210    ) -> crate::common::RegisterField<
4211        7,
4212        0x1,
4213        1,
4214        0,
4215        adansb0::Ansb07,
4216        adansb0::Ansb07,
4217        Adansb0_SPEC,
4218        crate::common::RW,
4219    > {
4220        crate::common::RegisterField::<
4221            7,
4222            0x1,
4223            1,
4224            0,
4225            adansb0::Ansb07,
4226            adansb0::Ansb07,
4227            Adansb0_SPEC,
4228            crate::common::RW,
4229        >::from_register(self, 0)
4230    }
4231
4232    #[doc = "A/D Conversion Channels Select"]
4233    #[inline(always)]
4234    pub fn ansb08(
4235        self,
4236    ) -> crate::common::RegisterField<
4237        8,
4238        0x1,
4239        1,
4240        0,
4241        adansb0::Ansb08,
4242        adansb0::Ansb08,
4243        Adansb0_SPEC,
4244        crate::common::RW,
4245    > {
4246        crate::common::RegisterField::<
4247            8,
4248            0x1,
4249            1,
4250            0,
4251            adansb0::Ansb08,
4252            adansb0::Ansb08,
4253            Adansb0_SPEC,
4254            crate::common::RW,
4255        >::from_register(self, 0)
4256    }
4257
4258    #[doc = "A/D Conversion Channels Select"]
4259    #[inline(always)]
4260    pub fn ansb09(
4261        self,
4262    ) -> crate::common::RegisterField<
4263        9,
4264        0x1,
4265        1,
4266        0,
4267        adansb0::Ansb09,
4268        adansb0::Ansb09,
4269        Adansb0_SPEC,
4270        crate::common::RW,
4271    > {
4272        crate::common::RegisterField::<
4273            9,
4274            0x1,
4275            1,
4276            0,
4277            adansb0::Ansb09,
4278            adansb0::Ansb09,
4279            Adansb0_SPEC,
4280            crate::common::RW,
4281        >::from_register(self, 0)
4282    }
4283
4284    #[doc = "A/D Conversion Channels Select"]
4285    #[inline(always)]
4286    pub fn ansb10(
4287        self,
4288    ) -> crate::common::RegisterField<
4289        10,
4290        0x1,
4291        1,
4292        0,
4293        adansb0::Ansb10,
4294        adansb0::Ansb10,
4295        Adansb0_SPEC,
4296        crate::common::RW,
4297    > {
4298        crate::common::RegisterField::<
4299            10,
4300            0x1,
4301            1,
4302            0,
4303            adansb0::Ansb10,
4304            adansb0::Ansb10,
4305            Adansb0_SPEC,
4306            crate::common::RW,
4307        >::from_register(self, 0)
4308    }
4309
4310    #[doc = "A/D Conversion Channels Select"]
4311    #[inline(always)]
4312    pub fn ansb11(
4313        self,
4314    ) -> crate::common::RegisterField<
4315        11,
4316        0x1,
4317        1,
4318        0,
4319        adansb0::Ansb11,
4320        adansb0::Ansb11,
4321        Adansb0_SPEC,
4322        crate::common::RW,
4323    > {
4324        crate::common::RegisterField::<
4325            11,
4326            0x1,
4327            1,
4328            0,
4329            adansb0::Ansb11,
4330            adansb0::Ansb11,
4331            Adansb0_SPEC,
4332            crate::common::RW,
4333        >::from_register(self, 0)
4334    }
4335
4336    #[doc = "A/D Conversion Channels Select"]
4337    #[inline(always)]
4338    pub fn ansb12(
4339        self,
4340    ) -> crate::common::RegisterField<
4341        12,
4342        0x1,
4343        1,
4344        0,
4345        adansb0::Ansb12,
4346        adansb0::Ansb12,
4347        Adansb0_SPEC,
4348        crate::common::RW,
4349    > {
4350        crate::common::RegisterField::<
4351            12,
4352            0x1,
4353            1,
4354            0,
4355            adansb0::Ansb12,
4356            adansb0::Ansb12,
4357            Adansb0_SPEC,
4358            crate::common::RW,
4359        >::from_register(self, 0)
4360    }
4361
4362    #[doc = "A/D Conversion Channels Select"]
4363    #[inline(always)]
4364    pub fn ansb13(
4365        self,
4366    ) -> crate::common::RegisterField<
4367        13,
4368        0x1,
4369        1,
4370        0,
4371        adansb0::Ansb13,
4372        adansb0::Ansb13,
4373        Adansb0_SPEC,
4374        crate::common::RW,
4375    > {
4376        crate::common::RegisterField::<
4377            13,
4378            0x1,
4379            1,
4380            0,
4381            adansb0::Ansb13,
4382            adansb0::Ansb13,
4383            Adansb0_SPEC,
4384            crate::common::RW,
4385        >::from_register(self, 0)
4386    }
4387
4388    #[doc = "A/D Conversion Channels Select"]
4389    #[inline(always)]
4390    pub fn ansb14(
4391        self,
4392    ) -> crate::common::RegisterField<
4393        14,
4394        0x1,
4395        1,
4396        0,
4397        adansb0::Ansb14,
4398        adansb0::Ansb14,
4399        Adansb0_SPEC,
4400        crate::common::RW,
4401    > {
4402        crate::common::RegisterField::<
4403            14,
4404            0x1,
4405            1,
4406            0,
4407            adansb0::Ansb14,
4408            adansb0::Ansb14,
4409            Adansb0_SPEC,
4410            crate::common::RW,
4411        >::from_register(self, 0)
4412    }
4413
4414    #[doc = "A/D Conversion Channels Select"]
4415    #[inline(always)]
4416    pub fn ansb15(
4417        self,
4418    ) -> crate::common::RegisterField<
4419        15,
4420        0x1,
4421        1,
4422        0,
4423        adansb0::Ansb15,
4424        adansb0::Ansb15,
4425        Adansb0_SPEC,
4426        crate::common::RW,
4427    > {
4428        crate::common::RegisterField::<
4429            15,
4430            0x1,
4431            1,
4432            0,
4433            adansb0::Ansb15,
4434            adansb0::Ansb15,
4435            Adansb0_SPEC,
4436            crate::common::RW,
4437        >::from_register(self, 0)
4438    }
4439}
4440impl ::core::default::Default for Adansb0 {
4441    #[inline(always)]
4442    fn default() -> Adansb0 {
4443        <crate::RegValueT<Adansb0_SPEC> as RegisterValue<_>>::new(0)
4444    }
4445}
4446pub mod adansb0 {
4447
4448    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4449    pub struct Ansb00_SPEC;
4450    pub type Ansb00 = crate::EnumBitfieldStruct<u8, Ansb00_SPEC>;
4451    impl Ansb00 {
4452        #[doc = "Do not select associated input channel."]
4453        pub const _0: Self = Self::new(0);
4454
4455        #[doc = "Select associated input channel."]
4456        pub const _1: Self = Self::new(1);
4457    }
4458    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4459    pub struct Ansb01_SPEC;
4460    pub type Ansb01 = crate::EnumBitfieldStruct<u8, Ansb01_SPEC>;
4461    impl Ansb01 {
4462        #[doc = "Do not select associated input channel."]
4463        pub const _0: Self = Self::new(0);
4464
4465        #[doc = "Select associated input channel."]
4466        pub const _1: Self = Self::new(1);
4467    }
4468    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4469    pub struct Ansb02_SPEC;
4470    pub type Ansb02 = crate::EnumBitfieldStruct<u8, Ansb02_SPEC>;
4471    impl Ansb02 {
4472        #[doc = "Do not select associated input channel."]
4473        pub const _0: Self = Self::new(0);
4474
4475        #[doc = "Select associated input channel."]
4476        pub const _1: Self = Self::new(1);
4477    }
4478    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4479    pub struct Ansb03_SPEC;
4480    pub type Ansb03 = crate::EnumBitfieldStruct<u8, Ansb03_SPEC>;
4481    impl Ansb03 {
4482        #[doc = "Do not select associated input channel."]
4483        pub const _0: Self = Self::new(0);
4484
4485        #[doc = "Select associated input channel."]
4486        pub const _1: Self = Self::new(1);
4487    }
4488    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4489    pub struct Ansb04_SPEC;
4490    pub type Ansb04 = crate::EnumBitfieldStruct<u8, Ansb04_SPEC>;
4491    impl Ansb04 {
4492        #[doc = "Do not select associated input channel."]
4493        pub const _0: Self = Self::new(0);
4494
4495        #[doc = "Select associated input channel."]
4496        pub const _1: Self = Self::new(1);
4497    }
4498    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4499    pub struct Ansb05_SPEC;
4500    pub type Ansb05 = crate::EnumBitfieldStruct<u8, Ansb05_SPEC>;
4501    impl Ansb05 {
4502        #[doc = "Do not select associated input channel."]
4503        pub const _0: Self = Self::new(0);
4504
4505        #[doc = "Select associated input channel."]
4506        pub const _1: Self = Self::new(1);
4507    }
4508    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4509    pub struct Ansb06_SPEC;
4510    pub type Ansb06 = crate::EnumBitfieldStruct<u8, Ansb06_SPEC>;
4511    impl Ansb06 {
4512        #[doc = "Do not select associated input channel."]
4513        pub const _0: Self = Self::new(0);
4514
4515        #[doc = "Select associated input channel."]
4516        pub const _1: Self = Self::new(1);
4517    }
4518    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4519    pub struct Ansb07_SPEC;
4520    pub type Ansb07 = crate::EnumBitfieldStruct<u8, Ansb07_SPEC>;
4521    impl Ansb07 {
4522        #[doc = "Do not select associated input channel."]
4523        pub const _0: Self = Self::new(0);
4524
4525        #[doc = "Select associated input channel."]
4526        pub const _1: Self = Self::new(1);
4527    }
4528    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4529    pub struct Ansb08_SPEC;
4530    pub type Ansb08 = crate::EnumBitfieldStruct<u8, Ansb08_SPEC>;
4531    impl Ansb08 {
4532        #[doc = "Do not select associated input channel."]
4533        pub const _0: Self = Self::new(0);
4534
4535        #[doc = "Select associated input channel."]
4536        pub const _1: Self = Self::new(1);
4537    }
4538    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4539    pub struct Ansb09_SPEC;
4540    pub type Ansb09 = crate::EnumBitfieldStruct<u8, Ansb09_SPEC>;
4541    impl Ansb09 {
4542        #[doc = "Do not select associated input channel."]
4543        pub const _0: Self = Self::new(0);
4544
4545        #[doc = "Select associated input channel."]
4546        pub const _1: Self = Self::new(1);
4547    }
4548    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4549    pub struct Ansb10_SPEC;
4550    pub type Ansb10 = crate::EnumBitfieldStruct<u8, Ansb10_SPEC>;
4551    impl Ansb10 {
4552        #[doc = "Do not select associated input channel."]
4553        pub const _0: Self = Self::new(0);
4554
4555        #[doc = "Select associated input channel."]
4556        pub const _1: Self = Self::new(1);
4557    }
4558    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4559    pub struct Ansb11_SPEC;
4560    pub type Ansb11 = crate::EnumBitfieldStruct<u8, Ansb11_SPEC>;
4561    impl Ansb11 {
4562        #[doc = "Do not select associated input channel."]
4563        pub const _0: Self = Self::new(0);
4564
4565        #[doc = "Select associated input channel."]
4566        pub const _1: Self = Self::new(1);
4567    }
4568    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4569    pub struct Ansb12_SPEC;
4570    pub type Ansb12 = crate::EnumBitfieldStruct<u8, Ansb12_SPEC>;
4571    impl Ansb12 {
4572        #[doc = "Do not select associated input channel."]
4573        pub const _0: Self = Self::new(0);
4574
4575        #[doc = "Select associated input channel."]
4576        pub const _1: Self = Self::new(1);
4577    }
4578    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4579    pub struct Ansb13_SPEC;
4580    pub type Ansb13 = crate::EnumBitfieldStruct<u8, Ansb13_SPEC>;
4581    impl Ansb13 {
4582        #[doc = "Do not select associated input channel."]
4583        pub const _0: Self = Self::new(0);
4584
4585        #[doc = "Select associated input channel."]
4586        pub const _1: Self = Self::new(1);
4587    }
4588    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4589    pub struct Ansb14_SPEC;
4590    pub type Ansb14 = crate::EnumBitfieldStruct<u8, Ansb14_SPEC>;
4591    impl Ansb14 {
4592        #[doc = "Do not select associated input channel."]
4593        pub const _0: Self = Self::new(0);
4594
4595        #[doc = "Select associated input channel."]
4596        pub const _1: Self = Self::new(1);
4597    }
4598    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4599    pub struct Ansb15_SPEC;
4600    pub type Ansb15 = crate::EnumBitfieldStruct<u8, Ansb15_SPEC>;
4601    impl Ansb15 {
4602        #[doc = "Do not select associated input channel."]
4603        pub const _0: Self = Self::new(0);
4604
4605        #[doc = "Select associated input channel."]
4606        pub const _1: Self = Self::new(1);
4607    }
4608}
4609#[doc(hidden)]
4610#[derive(Copy, Clone, Eq, PartialEq)]
4611pub struct Adansb1_SPEC;
4612impl crate::sealed::RegSpec for Adansb1_SPEC {
4613    type DataType = u16;
4614}
4615
4616#[doc = "A/D Channel Select Register B1"]
4617pub type Adansb1 = crate::RegValueT<Adansb1_SPEC>;
4618
4619impl Adansb1 {
4620    #[doc = "A/D Conversion Channels Select"]
4621    #[inline(always)]
4622    pub fn ansb16(
4623        self,
4624    ) -> crate::common::RegisterField<
4625        0,
4626        0x1,
4627        1,
4628        0,
4629        adansb1::Ansb16,
4630        adansb1::Ansb16,
4631        Adansb1_SPEC,
4632        crate::common::RW,
4633    > {
4634        crate::common::RegisterField::<
4635            0,
4636            0x1,
4637            1,
4638            0,
4639            adansb1::Ansb16,
4640            adansb1::Ansb16,
4641            Adansb1_SPEC,
4642            crate::common::RW,
4643        >::from_register(self, 0)
4644    }
4645
4646    #[doc = "A/D Conversion Channels Select"]
4647    #[inline(always)]
4648    pub fn ansb17(
4649        self,
4650    ) -> crate::common::RegisterField<
4651        1,
4652        0x1,
4653        1,
4654        0,
4655        adansb1::Ansb17,
4656        adansb1::Ansb17,
4657        Adansb1_SPEC,
4658        crate::common::RW,
4659    > {
4660        crate::common::RegisterField::<
4661            1,
4662            0x1,
4663            1,
4664            0,
4665            adansb1::Ansb17,
4666            adansb1::Ansb17,
4667            Adansb1_SPEC,
4668            crate::common::RW,
4669        >::from_register(self, 0)
4670    }
4671
4672    #[doc = "A/D Conversion Channels Select"]
4673    #[inline(always)]
4674    pub fn ansb18(
4675        self,
4676    ) -> crate::common::RegisterField<
4677        2,
4678        0x1,
4679        1,
4680        0,
4681        adansb1::Ansb18,
4682        adansb1::Ansb18,
4683        Adansb1_SPEC,
4684        crate::common::RW,
4685    > {
4686        crate::common::RegisterField::<
4687            2,
4688            0x1,
4689            1,
4690            0,
4691            adansb1::Ansb18,
4692            adansb1::Ansb18,
4693            Adansb1_SPEC,
4694            crate::common::RW,
4695        >::from_register(self, 0)
4696    }
4697
4698    #[doc = "A/D Conversion Channels Select"]
4699    #[inline(always)]
4700    pub fn ansb19(
4701        self,
4702    ) -> crate::common::RegisterField<
4703        3,
4704        0x1,
4705        1,
4706        0,
4707        adansb1::Ansb19,
4708        adansb1::Ansb19,
4709        Adansb1_SPEC,
4710        crate::common::RW,
4711    > {
4712        crate::common::RegisterField::<
4713            3,
4714            0x1,
4715            1,
4716            0,
4717            adansb1::Ansb19,
4718            adansb1::Ansb19,
4719            Adansb1_SPEC,
4720            crate::common::RW,
4721        >::from_register(self, 0)
4722    }
4723
4724    #[doc = "A/D Conversion Channels Select"]
4725    #[inline(always)]
4726    pub fn ansb20(
4727        self,
4728    ) -> crate::common::RegisterField<
4729        4,
4730        0x1,
4731        1,
4732        0,
4733        adansb1::Ansb20,
4734        adansb1::Ansb20,
4735        Adansb1_SPEC,
4736        crate::common::RW,
4737    > {
4738        crate::common::RegisterField::<
4739            4,
4740            0x1,
4741            1,
4742            0,
4743            adansb1::Ansb20,
4744            adansb1::Ansb20,
4745            Adansb1_SPEC,
4746            crate::common::RW,
4747        >::from_register(self, 0)
4748    }
4749
4750    #[doc = "A/D Conversion Channels Select"]
4751    #[inline(always)]
4752    pub fn ansb21(
4753        self,
4754    ) -> crate::common::RegisterField<
4755        5,
4756        0x1,
4757        1,
4758        0,
4759        adansb1::Ansb21,
4760        adansb1::Ansb21,
4761        Adansb1_SPEC,
4762        crate::common::RW,
4763    > {
4764        crate::common::RegisterField::<
4765            5,
4766            0x1,
4767            1,
4768            0,
4769            adansb1::Ansb21,
4770            adansb1::Ansb21,
4771            Adansb1_SPEC,
4772            crate::common::RW,
4773        >::from_register(self, 0)
4774    }
4775
4776    #[doc = "A/D Conversion Channels Select"]
4777    #[inline(always)]
4778    pub fn ansb22(
4779        self,
4780    ) -> crate::common::RegisterField<
4781        6,
4782        0x1,
4783        1,
4784        0,
4785        adansb1::Ansb22,
4786        adansb1::Ansb22,
4787        Adansb1_SPEC,
4788        crate::common::RW,
4789    > {
4790        crate::common::RegisterField::<
4791            6,
4792            0x1,
4793            1,
4794            0,
4795            adansb1::Ansb22,
4796            adansb1::Ansb22,
4797            Adansb1_SPEC,
4798            crate::common::RW,
4799        >::from_register(self, 0)
4800    }
4801
4802    #[doc = "A/D Conversion Channels Select"]
4803    #[inline(always)]
4804    pub fn ansb23(
4805        self,
4806    ) -> crate::common::RegisterField<
4807        7,
4808        0x1,
4809        1,
4810        0,
4811        adansb1::Ansb23,
4812        adansb1::Ansb23,
4813        Adansb1_SPEC,
4814        crate::common::RW,
4815    > {
4816        crate::common::RegisterField::<
4817            7,
4818            0x1,
4819            1,
4820            0,
4821            adansb1::Ansb23,
4822            adansb1::Ansb23,
4823            Adansb1_SPEC,
4824            crate::common::RW,
4825        >::from_register(self, 0)
4826    }
4827
4828    #[doc = "A/D Conversion Channels Select"]
4829    #[inline(always)]
4830    pub fn ansb24(
4831        self,
4832    ) -> crate::common::RegisterField<
4833        8,
4834        0x1,
4835        1,
4836        0,
4837        adansb1::Ansb24,
4838        adansb1::Ansb24,
4839        Adansb1_SPEC,
4840        crate::common::RW,
4841    > {
4842        crate::common::RegisterField::<
4843            8,
4844            0x1,
4845            1,
4846            0,
4847            adansb1::Ansb24,
4848            adansb1::Ansb24,
4849            Adansb1_SPEC,
4850            crate::common::RW,
4851        >::from_register(self, 0)
4852    }
4853
4854    #[doc = "A/D Conversion Channels Select"]
4855    #[inline(always)]
4856    pub fn ansb25(
4857        self,
4858    ) -> crate::common::RegisterField<
4859        9,
4860        0x1,
4861        1,
4862        0,
4863        adansb1::Ansb25,
4864        adansb1::Ansb25,
4865        Adansb1_SPEC,
4866        crate::common::RW,
4867    > {
4868        crate::common::RegisterField::<
4869            9,
4870            0x1,
4871            1,
4872            0,
4873            adansb1::Ansb25,
4874            adansb1::Ansb25,
4875            Adansb1_SPEC,
4876            crate::common::RW,
4877        >::from_register(self, 0)
4878    }
4879
4880    #[doc = "A/D Conversion Channels Select"]
4881    #[inline(always)]
4882    pub fn ansb26(
4883        self,
4884    ) -> crate::common::RegisterField<
4885        10,
4886        0x1,
4887        1,
4888        0,
4889        adansb1::Ansb26,
4890        adansb1::Ansb26,
4891        Adansb1_SPEC,
4892        crate::common::RW,
4893    > {
4894        crate::common::RegisterField::<
4895            10,
4896            0x1,
4897            1,
4898            0,
4899            adansb1::Ansb26,
4900            adansb1::Ansb26,
4901            Adansb1_SPEC,
4902            crate::common::RW,
4903        >::from_register(self, 0)
4904    }
4905
4906    #[doc = "A/D Conversion Channels Select"]
4907    #[inline(always)]
4908    pub fn ansb27(
4909        self,
4910    ) -> crate::common::RegisterField<
4911        11,
4912        0x1,
4913        1,
4914        0,
4915        adansb1::Ansb27,
4916        adansb1::Ansb27,
4917        Adansb1_SPEC,
4918        crate::common::RW,
4919    > {
4920        crate::common::RegisterField::<
4921            11,
4922            0x1,
4923            1,
4924            0,
4925            adansb1::Ansb27,
4926            adansb1::Ansb27,
4927            Adansb1_SPEC,
4928            crate::common::RW,
4929        >::from_register(self, 0)
4930    }
4931
4932    #[doc = "A/D Conversion Channels Select"]
4933    #[inline(always)]
4934    pub fn ansb28(
4935        self,
4936    ) -> crate::common::RegisterField<
4937        12,
4938        0x1,
4939        1,
4940        0,
4941        adansb1::Ansb28,
4942        adansb1::Ansb28,
4943        Adansb1_SPEC,
4944        crate::common::RW,
4945    > {
4946        crate::common::RegisterField::<
4947            12,
4948            0x1,
4949            1,
4950            0,
4951            adansb1::Ansb28,
4952            adansb1::Ansb28,
4953            Adansb1_SPEC,
4954            crate::common::RW,
4955        >::from_register(self, 0)
4956    }
4957
4958    #[doc = "A/D Conversion Channels Select"]
4959    #[inline(always)]
4960    pub fn ansb29(
4961        self,
4962    ) -> crate::common::RegisterField<
4963        13,
4964        0x1,
4965        1,
4966        0,
4967        adansb1::Ansb29,
4968        adansb1::Ansb29,
4969        Adansb1_SPEC,
4970        crate::common::RW,
4971    > {
4972        crate::common::RegisterField::<
4973            13,
4974            0x1,
4975            1,
4976            0,
4977            adansb1::Ansb29,
4978            adansb1::Ansb29,
4979            Adansb1_SPEC,
4980            crate::common::RW,
4981        >::from_register(self, 0)
4982    }
4983
4984    #[doc = "A/D Conversion Channels Select"]
4985    #[inline(always)]
4986    pub fn ansb30(
4987        self,
4988    ) -> crate::common::RegisterField<
4989        14,
4990        0x1,
4991        1,
4992        0,
4993        adansb1::Ansb30,
4994        adansb1::Ansb30,
4995        Adansb1_SPEC,
4996        crate::common::RW,
4997    > {
4998        crate::common::RegisterField::<
4999            14,
5000            0x1,
5001            1,
5002            0,
5003            adansb1::Ansb30,
5004            adansb1::Ansb30,
5005            Adansb1_SPEC,
5006            crate::common::RW,
5007        >::from_register(self, 0)
5008    }
5009
5010    #[doc = "A/D Conversion Channels Select"]
5011    #[inline(always)]
5012    pub fn ansb31(
5013        self,
5014    ) -> crate::common::RegisterField<
5015        15,
5016        0x1,
5017        1,
5018        0,
5019        adansb1::Ansb31,
5020        adansb1::Ansb31,
5021        Adansb1_SPEC,
5022        crate::common::RW,
5023    > {
5024        crate::common::RegisterField::<
5025            15,
5026            0x1,
5027            1,
5028            0,
5029            adansb1::Ansb31,
5030            adansb1::Ansb31,
5031            Adansb1_SPEC,
5032            crate::common::RW,
5033        >::from_register(self, 0)
5034    }
5035}
5036impl ::core::default::Default for Adansb1 {
5037    #[inline(always)]
5038    fn default() -> Adansb1 {
5039        <crate::RegValueT<Adansb1_SPEC> as RegisterValue<_>>::new(0)
5040    }
5041}
5042pub mod adansb1 {
5043
5044    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5045    pub struct Ansb16_SPEC;
5046    pub type Ansb16 = crate::EnumBitfieldStruct<u8, Ansb16_SPEC>;
5047    impl Ansb16 {
5048        #[doc = "Do not select associated input channel."]
5049        pub const _0: Self = Self::new(0);
5050
5051        #[doc = "Select associated input channel."]
5052        pub const _1: Self = Self::new(1);
5053    }
5054    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5055    pub struct Ansb17_SPEC;
5056    pub type Ansb17 = crate::EnumBitfieldStruct<u8, Ansb17_SPEC>;
5057    impl Ansb17 {
5058        #[doc = "Do not select associated input channel."]
5059        pub const _0: Self = Self::new(0);
5060
5061        #[doc = "Select associated input channel."]
5062        pub const _1: Self = Self::new(1);
5063    }
5064    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5065    pub struct Ansb18_SPEC;
5066    pub type Ansb18 = crate::EnumBitfieldStruct<u8, Ansb18_SPEC>;
5067    impl Ansb18 {
5068        #[doc = "Do not select associated input channel."]
5069        pub const _0: Self = Self::new(0);
5070
5071        #[doc = "Select associated input channel."]
5072        pub const _1: Self = Self::new(1);
5073    }
5074    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5075    pub struct Ansb19_SPEC;
5076    pub type Ansb19 = crate::EnumBitfieldStruct<u8, Ansb19_SPEC>;
5077    impl Ansb19 {
5078        #[doc = "Do not select associated input channel."]
5079        pub const _0: Self = Self::new(0);
5080
5081        #[doc = "Select associated input channel."]
5082        pub const _1: Self = Self::new(1);
5083    }
5084    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5085    pub struct Ansb20_SPEC;
5086    pub type Ansb20 = crate::EnumBitfieldStruct<u8, Ansb20_SPEC>;
5087    impl Ansb20 {
5088        #[doc = "Do not select associated input channel."]
5089        pub const _0: Self = Self::new(0);
5090
5091        #[doc = "Select associated input channel."]
5092        pub const _1: Self = Self::new(1);
5093    }
5094    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5095    pub struct Ansb21_SPEC;
5096    pub type Ansb21 = crate::EnumBitfieldStruct<u8, Ansb21_SPEC>;
5097    impl Ansb21 {
5098        #[doc = "Do not select associated input channel."]
5099        pub const _0: Self = Self::new(0);
5100
5101        #[doc = "Select associated input channel."]
5102        pub const _1: Self = Self::new(1);
5103    }
5104    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5105    pub struct Ansb22_SPEC;
5106    pub type Ansb22 = crate::EnumBitfieldStruct<u8, Ansb22_SPEC>;
5107    impl Ansb22 {
5108        #[doc = "Do not select associated input channel."]
5109        pub const _0: Self = Self::new(0);
5110
5111        #[doc = "Select associated input channel."]
5112        pub const _1: Self = Self::new(1);
5113    }
5114    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5115    pub struct Ansb23_SPEC;
5116    pub type Ansb23 = crate::EnumBitfieldStruct<u8, Ansb23_SPEC>;
5117    impl Ansb23 {
5118        #[doc = "Do not select associated input channel."]
5119        pub const _0: Self = Self::new(0);
5120
5121        #[doc = "Select associated input channel."]
5122        pub const _1: Self = Self::new(1);
5123    }
5124    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5125    pub struct Ansb24_SPEC;
5126    pub type Ansb24 = crate::EnumBitfieldStruct<u8, Ansb24_SPEC>;
5127    impl Ansb24 {
5128        #[doc = "Do not select associated input channel."]
5129        pub const _0: Self = Self::new(0);
5130
5131        #[doc = "Select associated input channel."]
5132        pub const _1: Self = Self::new(1);
5133    }
5134    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5135    pub struct Ansb25_SPEC;
5136    pub type Ansb25 = crate::EnumBitfieldStruct<u8, Ansb25_SPEC>;
5137    impl Ansb25 {
5138        #[doc = "Do not select associated input channel."]
5139        pub const _0: Self = Self::new(0);
5140
5141        #[doc = "Select associated input channel."]
5142        pub const _1: Self = Self::new(1);
5143    }
5144    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5145    pub struct Ansb26_SPEC;
5146    pub type Ansb26 = crate::EnumBitfieldStruct<u8, Ansb26_SPEC>;
5147    impl Ansb26 {
5148        #[doc = "Do not select associated input channel."]
5149        pub const _0: Self = Self::new(0);
5150
5151        #[doc = "Select associated input channel."]
5152        pub const _1: Self = Self::new(1);
5153    }
5154    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5155    pub struct Ansb27_SPEC;
5156    pub type Ansb27 = crate::EnumBitfieldStruct<u8, Ansb27_SPEC>;
5157    impl Ansb27 {
5158        #[doc = "Do not select associated input channel."]
5159        pub const _0: Self = Self::new(0);
5160
5161        #[doc = "Select associated input channel."]
5162        pub const _1: Self = Self::new(1);
5163    }
5164    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5165    pub struct Ansb28_SPEC;
5166    pub type Ansb28 = crate::EnumBitfieldStruct<u8, Ansb28_SPEC>;
5167    impl Ansb28 {
5168        #[doc = "Do not select associated input channel."]
5169        pub const _0: Self = Self::new(0);
5170
5171        #[doc = "Select associated input channel."]
5172        pub const _1: Self = Self::new(1);
5173    }
5174    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5175    pub struct Ansb29_SPEC;
5176    pub type Ansb29 = crate::EnumBitfieldStruct<u8, Ansb29_SPEC>;
5177    impl Ansb29 {
5178        #[doc = "Do not select associated input channel."]
5179        pub const _0: Self = Self::new(0);
5180
5181        #[doc = "Select associated input channel."]
5182        pub const _1: Self = Self::new(1);
5183    }
5184    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5185    pub struct Ansb30_SPEC;
5186    pub type Ansb30 = crate::EnumBitfieldStruct<u8, Ansb30_SPEC>;
5187    impl Ansb30 {
5188        #[doc = "Do not select associated input channel."]
5189        pub const _0: Self = Self::new(0);
5190
5191        #[doc = "Select associated input channel."]
5192        pub const _1: Self = Self::new(1);
5193    }
5194    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5195    pub struct Ansb31_SPEC;
5196    pub type Ansb31 = crate::EnumBitfieldStruct<u8, Ansb31_SPEC>;
5197    impl Ansb31 {
5198        #[doc = "Do not select associated input channel."]
5199        pub const _0: Self = Self::new(0);
5200
5201        #[doc = "Select associated input channel."]
5202        pub const _1: Self = Self::new(1);
5203    }
5204}
5205#[doc(hidden)]
5206#[derive(Copy, Clone, Eq, PartialEq)]
5207pub struct Addbldr_SPEC;
5208impl crate::sealed::RegSpec for Addbldr_SPEC {
5209    type DataType = u16;
5210}
5211
5212#[doc = "A/D Data Duplexing Register"]
5213pub type Addbldr = crate::RegValueT<Addbldr_SPEC>;
5214
5215impl Addbldr {
5216    #[doc = "Converted Value 15 to 0"]
5217    #[inline(always)]
5218    pub fn addbldr(
5219        self,
5220    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldr_SPEC, crate::common::R>
5221    {
5222        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldr_SPEC,crate::common::R>::from_register(self,0)
5223    }
5224}
5225impl ::core::default::Default for Addbldr {
5226    #[inline(always)]
5227    fn default() -> Addbldr {
5228        <crate::RegValueT<Addbldr_SPEC> as RegisterValue<_>>::new(0)
5229    }
5230}
5231
5232#[doc(hidden)]
5233#[derive(Copy, Clone, Eq, PartialEq)]
5234pub struct Adtsdr_SPEC;
5235impl crate::sealed::RegSpec for Adtsdr_SPEC {
5236    type DataType = u16;
5237}
5238
5239#[doc = "A/D Temperature Sensor Data Register"]
5240pub type Adtsdr = crate::RegValueT<Adtsdr_SPEC>;
5241
5242impl Adtsdr {
5243    #[doc = "Converted Value 15 to 0"]
5244    #[inline(always)]
5245    pub fn adtsdr(
5246        self,
5247    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adtsdr_SPEC, crate::common::R>
5248    {
5249        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adtsdr_SPEC,crate::common::R>::from_register(self,0)
5250    }
5251}
5252impl ::core::default::Default for Adtsdr {
5253    #[inline(always)]
5254    fn default() -> Adtsdr {
5255        <crate::RegValueT<Adtsdr_SPEC> as RegisterValue<_>>::new(0)
5256    }
5257}
5258
5259#[doc(hidden)]
5260#[derive(Copy, Clone, Eq, PartialEq)]
5261pub struct Adocdr_SPEC;
5262impl crate::sealed::RegSpec for Adocdr_SPEC {
5263    type DataType = u16;
5264}
5265
5266#[doc = "A/D Internal Reference Voltage Data Register"]
5267pub type Adocdr = crate::RegValueT<Adocdr_SPEC>;
5268
5269impl Adocdr {
5270    #[doc = "Converted Value 15 to 0"]
5271    #[inline(always)]
5272    pub fn adocdr(
5273        self,
5274    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adocdr_SPEC, crate::common::R>
5275    {
5276        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adocdr_SPEC,crate::common::R>::from_register(self,0)
5277    }
5278}
5279impl ::core::default::Default for Adocdr {
5280    #[inline(always)]
5281    fn default() -> Adocdr {
5282        <crate::RegValueT<Adocdr_SPEC> as RegisterValue<_>>::new(0)
5283    }
5284}
5285
5286#[doc(hidden)]
5287#[derive(Copy, Clone, Eq, PartialEq)]
5288pub struct Adrd_SPEC;
5289impl crate::sealed::RegSpec for Adrd_SPEC {
5290    type DataType = u16;
5291}
5292
5293#[doc = "A/D Self-Diagnosis Data Register"]
5294pub type Adrd = crate::RegValueT<Adrd_SPEC>;
5295
5296impl Adrd {
5297    #[doc = "Converted Value 11 to 0"]
5298    #[inline(always)]
5299    pub fn ad(
5300        self,
5301    ) -> crate::common::RegisterField<0, 0xfff, 1, 0, u16, u16, Adrd_SPEC, crate::common::R> {
5302        crate::common::RegisterField::<0,0xfff,1,0,u16,u16,Adrd_SPEC,crate::common::R>::from_register(self,0)
5303    }
5304
5305    #[doc = "Self-Diagnosis Status"]
5306    #[inline(always)]
5307    pub fn diagst(
5308        self,
5309    ) -> crate::common::RegisterField<
5310        14,
5311        0x3,
5312        1,
5313        0,
5314        adrd::Diagst,
5315        adrd::Diagst,
5316        Adrd_SPEC,
5317        crate::common::R,
5318    > {
5319        crate::common::RegisterField::<
5320            14,
5321            0x3,
5322            1,
5323            0,
5324            adrd::Diagst,
5325            adrd::Diagst,
5326            Adrd_SPEC,
5327            crate::common::R,
5328        >::from_register(self, 0)
5329    }
5330}
5331impl ::core::default::Default for Adrd {
5332    #[inline(always)]
5333    fn default() -> Adrd {
5334        <crate::RegValueT<Adrd_SPEC> as RegisterValue<_>>::new(0)
5335    }
5336}
5337pub mod adrd {
5338
5339    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5340    pub struct Diagst_SPEC;
5341    pub type Diagst = crate::EnumBitfieldStruct<u8, Diagst_SPEC>;
5342    impl Diagst {
5343        #[doc = "Self-diagnosis not executed after power-on."]
5344        pub const _00: Self = Self::new(0);
5345
5346        #[doc = "Self-diagnosis was executed using the 0 V voltage."]
5347        pub const _01: Self = Self::new(1);
5348
5349        #[doc = "Self-diagnosis was executed using the reference voltage × 1/2."]
5350        pub const _10: Self = Self::new(2);
5351
5352        #[doc = "Self-diagnosis was executed using the reference voltage ."]
5353        pub const _11: Self = Self::new(3);
5354    }
5355}
5356#[doc(hidden)]
5357#[derive(Copy, Clone, Eq, PartialEq)]
5358pub struct Addr_SPEC;
5359impl crate::sealed::RegSpec for Addr_SPEC {
5360    type DataType = u16;
5361}
5362
5363#[doc = "A/D Data Registers %s"]
5364pub type Addr = crate::RegValueT<Addr_SPEC>;
5365
5366impl Addr {
5367    #[doc = "Converted Value 15 to 0"]
5368    #[inline(always)]
5369    pub fn addr(
5370        self,
5371    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addr_SPEC, crate::common::R> {
5372        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addr_SPEC,crate::common::R>::from_register(self,0)
5373    }
5374}
5375impl ::core::default::Default for Addr {
5376    #[inline(always)]
5377    fn default() -> Addr {
5378        <crate::RegValueT<Addr_SPEC> as RegisterValue<_>>::new(0)
5379    }
5380}
5381
5382#[doc(hidden)]
5383#[derive(Copy, Clone, Eq, PartialEq)]
5384pub struct Addr16_SPEC;
5385impl crate::sealed::RegSpec for Addr16_SPEC {
5386    type DataType = u16;
5387}
5388
5389#[doc = "A/D Data Registers 16"]
5390pub type Addr16 = crate::RegValueT<Addr16_SPEC>;
5391
5392impl Addr16 {
5393    #[doc = "Converted Value 15 to 0"]
5394    #[inline(always)]
5395    pub fn addr(
5396        self,
5397    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addr16_SPEC, crate::common::R>
5398    {
5399        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addr16_SPEC,crate::common::R>::from_register(self,0)
5400    }
5401}
5402impl ::core::default::Default for Addr16 {
5403    #[inline(always)]
5404    fn default() -> Addr16 {
5405        <crate::RegValueT<Addr16_SPEC> as RegisterValue<_>>::new(0)
5406    }
5407}
5408
5409#[doc(hidden)]
5410#[derive(Copy, Clone, Eq, PartialEq)]
5411pub struct Addiscr_SPEC;
5412impl crate::sealed::RegSpec for Addiscr_SPEC {
5413    type DataType = u8;
5414}
5415
5416#[doc = "A/D Disconnection Detection Control Register"]
5417pub type Addiscr = crate::RegValueT<Addiscr_SPEC>;
5418
5419impl Addiscr {
5420    #[doc = "Disconnection Detection Assist Setting"]
5421    #[inline(always)]
5422    pub fn adndis(
5423        self,
5424    ) -> crate::common::RegisterField<
5425        0,
5426        0xf,
5427        1,
5428        0,
5429        addiscr::Adndis,
5430        addiscr::Adndis,
5431        Addiscr_SPEC,
5432        crate::common::RW,
5433    > {
5434        crate::common::RegisterField::<
5435            0,
5436            0xf,
5437            1,
5438            0,
5439            addiscr::Adndis,
5440            addiscr::Adndis,
5441            Addiscr_SPEC,
5442            crate::common::RW,
5443        >::from_register(self, 0)
5444    }
5445
5446    #[doc = "Precharge/discharge select"]
5447    #[inline(always)]
5448    pub fn pchg(
5449        self,
5450    ) -> crate::common::RegisterField<
5451        4,
5452        0x1,
5453        1,
5454        0,
5455        addiscr::Pchg,
5456        addiscr::Pchg,
5457        Addiscr_SPEC,
5458        crate::common::RW,
5459    > {
5460        crate::common::RegisterField::<
5461            4,
5462            0x1,
5463            1,
5464            0,
5465            addiscr::Pchg,
5466            addiscr::Pchg,
5467            Addiscr_SPEC,
5468            crate::common::RW,
5469        >::from_register(self, 0)
5470    }
5471}
5472impl ::core::default::Default for Addiscr {
5473    #[inline(always)]
5474    fn default() -> Addiscr {
5475        <crate::RegValueT<Addiscr_SPEC> as RegisterValue<_>>::new(0)
5476    }
5477}
5478pub mod addiscr {
5479
5480    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5481    pub struct Adndis_SPEC;
5482    pub type Adndis = crate::EnumBitfieldStruct<u8, Adndis_SPEC>;
5483    impl Adndis {
5484        #[doc = "The disconnection detection assist function is disabled"]
5485        pub const _0_X_0: Self = Self::new(0);
5486
5487        #[doc = "Setting prohibited"]
5488        pub const _0_X_1: Self = Self::new(1);
5489    }
5490    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5491    pub struct Pchg_SPEC;
5492    pub type Pchg = crate::EnumBitfieldStruct<u8, Pchg_SPEC>;
5493    impl Pchg {
5494        #[doc = "Discharge"]
5495        pub const _0: Self = Self::new(0);
5496
5497        #[doc = "Precharge"]
5498        pub const _1: Self = Self::new(1);
5499    }
5500}
5501#[doc(hidden)]
5502#[derive(Copy, Clone, Eq, PartialEq)]
5503pub struct Adgspcr_SPEC;
5504impl crate::sealed::RegSpec for Adgspcr_SPEC {
5505    type DataType = u16;
5506}
5507
5508#[doc = "A/D Group Scan Priority Control Register"]
5509pub type Adgspcr = crate::RegValueT<Adgspcr_SPEC>;
5510
5511impl Adgspcr {
5512    #[doc = "Group Priority Operation Setting"]
5513    #[inline(always)]
5514    pub fn pgs(
5515        self,
5516    ) -> crate::common::RegisterField<
5517        0,
5518        0x1,
5519        1,
5520        0,
5521        adgspcr::Pgs,
5522        adgspcr::Pgs,
5523        Adgspcr_SPEC,
5524        crate::common::RW,
5525    > {
5526        crate::common::RegisterField::<
5527            0,
5528            0x1,
5529            1,
5530            0,
5531            adgspcr::Pgs,
5532            adgspcr::Pgs,
5533            Adgspcr_SPEC,
5534            crate::common::RW,
5535        >::from_register(self, 0)
5536    }
5537
5538    #[doc = "Lower-Priority Group Restart Setting"]
5539    #[inline(always)]
5540    pub fn gbrscn(
5541        self,
5542    ) -> crate::common::RegisterField<
5543        1,
5544        0x1,
5545        1,
5546        0,
5547        adgspcr::Gbrscn,
5548        adgspcr::Gbrscn,
5549        Adgspcr_SPEC,
5550        crate::common::RW,
5551    > {
5552        crate::common::RegisterField::<
5553            1,
5554            0x1,
5555            1,
5556            0,
5557            adgspcr::Gbrscn,
5558            adgspcr::Gbrscn,
5559            Adgspcr_SPEC,
5560            crate::common::RW,
5561        >::from_register(self, 0)
5562    }
5563
5564    #[doc = "Enabled only when PGS = 1 and GBRSCN = 1."]
5565    #[inline(always)]
5566    pub fn lgrrs(
5567        self,
5568    ) -> crate::common::RegisterField<
5569        14,
5570        0x1,
5571        1,
5572        0,
5573        adgspcr::Lgrrs,
5574        adgspcr::Lgrrs,
5575        Adgspcr_SPEC,
5576        crate::common::RW,
5577    > {
5578        crate::common::RegisterField::<
5579            14,
5580            0x1,
5581            1,
5582            0,
5583            adgspcr::Lgrrs,
5584            adgspcr::Lgrrs,
5585            Adgspcr_SPEC,
5586            crate::common::RW,
5587        >::from_register(self, 0)
5588    }
5589
5590    #[doc = "Single Scan Continuous Start"]
5591    #[inline(always)]
5592    pub fn gbrp(
5593        self,
5594    ) -> crate::common::RegisterField<
5595        15,
5596        0x1,
5597        1,
5598        0,
5599        adgspcr::Gbrp,
5600        adgspcr::Gbrp,
5601        Adgspcr_SPEC,
5602        crate::common::RW,
5603    > {
5604        crate::common::RegisterField::<
5605            15,
5606            0x1,
5607            1,
5608            0,
5609            adgspcr::Gbrp,
5610            adgspcr::Gbrp,
5611            Adgspcr_SPEC,
5612            crate::common::RW,
5613        >::from_register(self, 0)
5614    }
5615}
5616impl ::core::default::Default for Adgspcr {
5617    #[inline(always)]
5618    fn default() -> Adgspcr {
5619        <crate::RegValueT<Adgspcr_SPEC> as RegisterValue<_>>::new(0)
5620    }
5621}
5622pub mod adgspcr {
5623
5624    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5625    pub struct Pgs_SPEC;
5626    pub type Pgs = crate::EnumBitfieldStruct<u8, Pgs_SPEC>;
5627    impl Pgs {
5628        #[doc = "Operate without group priority control."]
5629        pub const _0: Self = Self::new(0);
5630
5631        #[doc = "Operate with group priority control."]
5632        pub const _1: Self = Self::new(1);
5633    }
5634    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5635    pub struct Gbrscn_SPEC;
5636    pub type Gbrscn = crate::EnumBitfieldStruct<u8, Gbrscn_SPEC>;
5637    impl Gbrscn {
5638        #[doc = "Disable rescanning of the group that was stopped in group priority operation"]
5639        pub const _0: Self = Self::new(0);
5640
5641        #[doc = "Enable rescanning of the group that was stopped in group priority operation."]
5642        pub const _1: Self = Self::new(1);
5643    }
5644    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5645    pub struct Lgrrs_SPEC;
5646    pub type Lgrrs = crate::EnumBitfieldStruct<u8, Lgrrs_SPEC>;
5647    impl Lgrrs {
5648        #[doc = "Start rescanning from the first channel for scanning"]
5649        pub const _0: Self = Self::new(0);
5650
5651        #[doc = "Start rescanning from the channel for which A/D conversion is not completed."]
5652        pub const _1: Self = Self::new(1);
5653    }
5654    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5655    pub struct Gbrp_SPEC;
5656    pub type Gbrp = crate::EnumBitfieldStruct<u8, Gbrp_SPEC>;
5657    impl Gbrp {
5658        #[doc = "Single scan is not continuously activated."]
5659        pub const _0: Self = Self::new(0);
5660
5661        #[doc = "Single scan for the group with the lower-priority is continuously activated."]
5662        pub const _1: Self = Self::new(1);
5663    }
5664}
5665#[doc(hidden)]
5666#[derive(Copy, Clone, Eq, PartialEq)]
5667pub struct Addbldra_SPEC;
5668impl crate::sealed::RegSpec for Addbldra_SPEC {
5669    type DataType = u16;
5670}
5671
5672#[doc = "A/D Data Duplexing Register A"]
5673pub type Addbldra = crate::RegValueT<Addbldra_SPEC>;
5674
5675impl Addbldra {
5676    #[doc = "Converted Value 15 to 0"]
5677    #[inline(always)]
5678    pub fn addbldr(
5679        self,
5680    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldra_SPEC, crate::common::R>
5681    {
5682        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldra_SPEC,crate::common::R>::from_register(self,0)
5683    }
5684}
5685impl ::core::default::Default for Addbldra {
5686    #[inline(always)]
5687    fn default() -> Addbldra {
5688        <crate::RegValueT<Addbldra_SPEC> as RegisterValue<_>>::new(0)
5689    }
5690}
5691
5692#[doc(hidden)]
5693#[derive(Copy, Clone, Eq, PartialEq)]
5694pub struct Addbldrb_SPEC;
5695impl crate::sealed::RegSpec for Addbldrb_SPEC {
5696    type DataType = u16;
5697}
5698
5699#[doc = "A/D Data Duplexing Register B"]
5700pub type Addbldrb = crate::RegValueT<Addbldrb_SPEC>;
5701
5702impl Addbldrb {
5703    #[doc = "Converted Value 15 to 0"]
5704    #[inline(always)]
5705    pub fn addbldr(
5706        self,
5707    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Addbldrb_SPEC, crate::common::R>
5708    {
5709        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Addbldrb_SPEC,crate::common::R>::from_register(self,0)
5710    }
5711}
5712impl ::core::default::Default for Addbldrb {
5713    #[inline(always)]
5714    fn default() -> Addbldrb {
5715        <crate::RegValueT<Addbldrb_SPEC> as RegisterValue<_>>::new(0)
5716    }
5717}
5718
5719#[doc(hidden)]
5720#[derive(Copy, Clone, Eq, PartialEq)]
5721pub struct Adwinmon_SPEC;
5722impl crate::sealed::RegSpec for Adwinmon_SPEC {
5723    type DataType = u8;
5724}
5725
5726#[doc = "A/D Compare Function Window A/B Status Monitor Register"]
5727pub type Adwinmon = crate::RegValueT<Adwinmon_SPEC>;
5728
5729impl Adwinmon {
5730    #[doc = "Combination Result Monitor"]
5731    #[inline(always)]
5732    pub fn moncomb(
5733        self,
5734    ) -> crate::common::RegisterField<
5735        0,
5736        0x1,
5737        1,
5738        0,
5739        adwinmon::Moncomb,
5740        adwinmon::Moncomb,
5741        Adwinmon_SPEC,
5742        crate::common::R,
5743    > {
5744        crate::common::RegisterField::<
5745            0,
5746            0x1,
5747            1,
5748            0,
5749            adwinmon::Moncomb,
5750            adwinmon::Moncomb,
5751            Adwinmon_SPEC,
5752            crate::common::R,
5753        >::from_register(self, 0)
5754    }
5755
5756    #[doc = "Comparison Result Monitor A"]
5757    #[inline(always)]
5758    pub fn moncmpa(
5759        self,
5760    ) -> crate::common::RegisterField<
5761        4,
5762        0x1,
5763        1,
5764        0,
5765        adwinmon::Moncmpa,
5766        adwinmon::Moncmpa,
5767        Adwinmon_SPEC,
5768        crate::common::R,
5769    > {
5770        crate::common::RegisterField::<
5771            4,
5772            0x1,
5773            1,
5774            0,
5775            adwinmon::Moncmpa,
5776            adwinmon::Moncmpa,
5777            Adwinmon_SPEC,
5778            crate::common::R,
5779        >::from_register(self, 0)
5780    }
5781
5782    #[doc = "Comparison Result Monitor B"]
5783    #[inline(always)]
5784    pub fn moncmpb(
5785        self,
5786    ) -> crate::common::RegisterField<
5787        5,
5788        0x1,
5789        1,
5790        0,
5791        adwinmon::Moncmpb,
5792        adwinmon::Moncmpb,
5793        Adwinmon_SPEC,
5794        crate::common::R,
5795    > {
5796        crate::common::RegisterField::<
5797            5,
5798            0x1,
5799            1,
5800            0,
5801            adwinmon::Moncmpb,
5802            adwinmon::Moncmpb,
5803            Adwinmon_SPEC,
5804            crate::common::R,
5805        >::from_register(self, 0)
5806    }
5807}
5808impl ::core::default::Default for Adwinmon {
5809    #[inline(always)]
5810    fn default() -> Adwinmon {
5811        <crate::RegValueT<Adwinmon_SPEC> as RegisterValue<_>>::new(0)
5812    }
5813}
5814pub mod adwinmon {
5815
5816    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5817    pub struct Moncomb_SPEC;
5818    pub type Moncomb = crate::EnumBitfieldStruct<u8, Moncomb_SPEC>;
5819    impl Moncomb {
5820        #[doc = "Window A/B composite conditions are not met."]
5821        pub const _0: Self = Self::new(0);
5822
5823        #[doc = "Window A/B composite conditions are met."]
5824        pub const _1: Self = Self::new(1);
5825    }
5826    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5827    pub struct Moncmpa_SPEC;
5828    pub type Moncmpa = crate::EnumBitfieldStruct<u8, Moncmpa_SPEC>;
5829    impl Moncmpa {
5830        #[doc = "Window A comparison conditions are not met."]
5831        pub const _0: Self = Self::new(0);
5832
5833        #[doc = "Window A comparison conditions are met."]
5834        pub const _1: Self = Self::new(1);
5835    }
5836    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5837    pub struct Moncmpb_SPEC;
5838    pub type Moncmpb = crate::EnumBitfieldStruct<u8, Moncmpb_SPEC>;
5839    impl Moncmpb {
5840        #[doc = "Window B comparison conditions are not met."]
5841        pub const _0: Self = Self::new(0);
5842
5843        #[doc = "Window B comparison conditions are met."]
5844        pub const _1: Self = Self::new(1);
5845    }
5846}
5847#[doc(hidden)]
5848#[derive(Copy, Clone, Eq, PartialEq)]
5849pub struct Adcmpcr_SPEC;
5850impl crate::sealed::RegSpec for Adcmpcr_SPEC {
5851    type DataType = u16;
5852}
5853
5854#[doc = "A/D Compare Function Control Register"]
5855pub type Adcmpcr = crate::RegValueT<Adcmpcr_SPEC>;
5856
5857impl Adcmpcr {
5858    #[doc = "Window A/B Composite Conditions Setting"]
5859    #[inline(always)]
5860    pub fn cmpab(
5861        self,
5862    ) -> crate::common::RegisterField<
5863        0,
5864        0x3,
5865        1,
5866        0,
5867        adcmpcr::Cmpab,
5868        adcmpcr::Cmpab,
5869        Adcmpcr_SPEC,
5870        crate::common::RW,
5871    > {
5872        crate::common::RegisterField::<
5873            0,
5874            0x3,
5875            1,
5876            0,
5877            adcmpcr::Cmpab,
5878            adcmpcr::Cmpab,
5879            Adcmpcr_SPEC,
5880            crate::common::RW,
5881        >::from_register(self, 0)
5882    }
5883
5884    #[doc = "Compare Window B Operation Enable"]
5885    #[inline(always)]
5886    pub fn cmpbe(
5887        self,
5888    ) -> crate::common::RegisterField<
5889        9,
5890        0x1,
5891        1,
5892        0,
5893        adcmpcr::Cmpbe,
5894        adcmpcr::Cmpbe,
5895        Adcmpcr_SPEC,
5896        crate::common::RW,
5897    > {
5898        crate::common::RegisterField::<
5899            9,
5900            0x1,
5901            1,
5902            0,
5903            adcmpcr::Cmpbe,
5904            adcmpcr::Cmpbe,
5905            Adcmpcr_SPEC,
5906            crate::common::RW,
5907        >::from_register(self, 0)
5908    }
5909
5910    #[doc = "Compare Window A Operation Enable"]
5911    #[inline(always)]
5912    pub fn cmpae(
5913        self,
5914    ) -> crate::common::RegisterField<
5915        11,
5916        0x1,
5917        1,
5918        0,
5919        adcmpcr::Cmpae,
5920        adcmpcr::Cmpae,
5921        Adcmpcr_SPEC,
5922        crate::common::RW,
5923    > {
5924        crate::common::RegisterField::<
5925            11,
5926            0x1,
5927            1,
5928            0,
5929            adcmpcr::Cmpae,
5930            adcmpcr::Cmpae,
5931            Adcmpcr_SPEC,
5932            crate::common::RW,
5933        >::from_register(self, 0)
5934    }
5935
5936    #[doc = "Compare B Interrupt Enable"]
5937    #[inline(always)]
5938    pub fn cmpbie(
5939        self,
5940    ) -> crate::common::RegisterField<
5941        13,
5942        0x1,
5943        1,
5944        0,
5945        adcmpcr::Cmpbie,
5946        adcmpcr::Cmpbie,
5947        Adcmpcr_SPEC,
5948        crate::common::RW,
5949    > {
5950        crate::common::RegisterField::<
5951            13,
5952            0x1,
5953            1,
5954            0,
5955            adcmpcr::Cmpbie,
5956            adcmpcr::Cmpbie,
5957            Adcmpcr_SPEC,
5958            crate::common::RW,
5959        >::from_register(self, 0)
5960    }
5961
5962    #[doc = "Window Function Setting"]
5963    #[inline(always)]
5964    pub fn wcmpe(
5965        self,
5966    ) -> crate::common::RegisterField<
5967        14,
5968        0x1,
5969        1,
5970        0,
5971        adcmpcr::Wcmpe,
5972        adcmpcr::Wcmpe,
5973        Adcmpcr_SPEC,
5974        crate::common::RW,
5975    > {
5976        crate::common::RegisterField::<
5977            14,
5978            0x1,
5979            1,
5980            0,
5981            adcmpcr::Wcmpe,
5982            adcmpcr::Wcmpe,
5983            Adcmpcr_SPEC,
5984            crate::common::RW,
5985        >::from_register(self, 0)
5986    }
5987
5988    #[doc = "Compare A Interrupt Enable"]
5989    #[inline(always)]
5990    pub fn cmpaie(
5991        self,
5992    ) -> crate::common::RegisterField<
5993        15,
5994        0x1,
5995        1,
5996        0,
5997        adcmpcr::Cmpaie,
5998        adcmpcr::Cmpaie,
5999        Adcmpcr_SPEC,
6000        crate::common::RW,
6001    > {
6002        crate::common::RegisterField::<
6003            15,
6004            0x1,
6005            1,
6006            0,
6007            adcmpcr::Cmpaie,
6008            adcmpcr::Cmpaie,
6009            Adcmpcr_SPEC,
6010            crate::common::RW,
6011        >::from_register(self, 0)
6012    }
6013}
6014impl ::core::default::Default for Adcmpcr {
6015    #[inline(always)]
6016    fn default() -> Adcmpcr {
6017        <crate::RegValueT<Adcmpcr_SPEC> as RegisterValue<_>>::new(0)
6018    }
6019}
6020pub mod adcmpcr {
6021
6022    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6023    pub struct Cmpab_SPEC;
6024    pub type Cmpab = crate::EnumBitfieldStruct<u8, Cmpab_SPEC>;
6025    impl Cmpab {
6026        #[doc = "Output ADC120_WCMPM when window A OR window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6027        pub const _00: Self = Self::new(0);
6028
6029        #[doc = "Output ADC120_WCMPM when window A EXOR window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6030        pub const _01: Self = Self::new(1);
6031
6032        #[doc = "Output ADC120_WCMPM when window A AND window B comparison conditions are met. Otherwise, output ADC120_WCMPUM."]
6033        pub const _10: Self = Self::new(2);
6034
6035        #[doc = "Setting prohibited."]
6036        pub const _11: Self = Self::new(3);
6037    }
6038    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6039    pub struct Cmpbe_SPEC;
6040    pub type Cmpbe = crate::EnumBitfieldStruct<u8, Cmpbe_SPEC>;
6041    impl Cmpbe {
6042        #[doc = "Disable compare window B operation. Disable ADC120_WCMPM and ADC120_WCMPUM outputs."]
6043        pub const _0: Self = Self::new(0);
6044
6045        #[doc = "Enable compare window B operation."]
6046        pub const _1: Self = Self::new(1);
6047    }
6048    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6049    pub struct Cmpae_SPEC;
6050    pub type Cmpae = crate::EnumBitfieldStruct<u8, Cmpae_SPEC>;
6051    impl Cmpae {
6052        #[doc = "Disable compare window A operation. Disable ADC120_WCMPM and ADC120_WCMPUM outputs."]
6053        pub const _0: Self = Self::new(0);
6054
6055        #[doc = "Enable compare window A operation."]
6056        pub const _1: Self = Self::new(1);
6057    }
6058    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6059    pub struct Cmpbie_SPEC;
6060    pub type Cmpbie = crate::EnumBitfieldStruct<u8, Cmpbie_SPEC>;
6061    impl Cmpbie {
6062        #[doc = "Disable ADC120_CMPBI interrupt when comparison conditions (window B) are met."]
6063        pub const _0: Self = Self::new(0);
6064
6065        #[doc = "Enable ADC120_CMPBI interrupt when comparison conditions (window B) are met."]
6066        pub const _1: Self = Self::new(1);
6067    }
6068    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6069    pub struct Wcmpe_SPEC;
6070    pub type Wcmpe = crate::EnumBitfieldStruct<u8, Wcmpe_SPEC>;
6071    impl Wcmpe {
6072        #[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."]
6073        pub const _0: Self = Self::new(0);
6074
6075        #[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."]
6076        pub const _1: Self = Self::new(1);
6077    }
6078    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6079    pub struct Cmpaie_SPEC;
6080    pub type Cmpaie = crate::EnumBitfieldStruct<u8, Cmpaie_SPEC>;
6081    impl Cmpaie {
6082        #[doc = "Disable ADC120_CMPAI interrupt when comparison conditions (window A) are met."]
6083        pub const _0: Self = Self::new(0);
6084
6085        #[doc = "Enable ADC120_CMPAI interrupt when comparison conditions (window A) are met."]
6086        pub const _1: Self = Self::new(1);
6087    }
6088}
6089#[doc(hidden)]
6090#[derive(Copy, Clone, Eq, PartialEq)]
6091pub struct Adcmpanser_SPEC;
6092impl crate::sealed::RegSpec for Adcmpanser_SPEC {
6093    type DataType = u8;
6094}
6095
6096#[doc = "A/D Compare Function Window A Extended Input Select Register"]
6097pub type Adcmpanser = crate::RegValueT<Adcmpanser_SPEC>;
6098
6099impl Adcmpanser {
6100    #[doc = "Temperature Sensor Output Compare Select"]
6101    #[inline(always)]
6102    pub fn cmptsa(
6103        self,
6104    ) -> crate::common::RegisterField<
6105        0,
6106        0x1,
6107        1,
6108        0,
6109        adcmpanser::Cmptsa,
6110        adcmpanser::Cmptsa,
6111        Adcmpanser_SPEC,
6112        crate::common::RW,
6113    > {
6114        crate::common::RegisterField::<
6115            0,
6116            0x1,
6117            1,
6118            0,
6119            adcmpanser::Cmptsa,
6120            adcmpanser::Cmptsa,
6121            Adcmpanser_SPEC,
6122            crate::common::RW,
6123        >::from_register(self, 0)
6124    }
6125
6126    #[doc = "Internal Reference Voltage Compare Select"]
6127    #[inline(always)]
6128    pub fn cmpoca(
6129        self,
6130    ) -> crate::common::RegisterField<
6131        1,
6132        0x1,
6133        1,
6134        0,
6135        adcmpanser::Cmpoca,
6136        adcmpanser::Cmpoca,
6137        Adcmpanser_SPEC,
6138        crate::common::RW,
6139    > {
6140        crate::common::RegisterField::<
6141            1,
6142            0x1,
6143            1,
6144            0,
6145            adcmpanser::Cmpoca,
6146            adcmpanser::Cmpoca,
6147            Adcmpanser_SPEC,
6148            crate::common::RW,
6149        >::from_register(self, 0)
6150    }
6151}
6152impl ::core::default::Default for Adcmpanser {
6153    #[inline(always)]
6154    fn default() -> Adcmpanser {
6155        <crate::RegValueT<Adcmpanser_SPEC> as RegisterValue<_>>::new(0)
6156    }
6157}
6158pub mod adcmpanser {
6159
6160    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6161    pub struct Cmptsa_SPEC;
6162    pub type Cmptsa = crate::EnumBitfieldStruct<u8, Cmptsa_SPEC>;
6163    impl Cmptsa {
6164        #[doc = "Exclude the temperature sensor output from the compare Window A target range."]
6165        pub const _0: Self = Self::new(0);
6166
6167        #[doc = "Include the temperature sensor output in the compare Window A target range."]
6168        pub const _1: Self = Self::new(1);
6169    }
6170    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6171    pub struct Cmpoca_SPEC;
6172    pub type Cmpoca = crate::EnumBitfieldStruct<u8, Cmpoca_SPEC>;
6173    impl Cmpoca {
6174        #[doc = "Exclude the internal reference voltage from the compare Window A target range."]
6175        pub const _0: Self = Self::new(0);
6176
6177        #[doc = "Include the internal reference voltage in the compare Window A target range."]
6178        pub const _1: Self = Self::new(1);
6179    }
6180}
6181#[doc(hidden)]
6182#[derive(Copy, Clone, Eq, PartialEq)]
6183pub struct Adcmpler_SPEC;
6184impl crate::sealed::RegSpec for Adcmpler_SPEC {
6185    type DataType = u8;
6186}
6187
6188#[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
6189pub type Adcmpler = crate::RegValueT<Adcmpler_SPEC>;
6190
6191impl Adcmpler {
6192    #[doc = "Compare Window A Temperature Sensor Output Comparison Condition Select"]
6193    #[inline(always)]
6194    pub fn cmpltsa(
6195        self,
6196    ) -> crate::common::RegisterField<
6197        0,
6198        0x1,
6199        1,
6200        0,
6201        adcmpler::Cmpltsa,
6202        adcmpler::Cmpltsa,
6203        Adcmpler_SPEC,
6204        crate::common::RW,
6205    > {
6206        crate::common::RegisterField::<
6207            0,
6208            0x1,
6209            1,
6210            0,
6211            adcmpler::Cmpltsa,
6212            adcmpler::Cmpltsa,
6213            Adcmpler_SPEC,
6214            crate::common::RW,
6215        >::from_register(self, 0)
6216    }
6217
6218    #[doc = "Compare Window A Internal Reference Voltage Comparison Condition Select"]
6219    #[inline(always)]
6220    pub fn cmploca(
6221        self,
6222    ) -> crate::common::RegisterField<
6223        1,
6224        0x1,
6225        1,
6226        0,
6227        adcmpler::Cmploca,
6228        adcmpler::Cmploca,
6229        Adcmpler_SPEC,
6230        crate::common::RW,
6231    > {
6232        crate::common::RegisterField::<
6233            1,
6234            0x1,
6235            1,
6236            0,
6237            adcmpler::Cmploca,
6238            adcmpler::Cmploca,
6239            Adcmpler_SPEC,
6240            crate::common::RW,
6241        >::from_register(self, 0)
6242    }
6243}
6244impl ::core::default::Default for Adcmpler {
6245    #[inline(always)]
6246    fn default() -> Adcmpler {
6247        <crate::RegValueT<Adcmpler_SPEC> as RegisterValue<_>>::new(0)
6248    }
6249}
6250pub mod adcmpler {
6251
6252    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6253    pub struct Cmpltsa_SPEC;
6254    pub type Cmpltsa = crate::EnumBitfieldStruct<u8, Cmpltsa_SPEC>;
6255    impl Cmpltsa {
6256        #[doc = "When window function is disabled (ADCMPCR.WCMPE = 0) : ADCMPDR0 value > A/D-converted value Compare Window A Temperature Sensor Output Comparison Condition Select When window function is enabled (ADCMPCR.WCMPE = 1) : Compare Window A Temperature Sensor Output Comparison Condition A/D-converted value < ADCMPDR0 value, or A/D-converted value > ADCMPDR1 value"]
6257        pub const _0: Self = Self::new(0);
6258
6259        #[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"]
6260        pub const _1: Self = Self::new(1);
6261    }
6262    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6263    pub struct Cmploca_SPEC;
6264    pub type Cmploca = crate::EnumBitfieldStruct<u8, Cmploca_SPEC>;
6265    impl Cmploca {
6266        #[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"]
6267        pub const _0: Self = Self::new(0);
6268
6269        #[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"]
6270        pub const _1: Self = Self::new(1);
6271    }
6272}
6273#[doc(hidden)]
6274#[derive(Copy, Clone, Eq, PartialEq)]
6275pub struct Adcmpansr0_SPEC;
6276impl crate::sealed::RegSpec for Adcmpansr0_SPEC {
6277    type DataType = u16;
6278}
6279
6280#[doc = "A/D Compare Function Window A Channel Select Register 0"]
6281pub type Adcmpansr0 = crate::RegValueT<Adcmpansr0_SPEC>;
6282
6283impl Adcmpansr0 {
6284    #[doc = "Compare Window A Channel Select"]
6285    #[inline(always)]
6286    pub fn cmpcha00(
6287        self,
6288    ) -> crate::common::RegisterField<
6289        0,
6290        0x1,
6291        1,
6292        0,
6293        adcmpansr0::Cmpcha00,
6294        adcmpansr0::Cmpcha00,
6295        Adcmpansr0_SPEC,
6296        crate::common::RW,
6297    > {
6298        crate::common::RegisterField::<
6299            0,
6300            0x1,
6301            1,
6302            0,
6303            adcmpansr0::Cmpcha00,
6304            adcmpansr0::Cmpcha00,
6305            Adcmpansr0_SPEC,
6306            crate::common::RW,
6307        >::from_register(self, 0)
6308    }
6309
6310    #[doc = "Compare Window A Channel Select"]
6311    #[inline(always)]
6312    pub fn cmpcha01(
6313        self,
6314    ) -> crate::common::RegisterField<
6315        1,
6316        0x1,
6317        1,
6318        0,
6319        adcmpansr0::Cmpcha01,
6320        adcmpansr0::Cmpcha01,
6321        Adcmpansr0_SPEC,
6322        crate::common::RW,
6323    > {
6324        crate::common::RegisterField::<
6325            1,
6326            0x1,
6327            1,
6328            0,
6329            adcmpansr0::Cmpcha01,
6330            adcmpansr0::Cmpcha01,
6331            Adcmpansr0_SPEC,
6332            crate::common::RW,
6333        >::from_register(self, 0)
6334    }
6335
6336    #[doc = "Compare Window A Channel Select"]
6337    #[inline(always)]
6338    pub fn cmpcha02(
6339        self,
6340    ) -> crate::common::RegisterField<
6341        2,
6342        0x1,
6343        1,
6344        0,
6345        adcmpansr0::Cmpcha02,
6346        adcmpansr0::Cmpcha02,
6347        Adcmpansr0_SPEC,
6348        crate::common::RW,
6349    > {
6350        crate::common::RegisterField::<
6351            2,
6352            0x1,
6353            1,
6354            0,
6355            adcmpansr0::Cmpcha02,
6356            adcmpansr0::Cmpcha02,
6357            Adcmpansr0_SPEC,
6358            crate::common::RW,
6359        >::from_register(self, 0)
6360    }
6361
6362    #[doc = "Compare Window A Channel Select"]
6363    #[inline(always)]
6364    pub fn cmpcha03(
6365        self,
6366    ) -> crate::common::RegisterField<
6367        3,
6368        0x1,
6369        1,
6370        0,
6371        adcmpansr0::Cmpcha03,
6372        adcmpansr0::Cmpcha03,
6373        Adcmpansr0_SPEC,
6374        crate::common::RW,
6375    > {
6376        crate::common::RegisterField::<
6377            3,
6378            0x1,
6379            1,
6380            0,
6381            adcmpansr0::Cmpcha03,
6382            adcmpansr0::Cmpcha03,
6383            Adcmpansr0_SPEC,
6384            crate::common::RW,
6385        >::from_register(self, 0)
6386    }
6387
6388    #[doc = "Compare Window A Channel Select"]
6389    #[inline(always)]
6390    pub fn cmpcha04(
6391        self,
6392    ) -> crate::common::RegisterField<
6393        4,
6394        0x1,
6395        1,
6396        0,
6397        adcmpansr0::Cmpcha04,
6398        adcmpansr0::Cmpcha04,
6399        Adcmpansr0_SPEC,
6400        crate::common::RW,
6401    > {
6402        crate::common::RegisterField::<
6403            4,
6404            0x1,
6405            1,
6406            0,
6407            adcmpansr0::Cmpcha04,
6408            adcmpansr0::Cmpcha04,
6409            Adcmpansr0_SPEC,
6410            crate::common::RW,
6411        >::from_register(self, 0)
6412    }
6413
6414    #[doc = "Compare Window A Channel Select"]
6415    #[inline(always)]
6416    pub fn cmpcha05(
6417        self,
6418    ) -> crate::common::RegisterField<
6419        5,
6420        0x1,
6421        1,
6422        0,
6423        adcmpansr0::Cmpcha05,
6424        adcmpansr0::Cmpcha05,
6425        Adcmpansr0_SPEC,
6426        crate::common::RW,
6427    > {
6428        crate::common::RegisterField::<
6429            5,
6430            0x1,
6431            1,
6432            0,
6433            adcmpansr0::Cmpcha05,
6434            adcmpansr0::Cmpcha05,
6435            Adcmpansr0_SPEC,
6436            crate::common::RW,
6437        >::from_register(self, 0)
6438    }
6439
6440    #[doc = "Compare Window A Channel Select"]
6441    #[inline(always)]
6442    pub fn cmpcha06(
6443        self,
6444    ) -> crate::common::RegisterField<
6445        6,
6446        0x1,
6447        1,
6448        0,
6449        adcmpansr0::Cmpcha06,
6450        adcmpansr0::Cmpcha06,
6451        Adcmpansr0_SPEC,
6452        crate::common::RW,
6453    > {
6454        crate::common::RegisterField::<
6455            6,
6456            0x1,
6457            1,
6458            0,
6459            adcmpansr0::Cmpcha06,
6460            adcmpansr0::Cmpcha06,
6461            Adcmpansr0_SPEC,
6462            crate::common::RW,
6463        >::from_register(self, 0)
6464    }
6465
6466    #[doc = "Compare Window A Channel Select"]
6467    #[inline(always)]
6468    pub fn cmpcha07(
6469        self,
6470    ) -> crate::common::RegisterField<
6471        7,
6472        0x1,
6473        1,
6474        0,
6475        adcmpansr0::Cmpcha07,
6476        adcmpansr0::Cmpcha07,
6477        Adcmpansr0_SPEC,
6478        crate::common::RW,
6479    > {
6480        crate::common::RegisterField::<
6481            7,
6482            0x1,
6483            1,
6484            0,
6485            adcmpansr0::Cmpcha07,
6486            adcmpansr0::Cmpcha07,
6487            Adcmpansr0_SPEC,
6488            crate::common::RW,
6489        >::from_register(self, 0)
6490    }
6491
6492    #[doc = "Compare Window A Channel Select"]
6493    #[inline(always)]
6494    pub fn cmpcha08(
6495        self,
6496    ) -> crate::common::RegisterField<
6497        8,
6498        0x1,
6499        1,
6500        0,
6501        adcmpansr0::Cmpcha08,
6502        adcmpansr0::Cmpcha08,
6503        Adcmpansr0_SPEC,
6504        crate::common::RW,
6505    > {
6506        crate::common::RegisterField::<
6507            8,
6508            0x1,
6509            1,
6510            0,
6511            adcmpansr0::Cmpcha08,
6512            adcmpansr0::Cmpcha08,
6513            Adcmpansr0_SPEC,
6514            crate::common::RW,
6515        >::from_register(self, 0)
6516    }
6517
6518    #[doc = "Compare Window A Channel Select"]
6519    #[inline(always)]
6520    pub fn cmpcha09(
6521        self,
6522    ) -> crate::common::RegisterField<
6523        9,
6524        0x1,
6525        1,
6526        0,
6527        adcmpansr0::Cmpcha09,
6528        adcmpansr0::Cmpcha09,
6529        Adcmpansr0_SPEC,
6530        crate::common::RW,
6531    > {
6532        crate::common::RegisterField::<
6533            9,
6534            0x1,
6535            1,
6536            0,
6537            adcmpansr0::Cmpcha09,
6538            adcmpansr0::Cmpcha09,
6539            Adcmpansr0_SPEC,
6540            crate::common::RW,
6541        >::from_register(self, 0)
6542    }
6543
6544    #[doc = "Compare Window A Channel Select"]
6545    #[inline(always)]
6546    pub fn cmpcha10(
6547        self,
6548    ) -> crate::common::RegisterField<
6549        10,
6550        0x1,
6551        1,
6552        0,
6553        adcmpansr0::Cmpcha10,
6554        adcmpansr0::Cmpcha10,
6555        Adcmpansr0_SPEC,
6556        crate::common::RW,
6557    > {
6558        crate::common::RegisterField::<
6559            10,
6560            0x1,
6561            1,
6562            0,
6563            adcmpansr0::Cmpcha10,
6564            adcmpansr0::Cmpcha10,
6565            Adcmpansr0_SPEC,
6566            crate::common::RW,
6567        >::from_register(self, 0)
6568    }
6569
6570    #[doc = "Compare Window A Channel Select"]
6571    #[inline(always)]
6572    pub fn cmpcha11(
6573        self,
6574    ) -> crate::common::RegisterField<
6575        11,
6576        0x1,
6577        1,
6578        0,
6579        adcmpansr0::Cmpcha11,
6580        adcmpansr0::Cmpcha11,
6581        Adcmpansr0_SPEC,
6582        crate::common::RW,
6583    > {
6584        crate::common::RegisterField::<
6585            11,
6586            0x1,
6587            1,
6588            0,
6589            adcmpansr0::Cmpcha11,
6590            adcmpansr0::Cmpcha11,
6591            Adcmpansr0_SPEC,
6592            crate::common::RW,
6593        >::from_register(self, 0)
6594    }
6595
6596    #[doc = "Compare Window A Channel Select"]
6597    #[inline(always)]
6598    pub fn cmpcha12(
6599        self,
6600    ) -> crate::common::RegisterField<
6601        12,
6602        0x1,
6603        1,
6604        0,
6605        adcmpansr0::Cmpcha12,
6606        adcmpansr0::Cmpcha12,
6607        Adcmpansr0_SPEC,
6608        crate::common::RW,
6609    > {
6610        crate::common::RegisterField::<
6611            12,
6612            0x1,
6613            1,
6614            0,
6615            adcmpansr0::Cmpcha12,
6616            adcmpansr0::Cmpcha12,
6617            Adcmpansr0_SPEC,
6618            crate::common::RW,
6619        >::from_register(self, 0)
6620    }
6621
6622    #[doc = "Compare Window A Channel Select"]
6623    #[inline(always)]
6624    pub fn cmpcha13(
6625        self,
6626    ) -> crate::common::RegisterField<
6627        13,
6628        0x1,
6629        1,
6630        0,
6631        adcmpansr0::Cmpcha13,
6632        adcmpansr0::Cmpcha13,
6633        Adcmpansr0_SPEC,
6634        crate::common::RW,
6635    > {
6636        crate::common::RegisterField::<
6637            13,
6638            0x1,
6639            1,
6640            0,
6641            adcmpansr0::Cmpcha13,
6642            adcmpansr0::Cmpcha13,
6643            Adcmpansr0_SPEC,
6644            crate::common::RW,
6645        >::from_register(self, 0)
6646    }
6647
6648    #[doc = "Compare Window A Channel Select"]
6649    #[inline(always)]
6650    pub fn cmpcha14(
6651        self,
6652    ) -> crate::common::RegisterField<
6653        14,
6654        0x1,
6655        1,
6656        0,
6657        adcmpansr0::Cmpcha14,
6658        adcmpansr0::Cmpcha14,
6659        Adcmpansr0_SPEC,
6660        crate::common::RW,
6661    > {
6662        crate::common::RegisterField::<
6663            14,
6664            0x1,
6665            1,
6666            0,
6667            adcmpansr0::Cmpcha14,
6668            adcmpansr0::Cmpcha14,
6669            Adcmpansr0_SPEC,
6670            crate::common::RW,
6671        >::from_register(self, 0)
6672    }
6673
6674    #[doc = "Compare Window A Channel Select"]
6675    #[inline(always)]
6676    pub fn cmpcha15(
6677        self,
6678    ) -> crate::common::RegisterField<
6679        15,
6680        0x1,
6681        1,
6682        0,
6683        adcmpansr0::Cmpcha15,
6684        adcmpansr0::Cmpcha15,
6685        Adcmpansr0_SPEC,
6686        crate::common::RW,
6687    > {
6688        crate::common::RegisterField::<
6689            15,
6690            0x1,
6691            1,
6692            0,
6693            adcmpansr0::Cmpcha15,
6694            adcmpansr0::Cmpcha15,
6695            Adcmpansr0_SPEC,
6696            crate::common::RW,
6697        >::from_register(self, 0)
6698    }
6699}
6700impl ::core::default::Default for Adcmpansr0 {
6701    #[inline(always)]
6702    fn default() -> Adcmpansr0 {
6703        <crate::RegValueT<Adcmpansr0_SPEC> as RegisterValue<_>>::new(0)
6704    }
6705}
6706pub mod adcmpansr0 {
6707
6708    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6709    pub struct Cmpcha00_SPEC;
6710    pub type Cmpcha00 = crate::EnumBitfieldStruct<u8, Cmpcha00_SPEC>;
6711    impl Cmpcha00 {
6712        #[doc = "Disable compare function for associated input channel"]
6713        pub const _0: Self = Self::new(0);
6714
6715        #[doc = "Enable compare function for associated input channel"]
6716        pub const _1: Self = Self::new(1);
6717    }
6718    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6719    pub struct Cmpcha01_SPEC;
6720    pub type Cmpcha01 = crate::EnumBitfieldStruct<u8, Cmpcha01_SPEC>;
6721    impl Cmpcha01 {
6722        #[doc = "Disable compare function for associated input channel"]
6723        pub const _0: Self = Self::new(0);
6724
6725        #[doc = "Enable compare function for associated input channel"]
6726        pub const _1: Self = Self::new(1);
6727    }
6728    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6729    pub struct Cmpcha02_SPEC;
6730    pub type Cmpcha02 = crate::EnumBitfieldStruct<u8, Cmpcha02_SPEC>;
6731    impl Cmpcha02 {
6732        #[doc = "Disable compare function for associated input channel"]
6733        pub const _0: Self = Self::new(0);
6734
6735        #[doc = "Enable compare function for associated input channel"]
6736        pub const _1: Self = Self::new(1);
6737    }
6738    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6739    pub struct Cmpcha03_SPEC;
6740    pub type Cmpcha03 = crate::EnumBitfieldStruct<u8, Cmpcha03_SPEC>;
6741    impl Cmpcha03 {
6742        #[doc = "Disable compare function for associated input channel"]
6743        pub const _0: Self = Self::new(0);
6744
6745        #[doc = "Enable compare function for associated input channel"]
6746        pub const _1: Self = Self::new(1);
6747    }
6748    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6749    pub struct Cmpcha04_SPEC;
6750    pub type Cmpcha04 = crate::EnumBitfieldStruct<u8, Cmpcha04_SPEC>;
6751    impl Cmpcha04 {
6752        #[doc = "Disable compare function for associated input channel"]
6753        pub const _0: Self = Self::new(0);
6754
6755        #[doc = "Enable compare function for associated input channel"]
6756        pub const _1: Self = Self::new(1);
6757    }
6758    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6759    pub struct Cmpcha05_SPEC;
6760    pub type Cmpcha05 = crate::EnumBitfieldStruct<u8, Cmpcha05_SPEC>;
6761    impl Cmpcha05 {
6762        #[doc = "Disable compare function for associated input channel"]
6763        pub const _0: Self = Self::new(0);
6764
6765        #[doc = "Enable compare function for associated input channel"]
6766        pub const _1: Self = Self::new(1);
6767    }
6768    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6769    pub struct Cmpcha06_SPEC;
6770    pub type Cmpcha06 = crate::EnumBitfieldStruct<u8, Cmpcha06_SPEC>;
6771    impl Cmpcha06 {
6772        #[doc = "Disable compare function for associated input channel"]
6773        pub const _0: Self = Self::new(0);
6774
6775        #[doc = "Enable compare function for associated input channel"]
6776        pub const _1: Self = Self::new(1);
6777    }
6778    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6779    pub struct Cmpcha07_SPEC;
6780    pub type Cmpcha07 = crate::EnumBitfieldStruct<u8, Cmpcha07_SPEC>;
6781    impl Cmpcha07 {
6782        #[doc = "Disable compare function for associated input channel"]
6783        pub const _0: Self = Self::new(0);
6784
6785        #[doc = "Enable compare function for associated input channel"]
6786        pub const _1: Self = Self::new(1);
6787    }
6788    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6789    pub struct Cmpcha08_SPEC;
6790    pub type Cmpcha08 = crate::EnumBitfieldStruct<u8, Cmpcha08_SPEC>;
6791    impl Cmpcha08 {
6792        #[doc = "Disable compare function for associated input channel"]
6793        pub const _0: Self = Self::new(0);
6794
6795        #[doc = "Enable compare function for associated input channel"]
6796        pub const _1: Self = Self::new(1);
6797    }
6798    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6799    pub struct Cmpcha09_SPEC;
6800    pub type Cmpcha09 = crate::EnumBitfieldStruct<u8, Cmpcha09_SPEC>;
6801    impl Cmpcha09 {
6802        #[doc = "Disable compare function for associated input channel"]
6803        pub const _0: Self = Self::new(0);
6804
6805        #[doc = "Enable compare function for associated input channel"]
6806        pub const _1: Self = Self::new(1);
6807    }
6808    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6809    pub struct Cmpcha10_SPEC;
6810    pub type Cmpcha10 = crate::EnumBitfieldStruct<u8, Cmpcha10_SPEC>;
6811    impl Cmpcha10 {
6812        #[doc = "Disable compare function for associated input channel"]
6813        pub const _0: Self = Self::new(0);
6814
6815        #[doc = "Enable compare function for associated input channel"]
6816        pub const _1: Self = Self::new(1);
6817    }
6818    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6819    pub struct Cmpcha11_SPEC;
6820    pub type Cmpcha11 = crate::EnumBitfieldStruct<u8, Cmpcha11_SPEC>;
6821    impl Cmpcha11 {
6822        #[doc = "Disable compare function for associated input channel"]
6823        pub const _0: Self = Self::new(0);
6824
6825        #[doc = "Enable compare function for associated input channel"]
6826        pub const _1: Self = Self::new(1);
6827    }
6828    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6829    pub struct Cmpcha12_SPEC;
6830    pub type Cmpcha12 = crate::EnumBitfieldStruct<u8, Cmpcha12_SPEC>;
6831    impl Cmpcha12 {
6832        #[doc = "Disable compare function for associated input channel"]
6833        pub const _0: Self = Self::new(0);
6834
6835        #[doc = "Enable compare function for associated input channel"]
6836        pub const _1: Self = Self::new(1);
6837    }
6838    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6839    pub struct Cmpcha13_SPEC;
6840    pub type Cmpcha13 = crate::EnumBitfieldStruct<u8, Cmpcha13_SPEC>;
6841    impl Cmpcha13 {
6842        #[doc = "Disable compare function for associated input channel"]
6843        pub const _0: Self = Self::new(0);
6844
6845        #[doc = "Enable compare function for associated input channel"]
6846        pub const _1: Self = Self::new(1);
6847    }
6848    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6849    pub struct Cmpcha14_SPEC;
6850    pub type Cmpcha14 = crate::EnumBitfieldStruct<u8, Cmpcha14_SPEC>;
6851    impl Cmpcha14 {
6852        #[doc = "Disable compare function for associated input channel"]
6853        pub const _0: Self = Self::new(0);
6854
6855        #[doc = "Enable compare function for associated input channel"]
6856        pub const _1: Self = Self::new(1);
6857    }
6858    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6859    pub struct Cmpcha15_SPEC;
6860    pub type Cmpcha15 = crate::EnumBitfieldStruct<u8, Cmpcha15_SPEC>;
6861    impl Cmpcha15 {
6862        #[doc = "Disable compare function for associated input channel"]
6863        pub const _0: Self = Self::new(0);
6864
6865        #[doc = "Enable compare function for associated input channel"]
6866        pub const _1: Self = Self::new(1);
6867    }
6868}
6869#[doc(hidden)]
6870#[derive(Copy, Clone, Eq, PartialEq)]
6871pub struct Adcmpansr1_SPEC;
6872impl crate::sealed::RegSpec for Adcmpansr1_SPEC {
6873    type DataType = u16;
6874}
6875
6876#[doc = "A/D Compare Function Window A Channel Select Register 1"]
6877pub type Adcmpansr1 = crate::RegValueT<Adcmpansr1_SPEC>;
6878
6879impl Adcmpansr1 {
6880    #[doc = "Compare Window A Channel Select"]
6881    #[inline(always)]
6882    pub fn cmpcha16(
6883        self,
6884    ) -> crate::common::RegisterField<
6885        0,
6886        0x1,
6887        1,
6888        0,
6889        adcmpansr1::Cmpcha16,
6890        adcmpansr1::Cmpcha16,
6891        Adcmpansr1_SPEC,
6892        crate::common::RW,
6893    > {
6894        crate::common::RegisterField::<
6895            0,
6896            0x1,
6897            1,
6898            0,
6899            adcmpansr1::Cmpcha16,
6900            adcmpansr1::Cmpcha16,
6901            Adcmpansr1_SPEC,
6902            crate::common::RW,
6903        >::from_register(self, 0)
6904    }
6905
6906    #[doc = "Compare Window A Channel Select"]
6907    #[inline(always)]
6908    pub fn cmpcha17(
6909        self,
6910    ) -> crate::common::RegisterField<
6911        1,
6912        0x1,
6913        1,
6914        0,
6915        adcmpansr1::Cmpcha17,
6916        adcmpansr1::Cmpcha17,
6917        Adcmpansr1_SPEC,
6918        crate::common::RW,
6919    > {
6920        crate::common::RegisterField::<
6921            1,
6922            0x1,
6923            1,
6924            0,
6925            adcmpansr1::Cmpcha17,
6926            adcmpansr1::Cmpcha17,
6927            Adcmpansr1_SPEC,
6928            crate::common::RW,
6929        >::from_register(self, 0)
6930    }
6931
6932    #[doc = "Compare Window A Channel Select"]
6933    #[inline(always)]
6934    pub fn cmpcha18(
6935        self,
6936    ) -> crate::common::RegisterField<
6937        2,
6938        0x1,
6939        1,
6940        0,
6941        adcmpansr1::Cmpcha18,
6942        adcmpansr1::Cmpcha18,
6943        Adcmpansr1_SPEC,
6944        crate::common::RW,
6945    > {
6946        crate::common::RegisterField::<
6947            2,
6948            0x1,
6949            1,
6950            0,
6951            adcmpansr1::Cmpcha18,
6952            adcmpansr1::Cmpcha18,
6953            Adcmpansr1_SPEC,
6954            crate::common::RW,
6955        >::from_register(self, 0)
6956    }
6957
6958    #[doc = "Compare Window A Channel Select"]
6959    #[inline(always)]
6960    pub fn cmpcha19(
6961        self,
6962    ) -> crate::common::RegisterField<
6963        3,
6964        0x1,
6965        1,
6966        0,
6967        adcmpansr1::Cmpcha19,
6968        adcmpansr1::Cmpcha19,
6969        Adcmpansr1_SPEC,
6970        crate::common::RW,
6971    > {
6972        crate::common::RegisterField::<
6973            3,
6974            0x1,
6975            1,
6976            0,
6977            adcmpansr1::Cmpcha19,
6978            adcmpansr1::Cmpcha19,
6979            Adcmpansr1_SPEC,
6980            crate::common::RW,
6981        >::from_register(self, 0)
6982    }
6983
6984    #[doc = "Compare Window A Channel Select"]
6985    #[inline(always)]
6986    pub fn cmpcha20(
6987        self,
6988    ) -> crate::common::RegisterField<
6989        4,
6990        0x1,
6991        1,
6992        0,
6993        adcmpansr1::Cmpcha20,
6994        adcmpansr1::Cmpcha20,
6995        Adcmpansr1_SPEC,
6996        crate::common::RW,
6997    > {
6998        crate::common::RegisterField::<
6999            4,
7000            0x1,
7001            1,
7002            0,
7003            adcmpansr1::Cmpcha20,
7004            adcmpansr1::Cmpcha20,
7005            Adcmpansr1_SPEC,
7006            crate::common::RW,
7007        >::from_register(self, 0)
7008    }
7009
7010    #[doc = "Compare Window A Channel Select"]
7011    #[inline(always)]
7012    pub fn cmpcha21(
7013        self,
7014    ) -> crate::common::RegisterField<
7015        5,
7016        0x1,
7017        1,
7018        0,
7019        adcmpansr1::Cmpcha21,
7020        adcmpansr1::Cmpcha21,
7021        Adcmpansr1_SPEC,
7022        crate::common::RW,
7023    > {
7024        crate::common::RegisterField::<
7025            5,
7026            0x1,
7027            1,
7028            0,
7029            adcmpansr1::Cmpcha21,
7030            adcmpansr1::Cmpcha21,
7031            Adcmpansr1_SPEC,
7032            crate::common::RW,
7033        >::from_register(self, 0)
7034    }
7035
7036    #[doc = "Compare Window A Channel Select"]
7037    #[inline(always)]
7038    pub fn cmpcha22(
7039        self,
7040    ) -> crate::common::RegisterField<
7041        6,
7042        0x1,
7043        1,
7044        0,
7045        adcmpansr1::Cmpcha22,
7046        adcmpansr1::Cmpcha22,
7047        Adcmpansr1_SPEC,
7048        crate::common::RW,
7049    > {
7050        crate::common::RegisterField::<
7051            6,
7052            0x1,
7053            1,
7054            0,
7055            adcmpansr1::Cmpcha22,
7056            adcmpansr1::Cmpcha22,
7057            Adcmpansr1_SPEC,
7058            crate::common::RW,
7059        >::from_register(self, 0)
7060    }
7061
7062    #[doc = "Compare Window A Channel Select"]
7063    #[inline(always)]
7064    pub fn cmpcha23(
7065        self,
7066    ) -> crate::common::RegisterField<
7067        7,
7068        0x1,
7069        1,
7070        0,
7071        adcmpansr1::Cmpcha23,
7072        adcmpansr1::Cmpcha23,
7073        Adcmpansr1_SPEC,
7074        crate::common::RW,
7075    > {
7076        crate::common::RegisterField::<
7077            7,
7078            0x1,
7079            1,
7080            0,
7081            adcmpansr1::Cmpcha23,
7082            adcmpansr1::Cmpcha23,
7083            Adcmpansr1_SPEC,
7084            crate::common::RW,
7085        >::from_register(self, 0)
7086    }
7087
7088    #[doc = "Compare Window A Channel Select"]
7089    #[inline(always)]
7090    pub fn cmpcha24(
7091        self,
7092    ) -> crate::common::RegisterField<
7093        8,
7094        0x1,
7095        1,
7096        0,
7097        adcmpansr1::Cmpcha24,
7098        adcmpansr1::Cmpcha24,
7099        Adcmpansr1_SPEC,
7100        crate::common::RW,
7101    > {
7102        crate::common::RegisterField::<
7103            8,
7104            0x1,
7105            1,
7106            0,
7107            adcmpansr1::Cmpcha24,
7108            adcmpansr1::Cmpcha24,
7109            Adcmpansr1_SPEC,
7110            crate::common::RW,
7111        >::from_register(self, 0)
7112    }
7113
7114    #[doc = "Compare Window A Channel Select"]
7115    #[inline(always)]
7116    pub fn cmpcha25(
7117        self,
7118    ) -> crate::common::RegisterField<
7119        9,
7120        0x1,
7121        1,
7122        0,
7123        adcmpansr1::Cmpcha25,
7124        adcmpansr1::Cmpcha25,
7125        Adcmpansr1_SPEC,
7126        crate::common::RW,
7127    > {
7128        crate::common::RegisterField::<
7129            9,
7130            0x1,
7131            1,
7132            0,
7133            adcmpansr1::Cmpcha25,
7134            adcmpansr1::Cmpcha25,
7135            Adcmpansr1_SPEC,
7136            crate::common::RW,
7137        >::from_register(self, 0)
7138    }
7139
7140    #[doc = "Compare Window A Channel Select"]
7141    #[inline(always)]
7142    pub fn cmpcha26(
7143        self,
7144    ) -> crate::common::RegisterField<
7145        10,
7146        0x1,
7147        1,
7148        0,
7149        adcmpansr1::Cmpcha26,
7150        adcmpansr1::Cmpcha26,
7151        Adcmpansr1_SPEC,
7152        crate::common::RW,
7153    > {
7154        crate::common::RegisterField::<
7155            10,
7156            0x1,
7157            1,
7158            0,
7159            adcmpansr1::Cmpcha26,
7160            adcmpansr1::Cmpcha26,
7161            Adcmpansr1_SPEC,
7162            crate::common::RW,
7163        >::from_register(self, 0)
7164    }
7165
7166    #[doc = "Compare Window A Channel Select"]
7167    #[inline(always)]
7168    pub fn cmpcha27(
7169        self,
7170    ) -> crate::common::RegisterField<
7171        11,
7172        0x1,
7173        1,
7174        0,
7175        adcmpansr1::Cmpcha27,
7176        adcmpansr1::Cmpcha27,
7177        Adcmpansr1_SPEC,
7178        crate::common::RW,
7179    > {
7180        crate::common::RegisterField::<
7181            11,
7182            0x1,
7183            1,
7184            0,
7185            adcmpansr1::Cmpcha27,
7186            adcmpansr1::Cmpcha27,
7187            Adcmpansr1_SPEC,
7188            crate::common::RW,
7189        >::from_register(self, 0)
7190    }
7191
7192    #[doc = "Compare Window A Channel Select"]
7193    #[inline(always)]
7194    pub fn cmpcha28(
7195        self,
7196    ) -> crate::common::RegisterField<
7197        12,
7198        0x1,
7199        1,
7200        0,
7201        adcmpansr1::Cmpcha28,
7202        adcmpansr1::Cmpcha28,
7203        Adcmpansr1_SPEC,
7204        crate::common::RW,
7205    > {
7206        crate::common::RegisterField::<
7207            12,
7208            0x1,
7209            1,
7210            0,
7211            adcmpansr1::Cmpcha28,
7212            adcmpansr1::Cmpcha28,
7213            Adcmpansr1_SPEC,
7214            crate::common::RW,
7215        >::from_register(self, 0)
7216    }
7217
7218    #[doc = "Compare Window A Channel Select"]
7219    #[inline(always)]
7220    pub fn cmpcha29(
7221        self,
7222    ) -> crate::common::RegisterField<
7223        13,
7224        0x1,
7225        1,
7226        0,
7227        adcmpansr1::Cmpcha29,
7228        adcmpansr1::Cmpcha29,
7229        Adcmpansr1_SPEC,
7230        crate::common::RW,
7231    > {
7232        crate::common::RegisterField::<
7233            13,
7234            0x1,
7235            1,
7236            0,
7237            adcmpansr1::Cmpcha29,
7238            adcmpansr1::Cmpcha29,
7239            Adcmpansr1_SPEC,
7240            crate::common::RW,
7241        >::from_register(self, 0)
7242    }
7243
7244    #[doc = "Compare Window A Channel Select"]
7245    #[inline(always)]
7246    pub fn cmpcha30(
7247        self,
7248    ) -> crate::common::RegisterField<
7249        14,
7250        0x1,
7251        1,
7252        0,
7253        adcmpansr1::Cmpcha30,
7254        adcmpansr1::Cmpcha30,
7255        Adcmpansr1_SPEC,
7256        crate::common::RW,
7257    > {
7258        crate::common::RegisterField::<
7259            14,
7260            0x1,
7261            1,
7262            0,
7263            adcmpansr1::Cmpcha30,
7264            adcmpansr1::Cmpcha30,
7265            Adcmpansr1_SPEC,
7266            crate::common::RW,
7267        >::from_register(self, 0)
7268    }
7269
7270    #[doc = "Compare Window A Channel Select"]
7271    #[inline(always)]
7272    pub fn cmpcha31(
7273        self,
7274    ) -> crate::common::RegisterField<
7275        15,
7276        0x1,
7277        1,
7278        0,
7279        adcmpansr1::Cmpcha31,
7280        adcmpansr1::Cmpcha31,
7281        Adcmpansr1_SPEC,
7282        crate::common::RW,
7283    > {
7284        crate::common::RegisterField::<
7285            15,
7286            0x1,
7287            1,
7288            0,
7289            adcmpansr1::Cmpcha31,
7290            adcmpansr1::Cmpcha31,
7291            Adcmpansr1_SPEC,
7292            crate::common::RW,
7293        >::from_register(self, 0)
7294    }
7295}
7296impl ::core::default::Default for Adcmpansr1 {
7297    #[inline(always)]
7298    fn default() -> Adcmpansr1 {
7299        <crate::RegValueT<Adcmpansr1_SPEC> as RegisterValue<_>>::new(0)
7300    }
7301}
7302pub mod adcmpansr1 {
7303
7304    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7305    pub struct Cmpcha16_SPEC;
7306    pub type Cmpcha16 = crate::EnumBitfieldStruct<u8, Cmpcha16_SPEC>;
7307    impl Cmpcha16 {
7308        #[doc = "Disable compare function for associated input channel"]
7309        pub const _0: Self = Self::new(0);
7310
7311        #[doc = "Enable compare function for associated input channel"]
7312        pub const _1: Self = Self::new(1);
7313    }
7314    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7315    pub struct Cmpcha17_SPEC;
7316    pub type Cmpcha17 = crate::EnumBitfieldStruct<u8, Cmpcha17_SPEC>;
7317    impl Cmpcha17 {
7318        #[doc = "Disable compare function for associated input channel"]
7319        pub const _0: Self = Self::new(0);
7320
7321        #[doc = "Enable compare function for associated input channel"]
7322        pub const _1: Self = Self::new(1);
7323    }
7324    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7325    pub struct Cmpcha18_SPEC;
7326    pub type Cmpcha18 = crate::EnumBitfieldStruct<u8, Cmpcha18_SPEC>;
7327    impl Cmpcha18 {
7328        #[doc = "Disable compare function for associated input channel"]
7329        pub const _0: Self = Self::new(0);
7330
7331        #[doc = "Enable compare function for associated input channel"]
7332        pub const _1: Self = Self::new(1);
7333    }
7334    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7335    pub struct Cmpcha19_SPEC;
7336    pub type Cmpcha19 = crate::EnumBitfieldStruct<u8, Cmpcha19_SPEC>;
7337    impl Cmpcha19 {
7338        #[doc = "Disable compare function for associated input channel"]
7339        pub const _0: Self = Self::new(0);
7340
7341        #[doc = "Enable compare function for associated input channel"]
7342        pub const _1: Self = Self::new(1);
7343    }
7344    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7345    pub struct Cmpcha20_SPEC;
7346    pub type Cmpcha20 = crate::EnumBitfieldStruct<u8, Cmpcha20_SPEC>;
7347    impl Cmpcha20 {
7348        #[doc = "Disable compare function for associated input channel"]
7349        pub const _0: Self = Self::new(0);
7350
7351        #[doc = "Enable compare function for associated input channel"]
7352        pub const _1: Self = Self::new(1);
7353    }
7354    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7355    pub struct Cmpcha21_SPEC;
7356    pub type Cmpcha21 = crate::EnumBitfieldStruct<u8, Cmpcha21_SPEC>;
7357    impl Cmpcha21 {
7358        #[doc = "Disable compare function for associated input channel"]
7359        pub const _0: Self = Self::new(0);
7360
7361        #[doc = "Enable compare function for associated input channel"]
7362        pub const _1: Self = Self::new(1);
7363    }
7364    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7365    pub struct Cmpcha22_SPEC;
7366    pub type Cmpcha22 = crate::EnumBitfieldStruct<u8, Cmpcha22_SPEC>;
7367    impl Cmpcha22 {
7368        #[doc = "Disable compare function for associated input channel"]
7369        pub const _0: Self = Self::new(0);
7370
7371        #[doc = "Enable compare function for associated input channel"]
7372        pub const _1: Self = Self::new(1);
7373    }
7374    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7375    pub struct Cmpcha23_SPEC;
7376    pub type Cmpcha23 = crate::EnumBitfieldStruct<u8, Cmpcha23_SPEC>;
7377    impl Cmpcha23 {
7378        #[doc = "Disable compare function for associated input channel"]
7379        pub const _0: Self = Self::new(0);
7380
7381        #[doc = "Enable compare function for associated input channel"]
7382        pub const _1: Self = Self::new(1);
7383    }
7384    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7385    pub struct Cmpcha24_SPEC;
7386    pub type Cmpcha24 = crate::EnumBitfieldStruct<u8, Cmpcha24_SPEC>;
7387    impl Cmpcha24 {
7388        #[doc = "Disable compare function for associated input channel"]
7389        pub const _0: Self = Self::new(0);
7390
7391        #[doc = "Enable compare function for associated input channel"]
7392        pub const _1: Self = Self::new(1);
7393    }
7394    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7395    pub struct Cmpcha25_SPEC;
7396    pub type Cmpcha25 = crate::EnumBitfieldStruct<u8, Cmpcha25_SPEC>;
7397    impl Cmpcha25 {
7398        #[doc = "Disable compare function for associated input channel"]
7399        pub const _0: Self = Self::new(0);
7400
7401        #[doc = "Enable compare function for associated input channel"]
7402        pub const _1: Self = Self::new(1);
7403    }
7404    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7405    pub struct Cmpcha26_SPEC;
7406    pub type Cmpcha26 = crate::EnumBitfieldStruct<u8, Cmpcha26_SPEC>;
7407    impl Cmpcha26 {
7408        #[doc = "Disable compare function for associated input channel"]
7409        pub const _0: Self = Self::new(0);
7410
7411        #[doc = "Enable compare function for associated input channel"]
7412        pub const _1: Self = Self::new(1);
7413    }
7414    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7415    pub struct Cmpcha27_SPEC;
7416    pub type Cmpcha27 = crate::EnumBitfieldStruct<u8, Cmpcha27_SPEC>;
7417    impl Cmpcha27 {
7418        #[doc = "Disable compare function for associated input channel"]
7419        pub const _0: Self = Self::new(0);
7420
7421        #[doc = "Enable compare function for associated input channel"]
7422        pub const _1: Self = Self::new(1);
7423    }
7424    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7425    pub struct Cmpcha28_SPEC;
7426    pub type Cmpcha28 = crate::EnumBitfieldStruct<u8, Cmpcha28_SPEC>;
7427    impl Cmpcha28 {
7428        #[doc = "Disable compare function for associated input channel"]
7429        pub const _0: Self = Self::new(0);
7430
7431        #[doc = "Enable compare function for associated input channel"]
7432        pub const _1: Self = Self::new(1);
7433    }
7434    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7435    pub struct Cmpcha29_SPEC;
7436    pub type Cmpcha29 = crate::EnumBitfieldStruct<u8, Cmpcha29_SPEC>;
7437    impl Cmpcha29 {
7438        #[doc = "Disable compare function for associated input channel"]
7439        pub const _0: Self = Self::new(0);
7440
7441        #[doc = "Enable compare function for associated input channel"]
7442        pub const _1: Self = Self::new(1);
7443    }
7444    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7445    pub struct Cmpcha30_SPEC;
7446    pub type Cmpcha30 = crate::EnumBitfieldStruct<u8, Cmpcha30_SPEC>;
7447    impl Cmpcha30 {
7448        #[doc = "Disable compare function for associated input channel"]
7449        pub const _0: Self = Self::new(0);
7450
7451        #[doc = "Enable compare function for associated input channel"]
7452        pub const _1: Self = Self::new(1);
7453    }
7454    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7455    pub struct Cmpcha31_SPEC;
7456    pub type Cmpcha31 = crate::EnumBitfieldStruct<u8, Cmpcha31_SPEC>;
7457    impl Cmpcha31 {
7458        #[doc = "Disable compare function for associated input channel"]
7459        pub const _0: Self = Self::new(0);
7460
7461        #[doc = "Enable compare function for associated input channel"]
7462        pub const _1: Self = Self::new(1);
7463    }
7464}
7465#[doc(hidden)]
7466#[derive(Copy, Clone, Eq, PartialEq)]
7467pub struct Adcmplr0_SPEC;
7468impl crate::sealed::RegSpec for Adcmplr0_SPEC {
7469    type DataType = u16;
7470}
7471
7472#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
7473pub type Adcmplr0 = crate::RegValueT<Adcmplr0_SPEC>;
7474
7475impl Adcmplr0 {
7476    #[doc = "Compare Window A Comparison Condition Select"]
7477    #[inline(always)]
7478    pub fn cmplcha00(
7479        self,
7480    ) -> crate::common::RegisterField<
7481        0,
7482        0x1,
7483        1,
7484        0,
7485        adcmplr0::Cmplcha00,
7486        adcmplr0::Cmplcha00,
7487        Adcmplr0_SPEC,
7488        crate::common::RW,
7489    > {
7490        crate::common::RegisterField::<
7491            0,
7492            0x1,
7493            1,
7494            0,
7495            adcmplr0::Cmplcha00,
7496            adcmplr0::Cmplcha00,
7497            Adcmplr0_SPEC,
7498            crate::common::RW,
7499        >::from_register(self, 0)
7500    }
7501
7502    #[doc = "Compare Window A Comparison Condition Select"]
7503    #[inline(always)]
7504    pub fn cmplcha01(
7505        self,
7506    ) -> crate::common::RegisterField<
7507        1,
7508        0x1,
7509        1,
7510        0,
7511        adcmplr0::Cmplcha01,
7512        adcmplr0::Cmplcha01,
7513        Adcmplr0_SPEC,
7514        crate::common::RW,
7515    > {
7516        crate::common::RegisterField::<
7517            1,
7518            0x1,
7519            1,
7520            0,
7521            adcmplr0::Cmplcha01,
7522            adcmplr0::Cmplcha01,
7523            Adcmplr0_SPEC,
7524            crate::common::RW,
7525        >::from_register(self, 0)
7526    }
7527
7528    #[doc = "Compare Window A Comparison Condition Select"]
7529    #[inline(always)]
7530    pub fn cmplcha02(
7531        self,
7532    ) -> crate::common::RegisterField<
7533        2,
7534        0x1,
7535        1,
7536        0,
7537        adcmplr0::Cmplcha02,
7538        adcmplr0::Cmplcha02,
7539        Adcmplr0_SPEC,
7540        crate::common::RW,
7541    > {
7542        crate::common::RegisterField::<
7543            2,
7544            0x1,
7545            1,
7546            0,
7547            adcmplr0::Cmplcha02,
7548            adcmplr0::Cmplcha02,
7549            Adcmplr0_SPEC,
7550            crate::common::RW,
7551        >::from_register(self, 0)
7552    }
7553
7554    #[doc = "Compare Window A Comparison Condition Select"]
7555    #[inline(always)]
7556    pub fn cmplcha03(
7557        self,
7558    ) -> crate::common::RegisterField<
7559        3,
7560        0x1,
7561        1,
7562        0,
7563        adcmplr0::Cmplcha03,
7564        adcmplr0::Cmplcha03,
7565        Adcmplr0_SPEC,
7566        crate::common::RW,
7567    > {
7568        crate::common::RegisterField::<
7569            3,
7570            0x1,
7571            1,
7572            0,
7573            adcmplr0::Cmplcha03,
7574            adcmplr0::Cmplcha03,
7575            Adcmplr0_SPEC,
7576            crate::common::RW,
7577        >::from_register(self, 0)
7578    }
7579
7580    #[doc = "Compare Window A Comparison Condition Select"]
7581    #[inline(always)]
7582    pub fn cmplcha04(
7583        self,
7584    ) -> crate::common::RegisterField<
7585        4,
7586        0x1,
7587        1,
7588        0,
7589        adcmplr0::Cmplcha04,
7590        adcmplr0::Cmplcha04,
7591        Adcmplr0_SPEC,
7592        crate::common::RW,
7593    > {
7594        crate::common::RegisterField::<
7595            4,
7596            0x1,
7597            1,
7598            0,
7599            adcmplr0::Cmplcha04,
7600            adcmplr0::Cmplcha04,
7601            Adcmplr0_SPEC,
7602            crate::common::RW,
7603        >::from_register(self, 0)
7604    }
7605
7606    #[doc = "Compare Window A Comparison Condition Select"]
7607    #[inline(always)]
7608    pub fn cmplcha05(
7609        self,
7610    ) -> crate::common::RegisterField<
7611        5,
7612        0x1,
7613        1,
7614        0,
7615        adcmplr0::Cmplcha05,
7616        adcmplr0::Cmplcha05,
7617        Adcmplr0_SPEC,
7618        crate::common::RW,
7619    > {
7620        crate::common::RegisterField::<
7621            5,
7622            0x1,
7623            1,
7624            0,
7625            adcmplr0::Cmplcha05,
7626            adcmplr0::Cmplcha05,
7627            Adcmplr0_SPEC,
7628            crate::common::RW,
7629        >::from_register(self, 0)
7630    }
7631
7632    #[doc = "Compare Window A Comparison Condition Select"]
7633    #[inline(always)]
7634    pub fn cmplcha06(
7635        self,
7636    ) -> crate::common::RegisterField<
7637        6,
7638        0x1,
7639        1,
7640        0,
7641        adcmplr0::Cmplcha06,
7642        adcmplr0::Cmplcha06,
7643        Adcmplr0_SPEC,
7644        crate::common::RW,
7645    > {
7646        crate::common::RegisterField::<
7647            6,
7648            0x1,
7649            1,
7650            0,
7651            adcmplr0::Cmplcha06,
7652            adcmplr0::Cmplcha06,
7653            Adcmplr0_SPEC,
7654            crate::common::RW,
7655        >::from_register(self, 0)
7656    }
7657
7658    #[doc = "Compare Window A Comparison Condition Select"]
7659    #[inline(always)]
7660    pub fn cmplcha07(
7661        self,
7662    ) -> crate::common::RegisterField<
7663        7,
7664        0x1,
7665        1,
7666        0,
7667        adcmplr0::Cmplcha07,
7668        adcmplr0::Cmplcha07,
7669        Adcmplr0_SPEC,
7670        crate::common::RW,
7671    > {
7672        crate::common::RegisterField::<
7673            7,
7674            0x1,
7675            1,
7676            0,
7677            adcmplr0::Cmplcha07,
7678            adcmplr0::Cmplcha07,
7679            Adcmplr0_SPEC,
7680            crate::common::RW,
7681        >::from_register(self, 0)
7682    }
7683
7684    #[doc = "Compare Window A Comparison Condition Select"]
7685    #[inline(always)]
7686    pub fn cmplcha08(
7687        self,
7688    ) -> crate::common::RegisterField<
7689        8,
7690        0x1,
7691        1,
7692        0,
7693        adcmplr0::Cmplcha08,
7694        adcmplr0::Cmplcha08,
7695        Adcmplr0_SPEC,
7696        crate::common::RW,
7697    > {
7698        crate::common::RegisterField::<
7699            8,
7700            0x1,
7701            1,
7702            0,
7703            adcmplr0::Cmplcha08,
7704            adcmplr0::Cmplcha08,
7705            Adcmplr0_SPEC,
7706            crate::common::RW,
7707        >::from_register(self, 0)
7708    }
7709
7710    #[doc = "Compare Window A Comparison Condition Select"]
7711    #[inline(always)]
7712    pub fn cmplcha09(
7713        self,
7714    ) -> crate::common::RegisterField<
7715        9,
7716        0x1,
7717        1,
7718        0,
7719        adcmplr0::Cmplcha09,
7720        adcmplr0::Cmplcha09,
7721        Adcmplr0_SPEC,
7722        crate::common::RW,
7723    > {
7724        crate::common::RegisterField::<
7725            9,
7726            0x1,
7727            1,
7728            0,
7729            adcmplr0::Cmplcha09,
7730            adcmplr0::Cmplcha09,
7731            Adcmplr0_SPEC,
7732            crate::common::RW,
7733        >::from_register(self, 0)
7734    }
7735
7736    #[doc = "Compare Window A Comparison Condition Select"]
7737    #[inline(always)]
7738    pub fn cmplcha10(
7739        self,
7740    ) -> crate::common::RegisterField<
7741        10,
7742        0x1,
7743        1,
7744        0,
7745        adcmplr0::Cmplcha10,
7746        adcmplr0::Cmplcha10,
7747        Adcmplr0_SPEC,
7748        crate::common::RW,
7749    > {
7750        crate::common::RegisterField::<
7751            10,
7752            0x1,
7753            1,
7754            0,
7755            adcmplr0::Cmplcha10,
7756            adcmplr0::Cmplcha10,
7757            Adcmplr0_SPEC,
7758            crate::common::RW,
7759        >::from_register(self, 0)
7760    }
7761
7762    #[doc = "Compare Window A Comparison Condition Select"]
7763    #[inline(always)]
7764    pub fn cmplcha11(
7765        self,
7766    ) -> crate::common::RegisterField<
7767        11,
7768        0x1,
7769        1,
7770        0,
7771        adcmplr0::Cmplcha11,
7772        adcmplr0::Cmplcha11,
7773        Adcmplr0_SPEC,
7774        crate::common::RW,
7775    > {
7776        crate::common::RegisterField::<
7777            11,
7778            0x1,
7779            1,
7780            0,
7781            adcmplr0::Cmplcha11,
7782            adcmplr0::Cmplcha11,
7783            Adcmplr0_SPEC,
7784            crate::common::RW,
7785        >::from_register(self, 0)
7786    }
7787
7788    #[doc = "Compare Window A Comparison Condition Select"]
7789    #[inline(always)]
7790    pub fn cmplcha12(
7791        self,
7792    ) -> crate::common::RegisterField<
7793        12,
7794        0x1,
7795        1,
7796        0,
7797        adcmplr0::Cmplcha12,
7798        adcmplr0::Cmplcha12,
7799        Adcmplr0_SPEC,
7800        crate::common::RW,
7801    > {
7802        crate::common::RegisterField::<
7803            12,
7804            0x1,
7805            1,
7806            0,
7807            adcmplr0::Cmplcha12,
7808            adcmplr0::Cmplcha12,
7809            Adcmplr0_SPEC,
7810            crate::common::RW,
7811        >::from_register(self, 0)
7812    }
7813
7814    #[doc = "Compare Window A Comparison Condition Select"]
7815    #[inline(always)]
7816    pub fn cmplcha13(
7817        self,
7818    ) -> crate::common::RegisterField<
7819        13,
7820        0x1,
7821        1,
7822        0,
7823        adcmplr0::Cmplcha13,
7824        adcmplr0::Cmplcha13,
7825        Adcmplr0_SPEC,
7826        crate::common::RW,
7827    > {
7828        crate::common::RegisterField::<
7829            13,
7830            0x1,
7831            1,
7832            0,
7833            adcmplr0::Cmplcha13,
7834            adcmplr0::Cmplcha13,
7835            Adcmplr0_SPEC,
7836            crate::common::RW,
7837        >::from_register(self, 0)
7838    }
7839
7840    #[doc = "Compare Window A Comparison Condition Select"]
7841    #[inline(always)]
7842    pub fn cmplcha14(
7843        self,
7844    ) -> crate::common::RegisterField<
7845        14,
7846        0x1,
7847        1,
7848        0,
7849        adcmplr0::Cmplcha14,
7850        adcmplr0::Cmplcha14,
7851        Adcmplr0_SPEC,
7852        crate::common::RW,
7853    > {
7854        crate::common::RegisterField::<
7855            14,
7856            0x1,
7857            1,
7858            0,
7859            adcmplr0::Cmplcha14,
7860            adcmplr0::Cmplcha14,
7861            Adcmplr0_SPEC,
7862            crate::common::RW,
7863        >::from_register(self, 0)
7864    }
7865
7866    #[doc = "Compare Window A Comparison Condition Select"]
7867    #[inline(always)]
7868    pub fn cmplcha15(
7869        self,
7870    ) -> crate::common::RegisterField<
7871        15,
7872        0x1,
7873        1,
7874        0,
7875        adcmplr0::Cmplcha15,
7876        adcmplr0::Cmplcha15,
7877        Adcmplr0_SPEC,
7878        crate::common::RW,
7879    > {
7880        crate::common::RegisterField::<
7881            15,
7882            0x1,
7883            1,
7884            0,
7885            adcmplr0::Cmplcha15,
7886            adcmplr0::Cmplcha15,
7887            Adcmplr0_SPEC,
7888            crate::common::RW,
7889        >::from_register(self, 0)
7890    }
7891}
7892impl ::core::default::Default for Adcmplr0 {
7893    #[inline(always)]
7894    fn default() -> Adcmplr0 {
7895        <crate::RegValueT<Adcmplr0_SPEC> as RegisterValue<_>>::new(0)
7896    }
7897}
7898pub mod adcmplr0 {
7899
7900    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7901    pub struct Cmplcha00_SPEC;
7902    pub type Cmplcha00 = crate::EnumBitfieldStruct<u8, Cmplcha00_SPEC>;
7903    impl Cmplcha00 {
7904        #[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"]
7905        pub const _0: Self = Self::new(0);
7906
7907        #[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"]
7908        pub const _1: Self = Self::new(1);
7909    }
7910    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7911    pub struct Cmplcha01_SPEC;
7912    pub type Cmplcha01 = crate::EnumBitfieldStruct<u8, Cmplcha01_SPEC>;
7913    impl Cmplcha01 {
7914        #[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"]
7915        pub const _0: Self = Self::new(0);
7916
7917        #[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"]
7918        pub const _1: Self = Self::new(1);
7919    }
7920    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7921    pub struct Cmplcha02_SPEC;
7922    pub type Cmplcha02 = crate::EnumBitfieldStruct<u8, Cmplcha02_SPEC>;
7923    impl Cmplcha02 {
7924        #[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"]
7925        pub const _0: Self = Self::new(0);
7926
7927        #[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"]
7928        pub const _1: Self = Self::new(1);
7929    }
7930    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7931    pub struct Cmplcha03_SPEC;
7932    pub type Cmplcha03 = crate::EnumBitfieldStruct<u8, Cmplcha03_SPEC>;
7933    impl Cmplcha03 {
7934        #[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"]
7935        pub const _0: Self = Self::new(0);
7936
7937        #[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"]
7938        pub const _1: Self = Self::new(1);
7939    }
7940    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7941    pub struct Cmplcha04_SPEC;
7942    pub type Cmplcha04 = crate::EnumBitfieldStruct<u8, Cmplcha04_SPEC>;
7943    impl Cmplcha04 {
7944        #[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"]
7945        pub const _0: Self = Self::new(0);
7946
7947        #[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"]
7948        pub const _1: Self = Self::new(1);
7949    }
7950    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7951    pub struct Cmplcha05_SPEC;
7952    pub type Cmplcha05 = crate::EnumBitfieldStruct<u8, Cmplcha05_SPEC>;
7953    impl Cmplcha05 {
7954        #[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"]
7955        pub const _0: Self = Self::new(0);
7956
7957        #[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"]
7958        pub const _1: Self = Self::new(1);
7959    }
7960    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7961    pub struct Cmplcha06_SPEC;
7962    pub type Cmplcha06 = crate::EnumBitfieldStruct<u8, Cmplcha06_SPEC>;
7963    impl Cmplcha06 {
7964        #[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"]
7965        pub const _0: Self = Self::new(0);
7966
7967        #[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"]
7968        pub const _1: Self = Self::new(1);
7969    }
7970    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7971    pub struct Cmplcha07_SPEC;
7972    pub type Cmplcha07 = crate::EnumBitfieldStruct<u8, Cmplcha07_SPEC>;
7973    impl Cmplcha07 {
7974        #[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"]
7975        pub const _0: Self = Self::new(0);
7976
7977        #[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"]
7978        pub const _1: Self = Self::new(1);
7979    }
7980    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7981    pub struct Cmplcha08_SPEC;
7982    pub type Cmplcha08 = crate::EnumBitfieldStruct<u8, Cmplcha08_SPEC>;
7983    impl Cmplcha08 {
7984        #[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"]
7985        pub const _0: Self = Self::new(0);
7986
7987        #[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"]
7988        pub const _1: Self = Self::new(1);
7989    }
7990    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7991    pub struct Cmplcha09_SPEC;
7992    pub type Cmplcha09 = crate::EnumBitfieldStruct<u8, Cmplcha09_SPEC>;
7993    impl Cmplcha09 {
7994        #[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"]
7995        pub const _0: Self = Self::new(0);
7996
7997        #[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"]
7998        pub const _1: Self = Self::new(1);
7999    }
8000    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8001    pub struct Cmplcha10_SPEC;
8002    pub type Cmplcha10 = crate::EnumBitfieldStruct<u8, Cmplcha10_SPEC>;
8003    impl Cmplcha10 {
8004        #[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"]
8005        pub const _0: Self = Self::new(0);
8006
8007        #[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"]
8008        pub const _1: Self = Self::new(1);
8009    }
8010    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8011    pub struct Cmplcha11_SPEC;
8012    pub type Cmplcha11 = crate::EnumBitfieldStruct<u8, Cmplcha11_SPEC>;
8013    impl Cmplcha11 {
8014        #[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"]
8015        pub const _0: Self = Self::new(0);
8016
8017        #[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"]
8018        pub const _1: Self = Self::new(1);
8019    }
8020    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8021    pub struct Cmplcha12_SPEC;
8022    pub type Cmplcha12 = crate::EnumBitfieldStruct<u8, Cmplcha12_SPEC>;
8023    impl Cmplcha12 {
8024        #[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"]
8025        pub const _0: Self = Self::new(0);
8026
8027        #[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"]
8028        pub const _1: Self = Self::new(1);
8029    }
8030    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8031    pub struct Cmplcha13_SPEC;
8032    pub type Cmplcha13 = crate::EnumBitfieldStruct<u8, Cmplcha13_SPEC>;
8033    impl Cmplcha13 {
8034        #[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"]
8035        pub const _0: Self = Self::new(0);
8036
8037        #[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"]
8038        pub const _1: Self = Self::new(1);
8039    }
8040    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8041    pub struct Cmplcha14_SPEC;
8042    pub type Cmplcha14 = crate::EnumBitfieldStruct<u8, Cmplcha14_SPEC>;
8043    impl Cmplcha14 {
8044        #[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"]
8045        pub const _0: Self = Self::new(0);
8046
8047        #[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"]
8048        pub const _1: Self = Self::new(1);
8049    }
8050    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8051    pub struct Cmplcha15_SPEC;
8052    pub type Cmplcha15 = crate::EnumBitfieldStruct<u8, Cmplcha15_SPEC>;
8053    impl Cmplcha15 {
8054        #[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"]
8055        pub const _0: Self = Self::new(0);
8056
8057        #[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"]
8058        pub const _1: Self = Self::new(1);
8059    }
8060}
8061#[doc(hidden)]
8062#[derive(Copy, Clone, Eq, PartialEq)]
8063pub struct Adcmplr1_SPEC;
8064impl crate::sealed::RegSpec for Adcmplr1_SPEC {
8065    type DataType = u16;
8066}
8067
8068#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
8069pub type Adcmplr1 = crate::RegValueT<Adcmplr1_SPEC>;
8070
8071impl Adcmplr1 {
8072    #[doc = "Compare Window A Comparison Condition Select"]
8073    #[inline(always)]
8074    pub fn cmplcha16(
8075        self,
8076    ) -> crate::common::RegisterField<
8077        0,
8078        0x1,
8079        1,
8080        0,
8081        adcmplr1::Cmplcha16,
8082        adcmplr1::Cmplcha16,
8083        Adcmplr1_SPEC,
8084        crate::common::RW,
8085    > {
8086        crate::common::RegisterField::<
8087            0,
8088            0x1,
8089            1,
8090            0,
8091            adcmplr1::Cmplcha16,
8092            adcmplr1::Cmplcha16,
8093            Adcmplr1_SPEC,
8094            crate::common::RW,
8095        >::from_register(self, 0)
8096    }
8097
8098    #[doc = "Compare Window A Comparison Condition Select"]
8099    #[inline(always)]
8100    pub fn cmplcha17(
8101        self,
8102    ) -> crate::common::RegisterField<
8103        1,
8104        0x1,
8105        1,
8106        0,
8107        adcmplr1::Cmplcha17,
8108        adcmplr1::Cmplcha17,
8109        Adcmplr1_SPEC,
8110        crate::common::RW,
8111    > {
8112        crate::common::RegisterField::<
8113            1,
8114            0x1,
8115            1,
8116            0,
8117            adcmplr1::Cmplcha17,
8118            adcmplr1::Cmplcha17,
8119            Adcmplr1_SPEC,
8120            crate::common::RW,
8121        >::from_register(self, 0)
8122    }
8123
8124    #[doc = "Compare Window A Comparison Condition Select"]
8125    #[inline(always)]
8126    pub fn cmplcha18(
8127        self,
8128    ) -> crate::common::RegisterField<
8129        2,
8130        0x1,
8131        1,
8132        0,
8133        adcmplr1::Cmplcha18,
8134        adcmplr1::Cmplcha18,
8135        Adcmplr1_SPEC,
8136        crate::common::RW,
8137    > {
8138        crate::common::RegisterField::<
8139            2,
8140            0x1,
8141            1,
8142            0,
8143            adcmplr1::Cmplcha18,
8144            adcmplr1::Cmplcha18,
8145            Adcmplr1_SPEC,
8146            crate::common::RW,
8147        >::from_register(self, 0)
8148    }
8149
8150    #[doc = "Compare Window A Comparison Condition Select"]
8151    #[inline(always)]
8152    pub fn cmplcha19(
8153        self,
8154    ) -> crate::common::RegisterField<
8155        3,
8156        0x1,
8157        1,
8158        0,
8159        adcmplr1::Cmplcha19,
8160        adcmplr1::Cmplcha19,
8161        Adcmplr1_SPEC,
8162        crate::common::RW,
8163    > {
8164        crate::common::RegisterField::<
8165            3,
8166            0x1,
8167            1,
8168            0,
8169            adcmplr1::Cmplcha19,
8170            adcmplr1::Cmplcha19,
8171            Adcmplr1_SPEC,
8172            crate::common::RW,
8173        >::from_register(self, 0)
8174    }
8175
8176    #[doc = "Compare Window A Comparison Condition Select"]
8177    #[inline(always)]
8178    pub fn cmplcha20(
8179        self,
8180    ) -> crate::common::RegisterField<
8181        4,
8182        0x1,
8183        1,
8184        0,
8185        adcmplr1::Cmplcha20,
8186        adcmplr1::Cmplcha20,
8187        Adcmplr1_SPEC,
8188        crate::common::RW,
8189    > {
8190        crate::common::RegisterField::<
8191            4,
8192            0x1,
8193            1,
8194            0,
8195            adcmplr1::Cmplcha20,
8196            adcmplr1::Cmplcha20,
8197            Adcmplr1_SPEC,
8198            crate::common::RW,
8199        >::from_register(self, 0)
8200    }
8201
8202    #[doc = "Compare Window A Comparison Condition Select"]
8203    #[inline(always)]
8204    pub fn cmplcha21(
8205        self,
8206    ) -> crate::common::RegisterField<
8207        5,
8208        0x1,
8209        1,
8210        0,
8211        adcmplr1::Cmplcha21,
8212        adcmplr1::Cmplcha21,
8213        Adcmplr1_SPEC,
8214        crate::common::RW,
8215    > {
8216        crate::common::RegisterField::<
8217            5,
8218            0x1,
8219            1,
8220            0,
8221            adcmplr1::Cmplcha21,
8222            adcmplr1::Cmplcha21,
8223            Adcmplr1_SPEC,
8224            crate::common::RW,
8225        >::from_register(self, 0)
8226    }
8227
8228    #[doc = "Compare Window A Comparison Condition Select"]
8229    #[inline(always)]
8230    pub fn cmplcha22(
8231        self,
8232    ) -> crate::common::RegisterField<
8233        6,
8234        0x1,
8235        1,
8236        0,
8237        adcmplr1::Cmplcha22,
8238        adcmplr1::Cmplcha22,
8239        Adcmplr1_SPEC,
8240        crate::common::RW,
8241    > {
8242        crate::common::RegisterField::<
8243            6,
8244            0x1,
8245            1,
8246            0,
8247            adcmplr1::Cmplcha22,
8248            adcmplr1::Cmplcha22,
8249            Adcmplr1_SPEC,
8250            crate::common::RW,
8251        >::from_register(self, 0)
8252    }
8253
8254    #[doc = "Compare Window A Comparison Condition Select"]
8255    #[inline(always)]
8256    pub fn cmplcha23(
8257        self,
8258    ) -> crate::common::RegisterField<
8259        7,
8260        0x1,
8261        1,
8262        0,
8263        adcmplr1::Cmplcha23,
8264        adcmplr1::Cmplcha23,
8265        Adcmplr1_SPEC,
8266        crate::common::RW,
8267    > {
8268        crate::common::RegisterField::<
8269            7,
8270            0x1,
8271            1,
8272            0,
8273            adcmplr1::Cmplcha23,
8274            adcmplr1::Cmplcha23,
8275            Adcmplr1_SPEC,
8276            crate::common::RW,
8277        >::from_register(self, 0)
8278    }
8279
8280    #[doc = "Compare Window A Comparison Condition Select"]
8281    #[inline(always)]
8282    pub fn cmplcha24(
8283        self,
8284    ) -> crate::common::RegisterField<
8285        8,
8286        0x1,
8287        1,
8288        0,
8289        adcmplr1::Cmplcha24,
8290        adcmplr1::Cmplcha24,
8291        Adcmplr1_SPEC,
8292        crate::common::RW,
8293    > {
8294        crate::common::RegisterField::<
8295            8,
8296            0x1,
8297            1,
8298            0,
8299            adcmplr1::Cmplcha24,
8300            adcmplr1::Cmplcha24,
8301            Adcmplr1_SPEC,
8302            crate::common::RW,
8303        >::from_register(self, 0)
8304    }
8305
8306    #[doc = "Compare Window A Comparison Condition Select"]
8307    #[inline(always)]
8308    pub fn cmplcha25(
8309        self,
8310    ) -> crate::common::RegisterField<
8311        9,
8312        0x1,
8313        1,
8314        0,
8315        adcmplr1::Cmplcha25,
8316        adcmplr1::Cmplcha25,
8317        Adcmplr1_SPEC,
8318        crate::common::RW,
8319    > {
8320        crate::common::RegisterField::<
8321            9,
8322            0x1,
8323            1,
8324            0,
8325            adcmplr1::Cmplcha25,
8326            adcmplr1::Cmplcha25,
8327            Adcmplr1_SPEC,
8328            crate::common::RW,
8329        >::from_register(self, 0)
8330    }
8331
8332    #[doc = "Compare Window A Comparison Condition Select"]
8333    #[inline(always)]
8334    pub fn cmplcha26(
8335        self,
8336    ) -> crate::common::RegisterField<
8337        10,
8338        0x1,
8339        1,
8340        0,
8341        adcmplr1::Cmplcha26,
8342        adcmplr1::Cmplcha26,
8343        Adcmplr1_SPEC,
8344        crate::common::RW,
8345    > {
8346        crate::common::RegisterField::<
8347            10,
8348            0x1,
8349            1,
8350            0,
8351            adcmplr1::Cmplcha26,
8352            adcmplr1::Cmplcha26,
8353            Adcmplr1_SPEC,
8354            crate::common::RW,
8355        >::from_register(self, 0)
8356    }
8357
8358    #[doc = "Compare Window A Comparison Condition Select"]
8359    #[inline(always)]
8360    pub fn cmplcha27(
8361        self,
8362    ) -> crate::common::RegisterField<
8363        11,
8364        0x1,
8365        1,
8366        0,
8367        adcmplr1::Cmplcha27,
8368        adcmplr1::Cmplcha27,
8369        Adcmplr1_SPEC,
8370        crate::common::RW,
8371    > {
8372        crate::common::RegisterField::<
8373            11,
8374            0x1,
8375            1,
8376            0,
8377            adcmplr1::Cmplcha27,
8378            adcmplr1::Cmplcha27,
8379            Adcmplr1_SPEC,
8380            crate::common::RW,
8381        >::from_register(self, 0)
8382    }
8383
8384    #[doc = "Compare Window A Comparison Condition Select"]
8385    #[inline(always)]
8386    pub fn cmplcha28(
8387        self,
8388    ) -> crate::common::RegisterField<
8389        12,
8390        0x1,
8391        1,
8392        0,
8393        adcmplr1::Cmplcha28,
8394        adcmplr1::Cmplcha28,
8395        Adcmplr1_SPEC,
8396        crate::common::RW,
8397    > {
8398        crate::common::RegisterField::<
8399            12,
8400            0x1,
8401            1,
8402            0,
8403            adcmplr1::Cmplcha28,
8404            adcmplr1::Cmplcha28,
8405            Adcmplr1_SPEC,
8406            crate::common::RW,
8407        >::from_register(self, 0)
8408    }
8409
8410    #[doc = "Compare Window A Comparison Condition Select"]
8411    #[inline(always)]
8412    pub fn cmplcha29(
8413        self,
8414    ) -> crate::common::RegisterField<
8415        13,
8416        0x1,
8417        1,
8418        0,
8419        adcmplr1::Cmplcha29,
8420        adcmplr1::Cmplcha29,
8421        Adcmplr1_SPEC,
8422        crate::common::RW,
8423    > {
8424        crate::common::RegisterField::<
8425            13,
8426            0x1,
8427            1,
8428            0,
8429            adcmplr1::Cmplcha29,
8430            adcmplr1::Cmplcha29,
8431            Adcmplr1_SPEC,
8432            crate::common::RW,
8433        >::from_register(self, 0)
8434    }
8435
8436    #[doc = "Compare Window A Comparison Condition Select"]
8437    #[inline(always)]
8438    pub fn cmplcha30(
8439        self,
8440    ) -> crate::common::RegisterField<
8441        14,
8442        0x1,
8443        1,
8444        0,
8445        adcmplr1::Cmplcha30,
8446        adcmplr1::Cmplcha30,
8447        Adcmplr1_SPEC,
8448        crate::common::RW,
8449    > {
8450        crate::common::RegisterField::<
8451            14,
8452            0x1,
8453            1,
8454            0,
8455            adcmplr1::Cmplcha30,
8456            adcmplr1::Cmplcha30,
8457            Adcmplr1_SPEC,
8458            crate::common::RW,
8459        >::from_register(self, 0)
8460    }
8461
8462    #[doc = "Compare Window A Comparison Condition Select"]
8463    #[inline(always)]
8464    pub fn cmplcha31(
8465        self,
8466    ) -> crate::common::RegisterField<
8467        15,
8468        0x1,
8469        1,
8470        0,
8471        adcmplr1::Cmplcha31,
8472        adcmplr1::Cmplcha31,
8473        Adcmplr1_SPEC,
8474        crate::common::RW,
8475    > {
8476        crate::common::RegisterField::<
8477            15,
8478            0x1,
8479            1,
8480            0,
8481            adcmplr1::Cmplcha31,
8482            adcmplr1::Cmplcha31,
8483            Adcmplr1_SPEC,
8484            crate::common::RW,
8485        >::from_register(self, 0)
8486    }
8487}
8488impl ::core::default::Default for Adcmplr1 {
8489    #[inline(always)]
8490    fn default() -> Adcmplr1 {
8491        <crate::RegValueT<Adcmplr1_SPEC> as RegisterValue<_>>::new(0)
8492    }
8493}
8494pub mod adcmplr1 {
8495
8496    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8497    pub struct Cmplcha16_SPEC;
8498    pub type Cmplcha16 = crate::EnumBitfieldStruct<u8, Cmplcha16_SPEC>;
8499    impl Cmplcha16 {
8500        #[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"]
8501        pub const _0: Self = Self::new(0);
8502
8503        #[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"]
8504        pub const _1: Self = Self::new(1);
8505    }
8506    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8507    pub struct Cmplcha17_SPEC;
8508    pub type Cmplcha17 = crate::EnumBitfieldStruct<u8, Cmplcha17_SPEC>;
8509    impl Cmplcha17 {
8510        #[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"]
8511        pub const _0: Self = Self::new(0);
8512
8513        #[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"]
8514        pub const _1: Self = Self::new(1);
8515    }
8516    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8517    pub struct Cmplcha18_SPEC;
8518    pub type Cmplcha18 = crate::EnumBitfieldStruct<u8, Cmplcha18_SPEC>;
8519    impl Cmplcha18 {
8520        #[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"]
8521        pub const _0: Self = Self::new(0);
8522
8523        #[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"]
8524        pub const _1: Self = Self::new(1);
8525    }
8526    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8527    pub struct Cmplcha19_SPEC;
8528    pub type Cmplcha19 = crate::EnumBitfieldStruct<u8, Cmplcha19_SPEC>;
8529    impl Cmplcha19 {
8530        #[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"]
8531        pub const _0: Self = Self::new(0);
8532
8533        #[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"]
8534        pub const _1: Self = Self::new(1);
8535    }
8536    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8537    pub struct Cmplcha20_SPEC;
8538    pub type Cmplcha20 = crate::EnumBitfieldStruct<u8, Cmplcha20_SPEC>;
8539    impl Cmplcha20 {
8540        #[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"]
8541        pub const _0: Self = Self::new(0);
8542
8543        #[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"]
8544        pub const _1: Self = Self::new(1);
8545    }
8546    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8547    pub struct Cmplcha21_SPEC;
8548    pub type Cmplcha21 = crate::EnumBitfieldStruct<u8, Cmplcha21_SPEC>;
8549    impl Cmplcha21 {
8550        #[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"]
8551        pub const _0: Self = Self::new(0);
8552
8553        #[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"]
8554        pub const _1: Self = Self::new(1);
8555    }
8556    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8557    pub struct Cmplcha22_SPEC;
8558    pub type Cmplcha22 = crate::EnumBitfieldStruct<u8, Cmplcha22_SPEC>;
8559    impl Cmplcha22 {
8560        #[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"]
8561        pub const _0: Self = Self::new(0);
8562
8563        #[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"]
8564        pub const _1: Self = Self::new(1);
8565    }
8566    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8567    pub struct Cmplcha23_SPEC;
8568    pub type Cmplcha23 = crate::EnumBitfieldStruct<u8, Cmplcha23_SPEC>;
8569    impl Cmplcha23 {
8570        #[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"]
8571        pub const _0: Self = Self::new(0);
8572
8573        #[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"]
8574        pub const _1: Self = Self::new(1);
8575    }
8576    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8577    pub struct Cmplcha24_SPEC;
8578    pub type Cmplcha24 = crate::EnumBitfieldStruct<u8, Cmplcha24_SPEC>;
8579    impl Cmplcha24 {
8580        #[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"]
8581        pub const _0: Self = Self::new(0);
8582
8583        #[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"]
8584        pub const _1: Self = Self::new(1);
8585    }
8586    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8587    pub struct Cmplcha25_SPEC;
8588    pub type Cmplcha25 = crate::EnumBitfieldStruct<u8, Cmplcha25_SPEC>;
8589    impl Cmplcha25 {
8590        #[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"]
8591        pub const _0: Self = Self::new(0);
8592
8593        #[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"]
8594        pub const _1: Self = Self::new(1);
8595    }
8596    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8597    pub struct Cmplcha26_SPEC;
8598    pub type Cmplcha26 = crate::EnumBitfieldStruct<u8, Cmplcha26_SPEC>;
8599    impl Cmplcha26 {
8600        #[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"]
8601        pub const _0: Self = Self::new(0);
8602
8603        #[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"]
8604        pub const _1: Self = Self::new(1);
8605    }
8606    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8607    pub struct Cmplcha27_SPEC;
8608    pub type Cmplcha27 = crate::EnumBitfieldStruct<u8, Cmplcha27_SPEC>;
8609    impl Cmplcha27 {
8610        #[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"]
8611        pub const _0: Self = Self::new(0);
8612
8613        #[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"]
8614        pub const _1: Self = Self::new(1);
8615    }
8616    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8617    pub struct Cmplcha28_SPEC;
8618    pub type Cmplcha28 = crate::EnumBitfieldStruct<u8, Cmplcha28_SPEC>;
8619    impl Cmplcha28 {
8620        #[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"]
8621        pub const _0: Self = Self::new(0);
8622
8623        #[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"]
8624        pub const _1: Self = Self::new(1);
8625    }
8626    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8627    pub struct Cmplcha29_SPEC;
8628    pub type Cmplcha29 = crate::EnumBitfieldStruct<u8, Cmplcha29_SPEC>;
8629    impl Cmplcha29 {
8630        #[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"]
8631        pub const _0: Self = Self::new(0);
8632
8633        #[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"]
8634        pub const _1: Self = Self::new(1);
8635    }
8636    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8637    pub struct Cmplcha30_SPEC;
8638    pub type Cmplcha30 = crate::EnumBitfieldStruct<u8, Cmplcha30_SPEC>;
8639    impl Cmplcha30 {
8640        #[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"]
8641        pub const _0: Self = Self::new(0);
8642
8643        #[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"]
8644        pub const _1: Self = Self::new(1);
8645    }
8646    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8647    pub struct Cmplcha31_SPEC;
8648    pub type Cmplcha31 = crate::EnumBitfieldStruct<u8, Cmplcha31_SPEC>;
8649    impl Cmplcha31 {
8650        #[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"]
8651        pub const _0: Self = Self::new(0);
8652
8653        #[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"]
8654        pub const _1: Self = Self::new(1);
8655    }
8656}
8657#[doc(hidden)]
8658#[derive(Copy, Clone, Eq, PartialEq)]
8659pub struct Adcmpdr_SPEC;
8660impl crate::sealed::RegSpec for Adcmpdr_SPEC {
8661    type DataType = u16;
8662}
8663
8664#[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register"]
8665pub type Adcmpdr = crate::RegValueT<Adcmpdr_SPEC>;
8666
8667impl NoBitfieldReg<Adcmpdr_SPEC> for Adcmpdr {}
8668impl ::core::default::Default for Adcmpdr {
8669    #[inline(always)]
8670    fn default() -> Adcmpdr {
8671        <crate::RegValueT<Adcmpdr_SPEC> as RegisterValue<_>>::new(0)
8672    }
8673}
8674
8675#[doc(hidden)]
8676#[derive(Copy, Clone, Eq, PartialEq)]
8677pub struct Adcmpsr0_SPEC;
8678impl crate::sealed::RegSpec for Adcmpsr0_SPEC {
8679    type DataType = u16;
8680}
8681
8682#[doc = "A/D Compare Function Window A Channel Status Register 0"]
8683pub type Adcmpsr0 = crate::RegValueT<Adcmpsr0_SPEC>;
8684
8685impl Adcmpsr0 {
8686    #[doc = "Compare Window A Flag"]
8687    #[inline(always)]
8688    pub fn cmpstcha00(
8689        self,
8690    ) -> crate::common::RegisterField<
8691        0,
8692        0x1,
8693        1,
8694        0,
8695        adcmpsr0::Cmpstcha00,
8696        adcmpsr0::Cmpstcha00,
8697        Adcmpsr0_SPEC,
8698        crate::common::RW,
8699    > {
8700        crate::common::RegisterField::<
8701            0,
8702            0x1,
8703            1,
8704            0,
8705            adcmpsr0::Cmpstcha00,
8706            adcmpsr0::Cmpstcha00,
8707            Adcmpsr0_SPEC,
8708            crate::common::RW,
8709        >::from_register(self, 0)
8710    }
8711
8712    #[doc = "Compare Window A Flag"]
8713    #[inline(always)]
8714    pub fn cmpstcha01(
8715        self,
8716    ) -> crate::common::RegisterField<
8717        1,
8718        0x1,
8719        1,
8720        0,
8721        adcmpsr0::Cmpstcha01,
8722        adcmpsr0::Cmpstcha01,
8723        Adcmpsr0_SPEC,
8724        crate::common::RW,
8725    > {
8726        crate::common::RegisterField::<
8727            1,
8728            0x1,
8729            1,
8730            0,
8731            adcmpsr0::Cmpstcha01,
8732            adcmpsr0::Cmpstcha01,
8733            Adcmpsr0_SPEC,
8734            crate::common::RW,
8735        >::from_register(self, 0)
8736    }
8737
8738    #[doc = "Compare Window A Flag"]
8739    #[inline(always)]
8740    pub fn cmpstcha02(
8741        self,
8742    ) -> crate::common::RegisterField<
8743        2,
8744        0x1,
8745        1,
8746        0,
8747        adcmpsr0::Cmpstcha02,
8748        adcmpsr0::Cmpstcha02,
8749        Adcmpsr0_SPEC,
8750        crate::common::RW,
8751    > {
8752        crate::common::RegisterField::<
8753            2,
8754            0x1,
8755            1,
8756            0,
8757            adcmpsr0::Cmpstcha02,
8758            adcmpsr0::Cmpstcha02,
8759            Adcmpsr0_SPEC,
8760            crate::common::RW,
8761        >::from_register(self, 0)
8762    }
8763
8764    #[doc = "Compare Window A Flag"]
8765    #[inline(always)]
8766    pub fn cmpstcha03(
8767        self,
8768    ) -> crate::common::RegisterField<
8769        3,
8770        0x1,
8771        1,
8772        0,
8773        adcmpsr0::Cmpstcha03,
8774        adcmpsr0::Cmpstcha03,
8775        Adcmpsr0_SPEC,
8776        crate::common::RW,
8777    > {
8778        crate::common::RegisterField::<
8779            3,
8780            0x1,
8781            1,
8782            0,
8783            adcmpsr0::Cmpstcha03,
8784            adcmpsr0::Cmpstcha03,
8785            Adcmpsr0_SPEC,
8786            crate::common::RW,
8787        >::from_register(self, 0)
8788    }
8789
8790    #[doc = "Compare Window A Flag"]
8791    #[inline(always)]
8792    pub fn cmpstcha04(
8793        self,
8794    ) -> crate::common::RegisterField<
8795        4,
8796        0x1,
8797        1,
8798        0,
8799        adcmpsr0::Cmpstcha04,
8800        adcmpsr0::Cmpstcha04,
8801        Adcmpsr0_SPEC,
8802        crate::common::RW,
8803    > {
8804        crate::common::RegisterField::<
8805            4,
8806            0x1,
8807            1,
8808            0,
8809            adcmpsr0::Cmpstcha04,
8810            adcmpsr0::Cmpstcha04,
8811            Adcmpsr0_SPEC,
8812            crate::common::RW,
8813        >::from_register(self, 0)
8814    }
8815
8816    #[doc = "Compare Window A Flag"]
8817    #[inline(always)]
8818    pub fn cmpstcha05(
8819        self,
8820    ) -> crate::common::RegisterField<
8821        5,
8822        0x1,
8823        1,
8824        0,
8825        adcmpsr0::Cmpstcha05,
8826        adcmpsr0::Cmpstcha05,
8827        Adcmpsr0_SPEC,
8828        crate::common::RW,
8829    > {
8830        crate::common::RegisterField::<
8831            5,
8832            0x1,
8833            1,
8834            0,
8835            adcmpsr0::Cmpstcha05,
8836            adcmpsr0::Cmpstcha05,
8837            Adcmpsr0_SPEC,
8838            crate::common::RW,
8839        >::from_register(self, 0)
8840    }
8841
8842    #[doc = "Compare Window A Flag"]
8843    #[inline(always)]
8844    pub fn cmpstcha06(
8845        self,
8846    ) -> crate::common::RegisterField<
8847        6,
8848        0x1,
8849        1,
8850        0,
8851        adcmpsr0::Cmpstcha06,
8852        adcmpsr0::Cmpstcha06,
8853        Adcmpsr0_SPEC,
8854        crate::common::RW,
8855    > {
8856        crate::common::RegisterField::<
8857            6,
8858            0x1,
8859            1,
8860            0,
8861            adcmpsr0::Cmpstcha06,
8862            adcmpsr0::Cmpstcha06,
8863            Adcmpsr0_SPEC,
8864            crate::common::RW,
8865        >::from_register(self, 0)
8866    }
8867
8868    #[doc = "Compare Window A Flag"]
8869    #[inline(always)]
8870    pub fn cmpstcha07(
8871        self,
8872    ) -> crate::common::RegisterField<
8873        7,
8874        0x1,
8875        1,
8876        0,
8877        adcmpsr0::Cmpstcha07,
8878        adcmpsr0::Cmpstcha07,
8879        Adcmpsr0_SPEC,
8880        crate::common::RW,
8881    > {
8882        crate::common::RegisterField::<
8883            7,
8884            0x1,
8885            1,
8886            0,
8887            adcmpsr0::Cmpstcha07,
8888            adcmpsr0::Cmpstcha07,
8889            Adcmpsr0_SPEC,
8890            crate::common::RW,
8891        >::from_register(self, 0)
8892    }
8893
8894    #[doc = "Compare Window A Flag"]
8895    #[inline(always)]
8896    pub fn cmpstcha08(
8897        self,
8898    ) -> crate::common::RegisterField<
8899        8,
8900        0x1,
8901        1,
8902        0,
8903        adcmpsr0::Cmpstcha08,
8904        adcmpsr0::Cmpstcha08,
8905        Adcmpsr0_SPEC,
8906        crate::common::RW,
8907    > {
8908        crate::common::RegisterField::<
8909            8,
8910            0x1,
8911            1,
8912            0,
8913            adcmpsr0::Cmpstcha08,
8914            adcmpsr0::Cmpstcha08,
8915            Adcmpsr0_SPEC,
8916            crate::common::RW,
8917        >::from_register(self, 0)
8918    }
8919
8920    #[doc = "Compare Window A Flag"]
8921    #[inline(always)]
8922    pub fn cmpstcha09(
8923        self,
8924    ) -> crate::common::RegisterField<
8925        9,
8926        0x1,
8927        1,
8928        0,
8929        adcmpsr0::Cmpstcha09,
8930        adcmpsr0::Cmpstcha09,
8931        Adcmpsr0_SPEC,
8932        crate::common::RW,
8933    > {
8934        crate::common::RegisterField::<
8935            9,
8936            0x1,
8937            1,
8938            0,
8939            adcmpsr0::Cmpstcha09,
8940            adcmpsr0::Cmpstcha09,
8941            Adcmpsr0_SPEC,
8942            crate::common::RW,
8943        >::from_register(self, 0)
8944    }
8945
8946    #[doc = "Compare Window A Flag"]
8947    #[inline(always)]
8948    pub fn cmpstcha10(
8949        self,
8950    ) -> crate::common::RegisterField<
8951        10,
8952        0x1,
8953        1,
8954        0,
8955        adcmpsr0::Cmpstcha10,
8956        adcmpsr0::Cmpstcha10,
8957        Adcmpsr0_SPEC,
8958        crate::common::RW,
8959    > {
8960        crate::common::RegisterField::<
8961            10,
8962            0x1,
8963            1,
8964            0,
8965            adcmpsr0::Cmpstcha10,
8966            adcmpsr0::Cmpstcha10,
8967            Adcmpsr0_SPEC,
8968            crate::common::RW,
8969        >::from_register(self, 0)
8970    }
8971
8972    #[doc = "Compare Window A Flag"]
8973    #[inline(always)]
8974    pub fn cmpstcha11(
8975        self,
8976    ) -> crate::common::RegisterField<
8977        11,
8978        0x1,
8979        1,
8980        0,
8981        adcmpsr0::Cmpstcha11,
8982        adcmpsr0::Cmpstcha11,
8983        Adcmpsr0_SPEC,
8984        crate::common::RW,
8985    > {
8986        crate::common::RegisterField::<
8987            11,
8988            0x1,
8989            1,
8990            0,
8991            adcmpsr0::Cmpstcha11,
8992            adcmpsr0::Cmpstcha11,
8993            Adcmpsr0_SPEC,
8994            crate::common::RW,
8995        >::from_register(self, 0)
8996    }
8997
8998    #[doc = "Compare Window A Flag"]
8999    #[inline(always)]
9000    pub fn cmpstcha12(
9001        self,
9002    ) -> crate::common::RegisterField<
9003        12,
9004        0x1,
9005        1,
9006        0,
9007        adcmpsr0::Cmpstcha12,
9008        adcmpsr0::Cmpstcha12,
9009        Adcmpsr0_SPEC,
9010        crate::common::RW,
9011    > {
9012        crate::common::RegisterField::<
9013            12,
9014            0x1,
9015            1,
9016            0,
9017            adcmpsr0::Cmpstcha12,
9018            adcmpsr0::Cmpstcha12,
9019            Adcmpsr0_SPEC,
9020            crate::common::RW,
9021        >::from_register(self, 0)
9022    }
9023
9024    #[doc = "Compare Window A Flag"]
9025    #[inline(always)]
9026    pub fn cmpstcha13(
9027        self,
9028    ) -> crate::common::RegisterField<
9029        13,
9030        0x1,
9031        1,
9032        0,
9033        adcmpsr0::Cmpstcha13,
9034        adcmpsr0::Cmpstcha13,
9035        Adcmpsr0_SPEC,
9036        crate::common::RW,
9037    > {
9038        crate::common::RegisterField::<
9039            13,
9040            0x1,
9041            1,
9042            0,
9043            adcmpsr0::Cmpstcha13,
9044            adcmpsr0::Cmpstcha13,
9045            Adcmpsr0_SPEC,
9046            crate::common::RW,
9047        >::from_register(self, 0)
9048    }
9049
9050    #[doc = "Compare Window A Flag"]
9051    #[inline(always)]
9052    pub fn cmpstcha14(
9053        self,
9054    ) -> crate::common::RegisterField<
9055        14,
9056        0x1,
9057        1,
9058        0,
9059        adcmpsr0::Cmpstcha14,
9060        adcmpsr0::Cmpstcha14,
9061        Adcmpsr0_SPEC,
9062        crate::common::RW,
9063    > {
9064        crate::common::RegisterField::<
9065            14,
9066            0x1,
9067            1,
9068            0,
9069            adcmpsr0::Cmpstcha14,
9070            adcmpsr0::Cmpstcha14,
9071            Adcmpsr0_SPEC,
9072            crate::common::RW,
9073        >::from_register(self, 0)
9074    }
9075
9076    #[doc = "Compare Window A Flag"]
9077    #[inline(always)]
9078    pub fn cmpstcha15(
9079        self,
9080    ) -> crate::common::RegisterField<
9081        15,
9082        0x1,
9083        1,
9084        0,
9085        adcmpsr0::Cmpstcha15,
9086        adcmpsr0::Cmpstcha15,
9087        Adcmpsr0_SPEC,
9088        crate::common::RW,
9089    > {
9090        crate::common::RegisterField::<
9091            15,
9092            0x1,
9093            1,
9094            0,
9095            adcmpsr0::Cmpstcha15,
9096            adcmpsr0::Cmpstcha15,
9097            Adcmpsr0_SPEC,
9098            crate::common::RW,
9099        >::from_register(self, 0)
9100    }
9101}
9102impl ::core::default::Default for Adcmpsr0 {
9103    #[inline(always)]
9104    fn default() -> Adcmpsr0 {
9105        <crate::RegValueT<Adcmpsr0_SPEC> as RegisterValue<_>>::new(0)
9106    }
9107}
9108pub mod adcmpsr0 {
9109
9110    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9111    pub struct Cmpstcha00_SPEC;
9112    pub type Cmpstcha00 = crate::EnumBitfieldStruct<u8, Cmpstcha00_SPEC>;
9113    impl Cmpstcha00 {
9114        #[doc = "Comparison conditions are not met."]
9115        pub const _0: Self = Self::new(0);
9116
9117        #[doc = "Comparison conditions are met."]
9118        pub const _1: Self = Self::new(1);
9119    }
9120    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9121    pub struct Cmpstcha01_SPEC;
9122    pub type Cmpstcha01 = crate::EnumBitfieldStruct<u8, Cmpstcha01_SPEC>;
9123    impl Cmpstcha01 {
9124        #[doc = "Comparison conditions are not met."]
9125        pub const _0: Self = Self::new(0);
9126
9127        #[doc = "Comparison conditions are met."]
9128        pub const _1: Self = Self::new(1);
9129    }
9130    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9131    pub struct Cmpstcha02_SPEC;
9132    pub type Cmpstcha02 = crate::EnumBitfieldStruct<u8, Cmpstcha02_SPEC>;
9133    impl Cmpstcha02 {
9134        #[doc = "Comparison conditions are not met."]
9135        pub const _0: Self = Self::new(0);
9136
9137        #[doc = "Comparison conditions are met."]
9138        pub const _1: Self = Self::new(1);
9139    }
9140    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9141    pub struct Cmpstcha03_SPEC;
9142    pub type Cmpstcha03 = crate::EnumBitfieldStruct<u8, Cmpstcha03_SPEC>;
9143    impl Cmpstcha03 {
9144        #[doc = "Comparison conditions are not met."]
9145        pub const _0: Self = Self::new(0);
9146
9147        #[doc = "Comparison conditions are met."]
9148        pub const _1: Self = Self::new(1);
9149    }
9150    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9151    pub struct Cmpstcha04_SPEC;
9152    pub type Cmpstcha04 = crate::EnumBitfieldStruct<u8, Cmpstcha04_SPEC>;
9153    impl Cmpstcha04 {
9154        #[doc = "Comparison conditions are not met."]
9155        pub const _0: Self = Self::new(0);
9156
9157        #[doc = "Comparison conditions are met."]
9158        pub const _1: Self = Self::new(1);
9159    }
9160    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9161    pub struct Cmpstcha05_SPEC;
9162    pub type Cmpstcha05 = crate::EnumBitfieldStruct<u8, Cmpstcha05_SPEC>;
9163    impl Cmpstcha05 {
9164        #[doc = "Comparison conditions are not met."]
9165        pub const _0: Self = Self::new(0);
9166
9167        #[doc = "Comparison conditions are met."]
9168        pub const _1: Self = Self::new(1);
9169    }
9170    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9171    pub struct Cmpstcha06_SPEC;
9172    pub type Cmpstcha06 = crate::EnumBitfieldStruct<u8, Cmpstcha06_SPEC>;
9173    impl Cmpstcha06 {
9174        #[doc = "Comparison conditions are not met."]
9175        pub const _0: Self = Self::new(0);
9176
9177        #[doc = "Comparison conditions are met."]
9178        pub const _1: Self = Self::new(1);
9179    }
9180    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9181    pub struct Cmpstcha07_SPEC;
9182    pub type Cmpstcha07 = crate::EnumBitfieldStruct<u8, Cmpstcha07_SPEC>;
9183    impl Cmpstcha07 {
9184        #[doc = "Comparison conditions are not met."]
9185        pub const _0: Self = Self::new(0);
9186
9187        #[doc = "Comparison conditions are met."]
9188        pub const _1: Self = Self::new(1);
9189    }
9190    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9191    pub struct Cmpstcha08_SPEC;
9192    pub type Cmpstcha08 = crate::EnumBitfieldStruct<u8, Cmpstcha08_SPEC>;
9193    impl Cmpstcha08 {
9194        #[doc = "Comparison conditions are not met."]
9195        pub const _0: Self = Self::new(0);
9196
9197        #[doc = "Comparison conditions are met."]
9198        pub const _1: Self = Self::new(1);
9199    }
9200    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9201    pub struct Cmpstcha09_SPEC;
9202    pub type Cmpstcha09 = crate::EnumBitfieldStruct<u8, Cmpstcha09_SPEC>;
9203    impl Cmpstcha09 {
9204        #[doc = "Comparison conditions are not met."]
9205        pub const _0: Self = Self::new(0);
9206
9207        #[doc = "Comparison conditions are met."]
9208        pub const _1: Self = Self::new(1);
9209    }
9210    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9211    pub struct Cmpstcha10_SPEC;
9212    pub type Cmpstcha10 = crate::EnumBitfieldStruct<u8, Cmpstcha10_SPEC>;
9213    impl Cmpstcha10 {
9214        #[doc = "Comparison conditions are not met."]
9215        pub const _0: Self = Self::new(0);
9216
9217        #[doc = "Comparison conditions are met."]
9218        pub const _1: Self = Self::new(1);
9219    }
9220    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9221    pub struct Cmpstcha11_SPEC;
9222    pub type Cmpstcha11 = crate::EnumBitfieldStruct<u8, Cmpstcha11_SPEC>;
9223    impl Cmpstcha11 {
9224        #[doc = "Comparison conditions are not met."]
9225        pub const _0: Self = Self::new(0);
9226
9227        #[doc = "Comparison conditions are met."]
9228        pub const _1: Self = Self::new(1);
9229    }
9230    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9231    pub struct Cmpstcha12_SPEC;
9232    pub type Cmpstcha12 = crate::EnumBitfieldStruct<u8, Cmpstcha12_SPEC>;
9233    impl Cmpstcha12 {
9234        #[doc = "Comparison conditions are not met."]
9235        pub const _0: Self = Self::new(0);
9236
9237        #[doc = "Comparison conditions are met."]
9238        pub const _1: Self = Self::new(1);
9239    }
9240    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9241    pub struct Cmpstcha13_SPEC;
9242    pub type Cmpstcha13 = crate::EnumBitfieldStruct<u8, Cmpstcha13_SPEC>;
9243    impl Cmpstcha13 {
9244        #[doc = "Comparison conditions are not met."]
9245        pub const _0: Self = Self::new(0);
9246
9247        #[doc = "Comparison conditions are met."]
9248        pub const _1: Self = Self::new(1);
9249    }
9250    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9251    pub struct Cmpstcha14_SPEC;
9252    pub type Cmpstcha14 = crate::EnumBitfieldStruct<u8, Cmpstcha14_SPEC>;
9253    impl Cmpstcha14 {
9254        #[doc = "Comparison conditions are not met."]
9255        pub const _0: Self = Self::new(0);
9256
9257        #[doc = "Comparison conditions are met."]
9258        pub const _1: Self = Self::new(1);
9259    }
9260    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9261    pub struct Cmpstcha15_SPEC;
9262    pub type Cmpstcha15 = crate::EnumBitfieldStruct<u8, Cmpstcha15_SPEC>;
9263    impl Cmpstcha15 {
9264        #[doc = "Comparison conditions are not met."]
9265        pub const _0: Self = Self::new(0);
9266
9267        #[doc = "Comparison conditions are met."]
9268        pub const _1: Self = Self::new(1);
9269    }
9270}
9271#[doc(hidden)]
9272#[derive(Copy, Clone, Eq, PartialEq)]
9273pub struct Adcmpsr1_SPEC;
9274impl crate::sealed::RegSpec for Adcmpsr1_SPEC {
9275    type DataType = u16;
9276}
9277
9278#[doc = "A/D Compare Function Window A Channel Status Register1"]
9279pub type Adcmpsr1 = crate::RegValueT<Adcmpsr1_SPEC>;
9280
9281impl Adcmpsr1 {
9282    #[doc = "Compare Window A Flag"]
9283    #[inline(always)]
9284    pub fn cmpstcha16(
9285        self,
9286    ) -> crate::common::RegisterField<
9287        0,
9288        0x1,
9289        1,
9290        0,
9291        adcmpsr1::Cmpstcha16,
9292        adcmpsr1::Cmpstcha16,
9293        Adcmpsr1_SPEC,
9294        crate::common::RW,
9295    > {
9296        crate::common::RegisterField::<
9297            0,
9298            0x1,
9299            1,
9300            0,
9301            adcmpsr1::Cmpstcha16,
9302            adcmpsr1::Cmpstcha16,
9303            Adcmpsr1_SPEC,
9304            crate::common::RW,
9305        >::from_register(self, 0)
9306    }
9307
9308    #[doc = "Compare Window A Flag"]
9309    #[inline(always)]
9310    pub fn cmpstcha17(
9311        self,
9312    ) -> crate::common::RegisterField<
9313        1,
9314        0x1,
9315        1,
9316        0,
9317        adcmpsr1::Cmpstcha17,
9318        adcmpsr1::Cmpstcha17,
9319        Adcmpsr1_SPEC,
9320        crate::common::RW,
9321    > {
9322        crate::common::RegisterField::<
9323            1,
9324            0x1,
9325            1,
9326            0,
9327            adcmpsr1::Cmpstcha17,
9328            adcmpsr1::Cmpstcha17,
9329            Adcmpsr1_SPEC,
9330            crate::common::RW,
9331        >::from_register(self, 0)
9332    }
9333
9334    #[doc = "Compare Window A Flag"]
9335    #[inline(always)]
9336    pub fn cmpstcha18(
9337        self,
9338    ) -> crate::common::RegisterField<
9339        2,
9340        0x1,
9341        1,
9342        0,
9343        adcmpsr1::Cmpstcha18,
9344        adcmpsr1::Cmpstcha18,
9345        Adcmpsr1_SPEC,
9346        crate::common::RW,
9347    > {
9348        crate::common::RegisterField::<
9349            2,
9350            0x1,
9351            1,
9352            0,
9353            adcmpsr1::Cmpstcha18,
9354            adcmpsr1::Cmpstcha18,
9355            Adcmpsr1_SPEC,
9356            crate::common::RW,
9357        >::from_register(self, 0)
9358    }
9359
9360    #[doc = "Compare Window A Flag"]
9361    #[inline(always)]
9362    pub fn cmpstcha19(
9363        self,
9364    ) -> crate::common::RegisterField<
9365        3,
9366        0x1,
9367        1,
9368        0,
9369        adcmpsr1::Cmpstcha19,
9370        adcmpsr1::Cmpstcha19,
9371        Adcmpsr1_SPEC,
9372        crate::common::RW,
9373    > {
9374        crate::common::RegisterField::<
9375            3,
9376            0x1,
9377            1,
9378            0,
9379            adcmpsr1::Cmpstcha19,
9380            adcmpsr1::Cmpstcha19,
9381            Adcmpsr1_SPEC,
9382            crate::common::RW,
9383        >::from_register(self, 0)
9384    }
9385
9386    #[doc = "Compare Window A Flag"]
9387    #[inline(always)]
9388    pub fn cmpstcha20(
9389        self,
9390    ) -> crate::common::RegisterField<
9391        4,
9392        0x1,
9393        1,
9394        0,
9395        adcmpsr1::Cmpstcha20,
9396        adcmpsr1::Cmpstcha20,
9397        Adcmpsr1_SPEC,
9398        crate::common::RW,
9399    > {
9400        crate::common::RegisterField::<
9401            4,
9402            0x1,
9403            1,
9404            0,
9405            adcmpsr1::Cmpstcha20,
9406            adcmpsr1::Cmpstcha20,
9407            Adcmpsr1_SPEC,
9408            crate::common::RW,
9409        >::from_register(self, 0)
9410    }
9411
9412    #[doc = "Compare Window A Flag"]
9413    #[inline(always)]
9414    pub fn cmpstcha21(
9415        self,
9416    ) -> crate::common::RegisterField<
9417        5,
9418        0x1,
9419        1,
9420        0,
9421        adcmpsr1::Cmpstcha21,
9422        adcmpsr1::Cmpstcha21,
9423        Adcmpsr1_SPEC,
9424        crate::common::RW,
9425    > {
9426        crate::common::RegisterField::<
9427            5,
9428            0x1,
9429            1,
9430            0,
9431            adcmpsr1::Cmpstcha21,
9432            adcmpsr1::Cmpstcha21,
9433            Adcmpsr1_SPEC,
9434            crate::common::RW,
9435        >::from_register(self, 0)
9436    }
9437
9438    #[doc = "Compare Window A Flag"]
9439    #[inline(always)]
9440    pub fn cmpstcha22(
9441        self,
9442    ) -> crate::common::RegisterField<
9443        6,
9444        0x1,
9445        1,
9446        0,
9447        adcmpsr1::Cmpstcha22,
9448        adcmpsr1::Cmpstcha22,
9449        Adcmpsr1_SPEC,
9450        crate::common::RW,
9451    > {
9452        crate::common::RegisterField::<
9453            6,
9454            0x1,
9455            1,
9456            0,
9457            adcmpsr1::Cmpstcha22,
9458            adcmpsr1::Cmpstcha22,
9459            Adcmpsr1_SPEC,
9460            crate::common::RW,
9461        >::from_register(self, 0)
9462    }
9463
9464    #[doc = "Compare Window A Flag"]
9465    #[inline(always)]
9466    pub fn cmpstcha23(
9467        self,
9468    ) -> crate::common::RegisterField<
9469        7,
9470        0x1,
9471        1,
9472        0,
9473        adcmpsr1::Cmpstcha23,
9474        adcmpsr1::Cmpstcha23,
9475        Adcmpsr1_SPEC,
9476        crate::common::RW,
9477    > {
9478        crate::common::RegisterField::<
9479            7,
9480            0x1,
9481            1,
9482            0,
9483            adcmpsr1::Cmpstcha23,
9484            adcmpsr1::Cmpstcha23,
9485            Adcmpsr1_SPEC,
9486            crate::common::RW,
9487        >::from_register(self, 0)
9488    }
9489
9490    #[doc = "Compare Window A Flag"]
9491    #[inline(always)]
9492    pub fn cmpstcha24(
9493        self,
9494    ) -> crate::common::RegisterField<
9495        8,
9496        0x1,
9497        1,
9498        0,
9499        adcmpsr1::Cmpstcha24,
9500        adcmpsr1::Cmpstcha24,
9501        Adcmpsr1_SPEC,
9502        crate::common::RW,
9503    > {
9504        crate::common::RegisterField::<
9505            8,
9506            0x1,
9507            1,
9508            0,
9509            adcmpsr1::Cmpstcha24,
9510            adcmpsr1::Cmpstcha24,
9511            Adcmpsr1_SPEC,
9512            crate::common::RW,
9513        >::from_register(self, 0)
9514    }
9515
9516    #[doc = "Compare Window A Flag"]
9517    #[inline(always)]
9518    pub fn cmpstcha25(
9519        self,
9520    ) -> crate::common::RegisterField<
9521        9,
9522        0x1,
9523        1,
9524        0,
9525        adcmpsr1::Cmpstcha25,
9526        adcmpsr1::Cmpstcha25,
9527        Adcmpsr1_SPEC,
9528        crate::common::RW,
9529    > {
9530        crate::common::RegisterField::<
9531            9,
9532            0x1,
9533            1,
9534            0,
9535            adcmpsr1::Cmpstcha25,
9536            adcmpsr1::Cmpstcha25,
9537            Adcmpsr1_SPEC,
9538            crate::common::RW,
9539        >::from_register(self, 0)
9540    }
9541
9542    #[doc = "Compare Window A Flag"]
9543    #[inline(always)]
9544    pub fn cmpstcha26(
9545        self,
9546    ) -> crate::common::RegisterField<
9547        10,
9548        0x1,
9549        1,
9550        0,
9551        adcmpsr1::Cmpstcha26,
9552        adcmpsr1::Cmpstcha26,
9553        Adcmpsr1_SPEC,
9554        crate::common::RW,
9555    > {
9556        crate::common::RegisterField::<
9557            10,
9558            0x1,
9559            1,
9560            0,
9561            adcmpsr1::Cmpstcha26,
9562            adcmpsr1::Cmpstcha26,
9563            Adcmpsr1_SPEC,
9564            crate::common::RW,
9565        >::from_register(self, 0)
9566    }
9567
9568    #[doc = "Compare Window A Flag"]
9569    #[inline(always)]
9570    pub fn cmpstcha27(
9571        self,
9572    ) -> crate::common::RegisterField<
9573        11,
9574        0x1,
9575        1,
9576        0,
9577        adcmpsr1::Cmpstcha27,
9578        adcmpsr1::Cmpstcha27,
9579        Adcmpsr1_SPEC,
9580        crate::common::RW,
9581    > {
9582        crate::common::RegisterField::<
9583            11,
9584            0x1,
9585            1,
9586            0,
9587            adcmpsr1::Cmpstcha27,
9588            adcmpsr1::Cmpstcha27,
9589            Adcmpsr1_SPEC,
9590            crate::common::RW,
9591        >::from_register(self, 0)
9592    }
9593
9594    #[doc = "Compare Window A Flag"]
9595    #[inline(always)]
9596    pub fn cmpstcha28(
9597        self,
9598    ) -> crate::common::RegisterField<
9599        12,
9600        0x1,
9601        1,
9602        0,
9603        adcmpsr1::Cmpstcha28,
9604        adcmpsr1::Cmpstcha28,
9605        Adcmpsr1_SPEC,
9606        crate::common::RW,
9607    > {
9608        crate::common::RegisterField::<
9609            12,
9610            0x1,
9611            1,
9612            0,
9613            adcmpsr1::Cmpstcha28,
9614            adcmpsr1::Cmpstcha28,
9615            Adcmpsr1_SPEC,
9616            crate::common::RW,
9617        >::from_register(self, 0)
9618    }
9619
9620    #[doc = "Compare Window A Flag"]
9621    #[inline(always)]
9622    pub fn cmpstcha29(
9623        self,
9624    ) -> crate::common::RegisterField<
9625        13,
9626        0x1,
9627        1,
9628        0,
9629        adcmpsr1::Cmpstcha29,
9630        adcmpsr1::Cmpstcha29,
9631        Adcmpsr1_SPEC,
9632        crate::common::RW,
9633    > {
9634        crate::common::RegisterField::<
9635            13,
9636            0x1,
9637            1,
9638            0,
9639            adcmpsr1::Cmpstcha29,
9640            adcmpsr1::Cmpstcha29,
9641            Adcmpsr1_SPEC,
9642            crate::common::RW,
9643        >::from_register(self, 0)
9644    }
9645
9646    #[doc = "Compare Window A Flag"]
9647    #[inline(always)]
9648    pub fn cmpstcha30(
9649        self,
9650    ) -> crate::common::RegisterField<
9651        14,
9652        0x1,
9653        1,
9654        0,
9655        adcmpsr1::Cmpstcha30,
9656        adcmpsr1::Cmpstcha30,
9657        Adcmpsr1_SPEC,
9658        crate::common::RW,
9659    > {
9660        crate::common::RegisterField::<
9661            14,
9662            0x1,
9663            1,
9664            0,
9665            adcmpsr1::Cmpstcha30,
9666            adcmpsr1::Cmpstcha30,
9667            Adcmpsr1_SPEC,
9668            crate::common::RW,
9669        >::from_register(self, 0)
9670    }
9671
9672    #[doc = "Compare Window A Flag"]
9673    #[inline(always)]
9674    pub fn cmpstcha31(
9675        self,
9676    ) -> crate::common::RegisterField<
9677        15,
9678        0x1,
9679        1,
9680        0,
9681        adcmpsr1::Cmpstcha31,
9682        adcmpsr1::Cmpstcha31,
9683        Adcmpsr1_SPEC,
9684        crate::common::RW,
9685    > {
9686        crate::common::RegisterField::<
9687            15,
9688            0x1,
9689            1,
9690            0,
9691            adcmpsr1::Cmpstcha31,
9692            adcmpsr1::Cmpstcha31,
9693            Adcmpsr1_SPEC,
9694            crate::common::RW,
9695        >::from_register(self, 0)
9696    }
9697}
9698impl ::core::default::Default for Adcmpsr1 {
9699    #[inline(always)]
9700    fn default() -> Adcmpsr1 {
9701        <crate::RegValueT<Adcmpsr1_SPEC> as RegisterValue<_>>::new(0)
9702    }
9703}
9704pub mod adcmpsr1 {
9705
9706    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9707    pub struct Cmpstcha16_SPEC;
9708    pub type Cmpstcha16 = crate::EnumBitfieldStruct<u8, Cmpstcha16_SPEC>;
9709    impl Cmpstcha16 {
9710        #[doc = "Comparison conditions are not met."]
9711        pub const _0: Self = Self::new(0);
9712
9713        #[doc = "Comparison conditions are met."]
9714        pub const _1: Self = Self::new(1);
9715    }
9716    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9717    pub struct Cmpstcha17_SPEC;
9718    pub type Cmpstcha17 = crate::EnumBitfieldStruct<u8, Cmpstcha17_SPEC>;
9719    impl Cmpstcha17 {
9720        #[doc = "Comparison conditions are not met."]
9721        pub const _0: Self = Self::new(0);
9722
9723        #[doc = "Comparison conditions are met."]
9724        pub const _1: Self = Self::new(1);
9725    }
9726    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9727    pub struct Cmpstcha18_SPEC;
9728    pub type Cmpstcha18 = crate::EnumBitfieldStruct<u8, Cmpstcha18_SPEC>;
9729    impl Cmpstcha18 {
9730        #[doc = "Comparison conditions are not met."]
9731        pub const _0: Self = Self::new(0);
9732
9733        #[doc = "Comparison conditions are met."]
9734        pub const _1: Self = Self::new(1);
9735    }
9736    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9737    pub struct Cmpstcha19_SPEC;
9738    pub type Cmpstcha19 = crate::EnumBitfieldStruct<u8, Cmpstcha19_SPEC>;
9739    impl Cmpstcha19 {
9740        #[doc = "Comparison conditions are not met."]
9741        pub const _0: Self = Self::new(0);
9742
9743        #[doc = "Comparison conditions are met."]
9744        pub const _1: Self = Self::new(1);
9745    }
9746    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9747    pub struct Cmpstcha20_SPEC;
9748    pub type Cmpstcha20 = crate::EnumBitfieldStruct<u8, Cmpstcha20_SPEC>;
9749    impl Cmpstcha20 {
9750        #[doc = "Comparison conditions are not met."]
9751        pub const _0: Self = Self::new(0);
9752
9753        #[doc = "Comparison conditions are met."]
9754        pub const _1: Self = Self::new(1);
9755    }
9756    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9757    pub struct Cmpstcha21_SPEC;
9758    pub type Cmpstcha21 = crate::EnumBitfieldStruct<u8, Cmpstcha21_SPEC>;
9759    impl Cmpstcha21 {
9760        #[doc = "Comparison conditions are not met."]
9761        pub const _0: Self = Self::new(0);
9762
9763        #[doc = "Comparison conditions are met."]
9764        pub const _1: Self = Self::new(1);
9765    }
9766    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9767    pub struct Cmpstcha22_SPEC;
9768    pub type Cmpstcha22 = crate::EnumBitfieldStruct<u8, Cmpstcha22_SPEC>;
9769    impl Cmpstcha22 {
9770        #[doc = "Comparison conditions are not met."]
9771        pub const _0: Self = Self::new(0);
9772
9773        #[doc = "Comparison conditions are met."]
9774        pub const _1: Self = Self::new(1);
9775    }
9776    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9777    pub struct Cmpstcha23_SPEC;
9778    pub type Cmpstcha23 = crate::EnumBitfieldStruct<u8, Cmpstcha23_SPEC>;
9779    impl Cmpstcha23 {
9780        #[doc = "Comparison conditions are not met."]
9781        pub const _0: Self = Self::new(0);
9782
9783        #[doc = "Comparison conditions are met."]
9784        pub const _1: Self = Self::new(1);
9785    }
9786    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9787    pub struct Cmpstcha24_SPEC;
9788    pub type Cmpstcha24 = crate::EnumBitfieldStruct<u8, Cmpstcha24_SPEC>;
9789    impl Cmpstcha24 {
9790        #[doc = "Comparison conditions are not met."]
9791        pub const _0: Self = Self::new(0);
9792
9793        #[doc = "Comparison conditions are met."]
9794        pub const _1: Self = Self::new(1);
9795    }
9796    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9797    pub struct Cmpstcha25_SPEC;
9798    pub type Cmpstcha25 = crate::EnumBitfieldStruct<u8, Cmpstcha25_SPEC>;
9799    impl Cmpstcha25 {
9800        #[doc = "Comparison conditions are not met."]
9801        pub const _0: Self = Self::new(0);
9802
9803        #[doc = "Comparison conditions are met."]
9804        pub const _1: Self = Self::new(1);
9805    }
9806    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9807    pub struct Cmpstcha26_SPEC;
9808    pub type Cmpstcha26 = crate::EnumBitfieldStruct<u8, Cmpstcha26_SPEC>;
9809    impl Cmpstcha26 {
9810        #[doc = "Comparison conditions are not met."]
9811        pub const _0: Self = Self::new(0);
9812
9813        #[doc = "Comparison conditions are met."]
9814        pub const _1: Self = Self::new(1);
9815    }
9816    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9817    pub struct Cmpstcha27_SPEC;
9818    pub type Cmpstcha27 = crate::EnumBitfieldStruct<u8, Cmpstcha27_SPEC>;
9819    impl Cmpstcha27 {
9820        #[doc = "Comparison conditions are not met."]
9821        pub const _0: Self = Self::new(0);
9822
9823        #[doc = "Comparison conditions are met."]
9824        pub const _1: Self = Self::new(1);
9825    }
9826    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9827    pub struct Cmpstcha28_SPEC;
9828    pub type Cmpstcha28 = crate::EnumBitfieldStruct<u8, Cmpstcha28_SPEC>;
9829    impl Cmpstcha28 {
9830        #[doc = "Comparison conditions are not met."]
9831        pub const _0: Self = Self::new(0);
9832
9833        #[doc = "Comparison conditions are met."]
9834        pub const _1: Self = Self::new(1);
9835    }
9836    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9837    pub struct Cmpstcha29_SPEC;
9838    pub type Cmpstcha29 = crate::EnumBitfieldStruct<u8, Cmpstcha29_SPEC>;
9839    impl Cmpstcha29 {
9840        #[doc = "Comparison conditions are not met."]
9841        pub const _0: Self = Self::new(0);
9842
9843        #[doc = "Comparison conditions are met."]
9844        pub const _1: Self = Self::new(1);
9845    }
9846    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9847    pub struct Cmpstcha30_SPEC;
9848    pub type Cmpstcha30 = crate::EnumBitfieldStruct<u8, Cmpstcha30_SPEC>;
9849    impl Cmpstcha30 {
9850        #[doc = "Comparison conditions are not met."]
9851        pub const _0: Self = Self::new(0);
9852
9853        #[doc = "Comparison conditions are met."]
9854        pub const _1: Self = Self::new(1);
9855    }
9856    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9857    pub struct Cmpstcha31_SPEC;
9858    pub type Cmpstcha31 = crate::EnumBitfieldStruct<u8, Cmpstcha31_SPEC>;
9859    impl Cmpstcha31 {
9860        #[doc = "Comparison conditions are not met."]
9861        pub const _0: Self = Self::new(0);
9862
9863        #[doc = "Comparison conditions are met."]
9864        pub const _1: Self = Self::new(1);
9865    }
9866}
9867#[doc(hidden)]
9868#[derive(Copy, Clone, Eq, PartialEq)]
9869pub struct Adcmpser_SPEC;
9870impl crate::sealed::RegSpec for Adcmpser_SPEC {
9871    type DataType = u8;
9872}
9873
9874#[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
9875pub type Adcmpser = crate::RegValueT<Adcmpser_SPEC>;
9876
9877impl Adcmpser {
9878    #[doc = "Compare Window A Temperature Sensor Output Compare Flag"]
9879    #[inline(always)]
9880    pub fn cmpsttsa(
9881        self,
9882    ) -> crate::common::RegisterField<
9883        0,
9884        0x1,
9885        1,
9886        0,
9887        adcmpser::Cmpsttsa,
9888        adcmpser::Cmpsttsa,
9889        Adcmpser_SPEC,
9890        crate::common::RW,
9891    > {
9892        crate::common::RegisterField::<
9893            0,
9894            0x1,
9895            1,
9896            0,
9897            adcmpser::Cmpsttsa,
9898            adcmpser::Cmpsttsa,
9899            Adcmpser_SPEC,
9900            crate::common::RW,
9901        >::from_register(self, 0)
9902    }
9903
9904    #[doc = "Compare Window A Internal Reference Voltage Compare Flag"]
9905    #[inline(always)]
9906    pub fn cmpstoca(
9907        self,
9908    ) -> crate::common::RegisterField<
9909        1,
9910        0x1,
9911        1,
9912        0,
9913        adcmpser::Cmpstoca,
9914        adcmpser::Cmpstoca,
9915        Adcmpser_SPEC,
9916        crate::common::RW,
9917    > {
9918        crate::common::RegisterField::<
9919            1,
9920            0x1,
9921            1,
9922            0,
9923            adcmpser::Cmpstoca,
9924            adcmpser::Cmpstoca,
9925            Adcmpser_SPEC,
9926            crate::common::RW,
9927        >::from_register(self, 0)
9928    }
9929}
9930impl ::core::default::Default for Adcmpser {
9931    #[inline(always)]
9932    fn default() -> Adcmpser {
9933        <crate::RegValueT<Adcmpser_SPEC> as RegisterValue<_>>::new(0)
9934    }
9935}
9936pub mod adcmpser {
9937
9938    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9939    pub struct Cmpsttsa_SPEC;
9940    pub type Cmpsttsa = crate::EnumBitfieldStruct<u8, Cmpsttsa_SPEC>;
9941    impl Cmpsttsa {
9942        #[doc = "Comparison conditions are not met."]
9943        pub const _0: Self = Self::new(0);
9944
9945        #[doc = "Comparison conditions are met."]
9946        pub const _1: Self = Self::new(1);
9947    }
9948    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9949    pub struct Cmpstoca_SPEC;
9950    pub type Cmpstoca = crate::EnumBitfieldStruct<u8, Cmpstoca_SPEC>;
9951    impl Cmpstoca {
9952        #[doc = "Comparison conditions are not met."]
9953        pub const _0: Self = Self::new(0);
9954
9955        #[doc = "Comparison conditions are met."]
9956        pub const _1: Self = Self::new(1);
9957    }
9958}
9959#[doc(hidden)]
9960#[derive(Copy, Clone, Eq, PartialEq)]
9961pub struct Adcmpbnsr_SPEC;
9962impl crate::sealed::RegSpec for Adcmpbnsr_SPEC {
9963    type DataType = u8;
9964}
9965
9966#[doc = "A/D Compare Function Window B Channel Select Register"]
9967pub type Adcmpbnsr = crate::RegValueT<Adcmpbnsr_SPEC>;
9968
9969impl Adcmpbnsr {
9970    #[doc = "Compare Window B Channel Select"]
9971    #[inline(always)]
9972    pub fn cmpchb(
9973        self,
9974    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Adcmpbnsr_SPEC, crate::common::RW>
9975    {
9976        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Adcmpbnsr_SPEC,crate::common::RW>::from_register(self,0)
9977    }
9978
9979    #[doc = "Compare Window B Comparison Condition Setting"]
9980    #[inline(always)]
9981    pub fn cmplb(
9982        self,
9983    ) -> crate::common::RegisterField<
9984        7,
9985        0x1,
9986        1,
9987        0,
9988        adcmpbnsr::Cmplb,
9989        adcmpbnsr::Cmplb,
9990        Adcmpbnsr_SPEC,
9991        crate::common::RW,
9992    > {
9993        crate::common::RegisterField::<
9994            7,
9995            0x1,
9996            1,
9997            0,
9998            adcmpbnsr::Cmplb,
9999            adcmpbnsr::Cmplb,
10000            Adcmpbnsr_SPEC,
10001            crate::common::RW,
10002        >::from_register(self, 0)
10003    }
10004}
10005impl ::core::default::Default for Adcmpbnsr {
10006    #[inline(always)]
10007    fn default() -> Adcmpbnsr {
10008        <crate::RegValueT<Adcmpbnsr_SPEC> as RegisterValue<_>>::new(0)
10009    }
10010}
10011pub mod adcmpbnsr {
10012
10013    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10014    pub struct Cmplb_SPEC;
10015    pub type Cmplb = crate::EnumBitfieldStruct<u8, Cmplb_SPEC>;
10016    impl Cmplb {
10017        #[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"]
10018        pub const _0: Self = Self::new(0);
10019
10020        #[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"]
10021        pub const _1: Self = Self::new(1);
10022    }
10023}
10024#[doc(hidden)]
10025#[derive(Copy, Clone, Eq, PartialEq)]
10026pub struct Adwinllb_SPEC;
10027impl crate::sealed::RegSpec for Adwinllb_SPEC {
10028    type DataType = u16;
10029}
10030
10031#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
10032pub type Adwinllb = crate::RegValueT<Adwinllb_SPEC>;
10033
10034impl NoBitfieldReg<Adwinllb_SPEC> for Adwinllb {}
10035impl ::core::default::Default for Adwinllb {
10036    #[inline(always)]
10037    fn default() -> Adwinllb {
10038        <crate::RegValueT<Adwinllb_SPEC> as RegisterValue<_>>::new(0)
10039    }
10040}
10041
10042#[doc(hidden)]
10043#[derive(Copy, Clone, Eq, PartialEq)]
10044pub struct Adwinulb_SPEC;
10045impl crate::sealed::RegSpec for Adwinulb_SPEC {
10046    type DataType = u16;
10047}
10048
10049#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
10050pub type Adwinulb = crate::RegValueT<Adwinulb_SPEC>;
10051
10052impl NoBitfieldReg<Adwinulb_SPEC> for Adwinulb {}
10053impl ::core::default::Default for Adwinulb {
10054    #[inline(always)]
10055    fn default() -> Adwinulb {
10056        <crate::RegValueT<Adwinulb_SPEC> as RegisterValue<_>>::new(0)
10057    }
10058}
10059
10060#[doc(hidden)]
10061#[derive(Copy, Clone, Eq, PartialEq)]
10062pub struct Adcmpbsr_SPEC;
10063impl crate::sealed::RegSpec for Adcmpbsr_SPEC {
10064    type DataType = u8;
10065}
10066
10067#[doc = "A/D Compare Function Window B Status Register"]
10068pub type Adcmpbsr = crate::RegValueT<Adcmpbsr_SPEC>;
10069
10070impl Adcmpbsr {
10071    #[doc = "Compare Window B Flag"]
10072    #[inline(always)]
10073    pub fn cmpstb(
10074        self,
10075    ) -> crate::common::RegisterField<
10076        0,
10077        0x1,
10078        1,
10079        0,
10080        adcmpbsr::Cmpstb,
10081        adcmpbsr::Cmpstb,
10082        Adcmpbsr_SPEC,
10083        crate::common::RW,
10084    > {
10085        crate::common::RegisterField::<
10086            0,
10087            0x1,
10088            1,
10089            0,
10090            adcmpbsr::Cmpstb,
10091            adcmpbsr::Cmpstb,
10092            Adcmpbsr_SPEC,
10093            crate::common::RW,
10094        >::from_register(self, 0)
10095    }
10096}
10097impl ::core::default::Default for Adcmpbsr {
10098    #[inline(always)]
10099    fn default() -> Adcmpbsr {
10100        <crate::RegValueT<Adcmpbsr_SPEC> as RegisterValue<_>>::new(0)
10101    }
10102}
10103pub mod adcmpbsr {
10104
10105    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10106    pub struct Cmpstb_SPEC;
10107    pub type Cmpstb = crate::EnumBitfieldStruct<u8, Cmpstb_SPEC>;
10108    impl Cmpstb {
10109        #[doc = "Comparison conditions are not met."]
10110        pub const _0: Self = Self::new(0);
10111
10112        #[doc = "Comparison conditions are met."]
10113        pub const _1: Self = Self::new(1);
10114    }
10115}
10116#[doc(hidden)]
10117#[derive(Copy, Clone, Eq, PartialEq)]
10118pub struct Adbuf_SPEC;
10119impl crate::sealed::RegSpec for Adbuf_SPEC {
10120    type DataType = u16;
10121}
10122
10123#[doc = "A/D Data Buffer Registers %s"]
10124pub type Adbuf = crate::RegValueT<Adbuf_SPEC>;
10125
10126impl Adbuf {
10127    #[doc = "Converted Value 15 to 0"]
10128    #[inline(always)]
10129    pub fn adbuf(
10130        self,
10131    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Adbuf_SPEC, crate::common::R> {
10132        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Adbuf_SPEC,crate::common::R>::from_register(self,0)
10133    }
10134}
10135impl ::core::default::Default for Adbuf {
10136    #[inline(always)]
10137    fn default() -> Adbuf {
10138        <crate::RegValueT<Adbuf_SPEC> as RegisterValue<_>>::new(0)
10139    }
10140}
10141
10142#[doc(hidden)]
10143#[derive(Copy, Clone, Eq, PartialEq)]
10144pub struct Adbufen_SPEC;
10145impl crate::sealed::RegSpec for Adbufen_SPEC {
10146    type DataType = u8;
10147}
10148
10149#[doc = "A/D Data Buffer Enable Register"]
10150pub type Adbufen = crate::RegValueT<Adbufen_SPEC>;
10151
10152impl Adbufen {
10153    #[doc = "Data Buffer Enable"]
10154    #[inline(always)]
10155    pub fn bufen(
10156        self,
10157    ) -> crate::common::RegisterField<
10158        0,
10159        0x1,
10160        1,
10161        0,
10162        adbufen::Bufen,
10163        adbufen::Bufen,
10164        Adbufen_SPEC,
10165        crate::common::RW,
10166    > {
10167        crate::common::RegisterField::<
10168            0,
10169            0x1,
10170            1,
10171            0,
10172            adbufen::Bufen,
10173            adbufen::Bufen,
10174            Adbufen_SPEC,
10175            crate::common::RW,
10176        >::from_register(self, 0)
10177    }
10178}
10179impl ::core::default::Default for Adbufen {
10180    #[inline(always)]
10181    fn default() -> Adbufen {
10182        <crate::RegValueT<Adbufen_SPEC> as RegisterValue<_>>::new(0)
10183    }
10184}
10185pub mod adbufen {
10186
10187    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10188    pub struct Bufen_SPEC;
10189    pub type Bufen = crate::EnumBitfieldStruct<u8, Bufen_SPEC>;
10190    impl Bufen {
10191        #[doc = "The data buffer is not used."]
10192        pub const _0: Self = Self::new(0);
10193
10194        #[doc = "The data buffer is used."]
10195        pub const _1: Self = Self::new(1);
10196    }
10197}
10198#[doc(hidden)]
10199#[derive(Copy, Clone, Eq, PartialEq)]
10200pub struct Adbufptr_SPEC;
10201impl crate::sealed::RegSpec for Adbufptr_SPEC {
10202    type DataType = u8;
10203}
10204
10205#[doc = "A/D Data Buffer Pointer Register"]
10206pub type Adbufptr = crate::RegValueT<Adbufptr_SPEC>;
10207
10208impl Adbufptr {
10209    #[doc = "Data Buffer Pointer"]
10210    #[inline(always)]
10211    pub fn bufptr(
10212        self,
10213    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Adbufptr_SPEC, crate::common::RW> {
10214        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Adbufptr_SPEC,crate::common::RW>::from_register(self,0)
10215    }
10216
10217    #[doc = "Pointer Overflow Flag"]
10218    #[inline(always)]
10219    pub fn ptrovf(
10220        self,
10221    ) -> crate::common::RegisterField<
10222        4,
10223        0x1,
10224        1,
10225        0,
10226        adbufptr::Ptrovf,
10227        adbufptr::Ptrovf,
10228        Adbufptr_SPEC,
10229        crate::common::RW,
10230    > {
10231        crate::common::RegisterField::<
10232            4,
10233            0x1,
10234            1,
10235            0,
10236            adbufptr::Ptrovf,
10237            adbufptr::Ptrovf,
10238            Adbufptr_SPEC,
10239            crate::common::RW,
10240        >::from_register(self, 0)
10241    }
10242}
10243impl ::core::default::Default for Adbufptr {
10244    #[inline(always)]
10245    fn default() -> Adbufptr {
10246        <crate::RegValueT<Adbufptr_SPEC> as RegisterValue<_>>::new(0)
10247    }
10248}
10249pub mod adbufptr {
10250
10251    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
10252    pub struct Ptrovf_SPEC;
10253    pub type Ptrovf = crate::EnumBitfieldStruct<u8, Ptrovf_SPEC>;
10254    impl Ptrovf {
10255        #[doc = "The data buffer pointer has not overflowed."]
10256        pub const _0: Self = Self::new(0);
10257
10258        #[doc = "The data buffer pointer has overflowed."]
10259        pub const _1: Self = Self::new(1);
10260    }
10261}
10262#[doc(hidden)]
10263#[derive(Copy, Clone, Eq, PartialEq)]
10264pub struct Adsstrl_SPEC;
10265impl crate::sealed::RegSpec for Adsstrl_SPEC {
10266    type DataType = u8;
10267}
10268
10269#[doc = "A/D Sampling State Register"]
10270pub type Adsstrl = crate::RegValueT<Adsstrl_SPEC>;
10271
10272impl Adsstrl {
10273    #[doc = "Sampling Time Setting"]
10274    #[inline(always)]
10275    pub fn sst(
10276        self,
10277    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrl_SPEC, crate::common::RW> {
10278        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrl_SPEC,crate::common::RW>::from_register(self,0)
10279    }
10280}
10281impl ::core::default::Default for Adsstrl {
10282    #[inline(always)]
10283    fn default() -> Adsstrl {
10284        <crate::RegValueT<Adsstrl_SPEC> as RegisterValue<_>>::new(11)
10285    }
10286}
10287
10288#[doc(hidden)]
10289#[derive(Copy, Clone, Eq, PartialEq)]
10290pub struct Adsstrt_SPEC;
10291impl crate::sealed::RegSpec for Adsstrt_SPEC {
10292    type DataType = u8;
10293}
10294
10295#[doc = "A/D Sampling State Register"]
10296pub type Adsstrt = crate::RegValueT<Adsstrt_SPEC>;
10297
10298impl Adsstrt {
10299    #[doc = "Sampling Time Setting"]
10300    #[inline(always)]
10301    pub fn sst(
10302        self,
10303    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstrt_SPEC, crate::common::RW> {
10304        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstrt_SPEC,crate::common::RW>::from_register(self,0)
10305    }
10306}
10307impl ::core::default::Default for Adsstrt {
10308    #[inline(always)]
10309    fn default() -> Adsstrt {
10310        <crate::RegValueT<Adsstrt_SPEC> as RegisterValue<_>>::new(11)
10311    }
10312}
10313
10314#[doc(hidden)]
10315#[derive(Copy, Clone, Eq, PartialEq)]
10316pub struct Adsstro_SPEC;
10317impl crate::sealed::RegSpec for Adsstro_SPEC {
10318    type DataType = u8;
10319}
10320
10321#[doc = "A/D Sampling State Register"]
10322pub type Adsstro = crate::RegValueT<Adsstro_SPEC>;
10323
10324impl Adsstro {
10325    #[doc = "Sampling Time Setting"]
10326    #[inline(always)]
10327    pub fn sst(
10328        self,
10329    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstro_SPEC, crate::common::RW> {
10330        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstro_SPEC,crate::common::RW>::from_register(self,0)
10331    }
10332}
10333impl ::core::default::Default for Adsstro {
10334    #[inline(always)]
10335    fn default() -> Adsstro {
10336        <crate::RegValueT<Adsstro_SPEC> as RegisterValue<_>>::new(11)
10337    }
10338}
10339
10340#[doc(hidden)]
10341#[derive(Copy, Clone, Eq, PartialEq)]
10342pub struct Adsstr_SPEC;
10343impl crate::sealed::RegSpec for Adsstr_SPEC {
10344    type DataType = u8;
10345}
10346
10347#[doc = "A/D Sampling State Register"]
10348pub type Adsstr = crate::RegValueT<Adsstr_SPEC>;
10349
10350impl Adsstr {
10351    #[doc = "Sampling Time Setting"]
10352    #[inline(always)]
10353    pub fn sst(
10354        self,
10355    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Adsstr_SPEC, crate::common::RW> {
10356        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Adsstr_SPEC,crate::common::RW>::from_register(self,0)
10357    }
10358}
10359impl ::core::default::Default for Adsstr {
10360    #[inline(always)]
10361    fn default() -> Adsstr {
10362        <crate::RegValueT<Adsstr_SPEC> as RegisterValue<_>>::new(11)
10363    }
10364}