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