ra8e2_pac/
rtc.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.00.01, with svd2pac 0.6.0 on Thu, 24 Jul 2025 04:54:26 +0000
19
20#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"Realtime Clock"]
28unsafe impl ::core::marker::Send for super::Rtc {}
29unsafe impl ::core::marker::Sync for super::Rtc {}
30impl super::Rtc {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "64-Hz Counter"]
38    #[inline(always)]
39    pub const fn r64cnt(&self) -> &'static crate::common::Reg<self::R64Cnt_SPEC, crate::common::R> {
40        unsafe {
41            crate::common::Reg::<self::R64Cnt_SPEC, crate::common::R>::from_ptr(
42                self._svd2pac_as_ptr().add(0usize),
43            )
44        }
45    }
46
47    #[doc = "Binary Counter %s"]
48    #[inline(always)]
49    pub const fn bcnt(
50        &self,
51    ) -> &'static crate::common::ClusterRegisterArray<
52        crate::common::Reg<self::Bcnt_SPEC, crate::common::RW>,
53        4,
54        0x2,
55    > {
56        unsafe {
57            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x2usize))
58        }
59    }
60    #[inline(always)]
61    pub const fn bcnt0(&self) -> &'static crate::common::Reg<self::Bcnt_SPEC, crate::common::RW> {
62        unsafe {
63            crate::common::Reg::<self::Bcnt_SPEC, crate::common::RW>::from_ptr(
64                self._svd2pac_as_ptr().add(0x2usize),
65            )
66        }
67    }
68    #[inline(always)]
69    pub const fn bcnt1(&self) -> &'static crate::common::Reg<self::Bcnt_SPEC, crate::common::RW> {
70        unsafe {
71            crate::common::Reg::<self::Bcnt_SPEC, crate::common::RW>::from_ptr(
72                self._svd2pac_as_ptr().add(0x4usize),
73            )
74        }
75    }
76    #[inline(always)]
77    pub const fn bcnt2(&self) -> &'static crate::common::Reg<self::Bcnt_SPEC, crate::common::RW> {
78        unsafe {
79            crate::common::Reg::<self::Bcnt_SPEC, crate::common::RW>::from_ptr(
80                self._svd2pac_as_ptr().add(0x6usize),
81            )
82        }
83    }
84    #[inline(always)]
85    pub const fn bcnt3(&self) -> &'static crate::common::Reg<self::Bcnt_SPEC, crate::common::RW> {
86        unsafe {
87            crate::common::Reg::<self::Bcnt_SPEC, crate::common::RW>::from_ptr(
88                self._svd2pac_as_ptr().add(0x8usize),
89            )
90        }
91    }
92
93    #[doc = "Second Counter (in Calendar Count Mode)"]
94    #[inline(always)]
95    pub const fn rseccnt(
96        &self,
97    ) -> &'static crate::common::Reg<self::Rseccnt_SPEC, crate::common::RW> {
98        unsafe {
99            crate::common::Reg::<self::Rseccnt_SPEC, crate::common::RW>::from_ptr(
100                self._svd2pac_as_ptr().add(2usize),
101            )
102        }
103    }
104
105    #[doc = "Minute Counter (in Calendar Count Mode)"]
106    #[inline(always)]
107    pub const fn rmincnt(
108        &self,
109    ) -> &'static crate::common::Reg<self::Rmincnt_SPEC, crate::common::RW> {
110        unsafe {
111            crate::common::Reg::<self::Rmincnt_SPEC, crate::common::RW>::from_ptr(
112                self._svd2pac_as_ptr().add(4usize),
113            )
114        }
115    }
116
117    #[doc = "Hour Counter (in Calendar Count Mode)"]
118    #[inline(always)]
119    pub const fn rhrcnt(
120        &self,
121    ) -> &'static crate::common::Reg<self::Rhrcnt_SPEC, crate::common::RW> {
122        unsafe {
123            crate::common::Reg::<self::Rhrcnt_SPEC, crate::common::RW>::from_ptr(
124                self._svd2pac_as_ptr().add(6usize),
125            )
126        }
127    }
128
129    #[doc = "Day-of-Week Counter (in Calendar Count Mode)"]
130    #[inline(always)]
131    pub const fn rwkcnt(
132        &self,
133    ) -> &'static crate::common::Reg<self::Rwkcnt_SPEC, crate::common::RW> {
134        unsafe {
135            crate::common::Reg::<self::Rwkcnt_SPEC, crate::common::RW>::from_ptr(
136                self._svd2pac_as_ptr().add(8usize),
137            )
138        }
139    }
140
141    #[doc = "Day Counter"]
142    #[inline(always)]
143    pub const fn rdaycnt(
144        &self,
145    ) -> &'static crate::common::Reg<self::Rdaycnt_SPEC, crate::common::RW> {
146        unsafe {
147            crate::common::Reg::<self::Rdaycnt_SPEC, crate::common::RW>::from_ptr(
148                self._svd2pac_as_ptr().add(10usize),
149            )
150        }
151    }
152
153    #[doc = "Month Counter"]
154    #[inline(always)]
155    pub const fn rmoncnt(
156        &self,
157    ) -> &'static crate::common::Reg<self::Rmoncnt_SPEC, crate::common::RW> {
158        unsafe {
159            crate::common::Reg::<self::Rmoncnt_SPEC, crate::common::RW>::from_ptr(
160                self._svd2pac_as_ptr().add(12usize),
161            )
162        }
163    }
164
165    #[doc = "Year Counter"]
166    #[inline(always)]
167    pub const fn ryrcnt(
168        &self,
169    ) -> &'static crate::common::Reg<self::Ryrcnt_SPEC, crate::common::RW> {
170        unsafe {
171            crate::common::Reg::<self::Ryrcnt_SPEC, crate::common::RW>::from_ptr(
172                self._svd2pac_as_ptr().add(14usize),
173            )
174        }
175    }
176
177    #[doc = "Binary Counter %s Alarm Register"]
178    #[inline(always)]
179    pub const fn bcntar(
180        &self,
181    ) -> &'static crate::common::ClusterRegisterArray<
182        crate::common::Reg<self::Bcntar_SPEC, crate::common::RW>,
183        4,
184        0x2,
185    > {
186        unsafe {
187            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x10usize))
188        }
189    }
190    #[inline(always)]
191    pub const fn bcnt0ar(
192        &self,
193    ) -> &'static crate::common::Reg<self::Bcntar_SPEC, crate::common::RW> {
194        unsafe {
195            crate::common::Reg::<self::Bcntar_SPEC, crate::common::RW>::from_ptr(
196                self._svd2pac_as_ptr().add(0x10usize),
197            )
198        }
199    }
200    #[inline(always)]
201    pub const fn bcnt1ar(
202        &self,
203    ) -> &'static crate::common::Reg<self::Bcntar_SPEC, crate::common::RW> {
204        unsafe {
205            crate::common::Reg::<self::Bcntar_SPEC, crate::common::RW>::from_ptr(
206                self._svd2pac_as_ptr().add(0x12usize),
207            )
208        }
209    }
210    #[inline(always)]
211    pub const fn bcnt2ar(
212        &self,
213    ) -> &'static crate::common::Reg<self::Bcntar_SPEC, crate::common::RW> {
214        unsafe {
215            crate::common::Reg::<self::Bcntar_SPEC, crate::common::RW>::from_ptr(
216                self._svd2pac_as_ptr().add(0x14usize),
217            )
218        }
219    }
220    #[inline(always)]
221    pub const fn bcnt3ar(
222        &self,
223    ) -> &'static crate::common::Reg<self::Bcntar_SPEC, crate::common::RW> {
224        unsafe {
225            crate::common::Reg::<self::Bcntar_SPEC, crate::common::RW>::from_ptr(
226                self._svd2pac_as_ptr().add(0x16usize),
227            )
228        }
229    }
230
231    #[doc = "Second Alarm Register (in Calendar Count Mode)"]
232    #[inline(always)]
233    pub const fn rsecar(
234        &self,
235    ) -> &'static crate::common::Reg<self::Rsecar_SPEC, crate::common::RW> {
236        unsafe {
237            crate::common::Reg::<self::Rsecar_SPEC, crate::common::RW>::from_ptr(
238                self._svd2pac_as_ptr().add(16usize),
239            )
240        }
241    }
242
243    #[doc = "Minute Alarm Register (in Calendar Count Mode)"]
244    #[inline(always)]
245    pub const fn rminar(
246        &self,
247    ) -> &'static crate::common::Reg<self::Rminar_SPEC, crate::common::RW> {
248        unsafe {
249            crate::common::Reg::<self::Rminar_SPEC, crate::common::RW>::from_ptr(
250                self._svd2pac_as_ptr().add(18usize),
251            )
252        }
253    }
254
255    #[doc = "Hour Alarm Register (in Calendar Count Mode)"]
256    #[inline(always)]
257    pub const fn rhrar(&self) -> &'static crate::common::Reg<self::Rhrar_SPEC, crate::common::RW> {
258        unsafe {
259            crate::common::Reg::<self::Rhrar_SPEC, crate::common::RW>::from_ptr(
260                self._svd2pac_as_ptr().add(20usize),
261            )
262        }
263    }
264
265    #[doc = "Day-of-Week Alarm Register (in Calendar Count Mode)"]
266    #[inline(always)]
267    pub const fn rwkar(&self) -> &'static crate::common::Reg<self::Rwkar_SPEC, crate::common::RW> {
268        unsafe {
269            crate::common::Reg::<self::Rwkar_SPEC, crate::common::RW>::from_ptr(
270                self._svd2pac_as_ptr().add(22usize),
271            )
272        }
273    }
274
275    #[doc = "Binary Counter %s Alarm Enable Register"]
276    #[inline(always)]
277    pub const fn bcntaer(
278        &self,
279    ) -> &'static crate::common::ClusterRegisterArray<
280        crate::common::Reg<self::Bcntaer_SPEC, crate::common::RW>,
281        4,
282        0x2,
283    > {
284        unsafe {
285            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x18usize))
286        }
287    }
288    #[inline(always)]
289    pub const fn bcnt0aer(
290        &self,
291    ) -> &'static crate::common::Reg<self::Bcntaer_SPEC, crate::common::RW> {
292        unsafe {
293            crate::common::Reg::<self::Bcntaer_SPEC, crate::common::RW>::from_ptr(
294                self._svd2pac_as_ptr().add(0x18usize),
295            )
296        }
297    }
298    #[inline(always)]
299    pub const fn bcnt1aer(
300        &self,
301    ) -> &'static crate::common::Reg<self::Bcntaer_SPEC, crate::common::RW> {
302        unsafe {
303            crate::common::Reg::<self::Bcntaer_SPEC, crate::common::RW>::from_ptr(
304                self._svd2pac_as_ptr().add(0x1ausize),
305            )
306        }
307    }
308    #[inline(always)]
309    pub const fn bcnt2aer(
310        &self,
311    ) -> &'static crate::common::Reg<self::Bcntaer_SPEC, crate::common::RW> {
312        unsafe {
313            crate::common::Reg::<self::Bcntaer_SPEC, crate::common::RW>::from_ptr(
314                self._svd2pac_as_ptr().add(0x1cusize),
315            )
316        }
317    }
318    #[inline(always)]
319    pub const fn bcnt3aer(
320        &self,
321    ) -> &'static crate::common::Reg<self::Bcntaer_SPEC, crate::common::RW> {
322        unsafe {
323            crate::common::Reg::<self::Bcntaer_SPEC, crate::common::RW>::from_ptr(
324                self._svd2pac_as_ptr().add(0x1eusize),
325            )
326        }
327    }
328
329    #[doc = "Date Alarm Register (in Calendar Count Mode)"]
330    #[inline(always)]
331    pub const fn rdayar(
332        &self,
333    ) -> &'static crate::common::Reg<self::Rdayar_SPEC, crate::common::RW> {
334        unsafe {
335            crate::common::Reg::<self::Rdayar_SPEC, crate::common::RW>::from_ptr(
336                self._svd2pac_as_ptr().add(24usize),
337            )
338        }
339    }
340
341    #[doc = "Month Alarm Register (in Calendar Count Mode)"]
342    #[inline(always)]
343    pub const fn rmonar(
344        &self,
345    ) -> &'static crate::common::Reg<self::Rmonar_SPEC, crate::common::RW> {
346        unsafe {
347            crate::common::Reg::<self::Rmonar_SPEC, crate::common::RW>::from_ptr(
348                self._svd2pac_as_ptr().add(26usize),
349            )
350        }
351    }
352
353    #[doc = "Year Alarm Register (in Calendar Count Mode)"]
354    #[inline(always)]
355    pub const fn ryrar(&self) -> &'static crate::common::Reg<self::Ryrar_SPEC, crate::common::RW> {
356        unsafe {
357            crate::common::Reg::<self::Ryrar_SPEC, crate::common::RW>::from_ptr(
358                self._svd2pac_as_ptr().add(28usize),
359            )
360        }
361    }
362
363    #[doc = "Year Alarm Enable Register (in Calendar Count Mode)"]
364    #[inline(always)]
365    pub const fn ryraren(
366        &self,
367    ) -> &'static crate::common::Reg<self::Ryraren_SPEC, crate::common::RW> {
368        unsafe {
369            crate::common::Reg::<self::Ryraren_SPEC, crate::common::RW>::from_ptr(
370                self._svd2pac_as_ptr().add(30usize),
371            )
372        }
373    }
374
375    #[doc = "RTC Control Register 1"]
376    #[inline(always)]
377    pub const fn rcr1(&self) -> &'static crate::common::Reg<self::Rcr1_SPEC, crate::common::RW> {
378        unsafe {
379            crate::common::Reg::<self::Rcr1_SPEC, crate::common::RW>::from_ptr(
380                self._svd2pac_as_ptr().add(34usize),
381            )
382        }
383    }
384
385    #[doc = "RTC Control Register 2 (in Calendar Count Mode)"]
386    #[inline(always)]
387    pub const fn rcr2(&self) -> &'static crate::common::Reg<self::Rcr2_SPEC, crate::common::RW> {
388        unsafe {
389            crate::common::Reg::<self::Rcr2_SPEC, crate::common::RW>::from_ptr(
390                self._svd2pac_as_ptr().add(36usize),
391            )
392        }
393    }
394
395    #[doc = "RTC Control Register 2 (in Binary Count Mode)"]
396    #[inline(always)]
397    pub const fn rcr2_bcnt(
398        &self,
399    ) -> &'static crate::common::Reg<self::Rcr2Bcnt_SPEC, crate::common::RW> {
400        unsafe {
401            crate::common::Reg::<self::Rcr2Bcnt_SPEC, crate::common::RW>::from_ptr(
402                self._svd2pac_as_ptr().add(36usize),
403            )
404        }
405    }
406
407    #[doc = "RTC Control Register 4"]
408    #[inline(always)]
409    pub const fn rcr4(&self) -> &'static crate::common::Reg<self::Rcr4_SPEC, crate::common::RW> {
410        unsafe {
411            crate::common::Reg::<self::Rcr4_SPEC, crate::common::RW>::from_ptr(
412                self._svd2pac_as_ptr().add(40usize),
413            )
414        }
415    }
416
417    #[doc = "Frequency Register H"]
418    #[inline(always)]
419    pub const fn rfrh(&self) -> &'static crate::common::Reg<self::Rfrh_SPEC, crate::common::RW> {
420        unsafe {
421            crate::common::Reg::<self::Rfrh_SPEC, crate::common::RW>::from_ptr(
422                self._svd2pac_as_ptr().add(42usize),
423            )
424        }
425    }
426
427    #[doc = "Frequency Register L"]
428    #[inline(always)]
429    pub const fn rfrl(&self) -> &'static crate::common::Reg<self::Rfrl_SPEC, crate::common::RW> {
430        unsafe {
431            crate::common::Reg::<self::Rfrl_SPEC, crate::common::RW>::from_ptr(
432                self._svd2pac_as_ptr().add(44usize),
433            )
434        }
435    }
436
437    #[doc = "Time Error Adjustment Register"]
438    #[inline(always)]
439    pub const fn radj(&self) -> &'static crate::common::Reg<self::Radj_SPEC, crate::common::RW> {
440        unsafe {
441            crate::common::Reg::<self::Radj_SPEC, crate::common::RW>::from_ptr(
442                self._svd2pac_as_ptr().add(46usize),
443            )
444        }
445    }
446
447    #[doc = "Time Capture Control Register %s"]
448    #[inline(always)]
449    pub const fn rtccr(
450        &self,
451    ) -> &'static crate::common::ClusterRegisterArray<
452        crate::common::Reg<self::Rtccr_SPEC, crate::common::RW>,
453        3,
454        0x2,
455    > {
456        unsafe {
457            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x40usize))
458        }
459    }
460    #[inline(always)]
461    pub const fn rtccr0(&self) -> &'static crate::common::Reg<self::Rtccr_SPEC, crate::common::RW> {
462        unsafe {
463            crate::common::Reg::<self::Rtccr_SPEC, crate::common::RW>::from_ptr(
464                self._svd2pac_as_ptr().add(0x40usize),
465            )
466        }
467    }
468    #[inline(always)]
469    pub const fn rtccr1(&self) -> &'static crate::common::Reg<self::Rtccr_SPEC, crate::common::RW> {
470        unsafe {
471            crate::common::Reg::<self::Rtccr_SPEC, crate::common::RW>::from_ptr(
472                self._svd2pac_as_ptr().add(0x42usize),
473            )
474        }
475    }
476    #[inline(always)]
477    pub const fn rtccr2(&self) -> &'static crate::common::Reg<self::Rtccr_SPEC, crate::common::RW> {
478        unsafe {
479            crate::common::Reg::<self::Rtccr_SPEC, crate::common::RW>::from_ptr(
480                self._svd2pac_as_ptr().add(0x44usize),
481            )
482        }
483    }
484
485    #[doc = "BCNT0 Capture Register %s"]
486    #[inline(always)]
487    pub const fn bcnt0cp(
488        &self,
489    ) -> &'static crate::common::ClusterRegisterArray<
490        crate::common::Reg<self::Bcnt0Cp_SPEC, crate::common::R>,
491        3,
492        0x10,
493    > {
494        unsafe {
495            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x52usize))
496        }
497    }
498    #[inline(always)]
499    pub const fn bcnt0cp0(
500        &self,
501    ) -> &'static crate::common::Reg<self::Bcnt0Cp_SPEC, crate::common::R> {
502        unsafe {
503            crate::common::Reg::<self::Bcnt0Cp_SPEC, crate::common::R>::from_ptr(
504                self._svd2pac_as_ptr().add(0x52usize),
505            )
506        }
507    }
508    #[inline(always)]
509    pub const fn bcnt0cp1(
510        &self,
511    ) -> &'static crate::common::Reg<self::Bcnt0Cp_SPEC, crate::common::R> {
512        unsafe {
513            crate::common::Reg::<self::Bcnt0Cp_SPEC, crate::common::R>::from_ptr(
514                self._svd2pac_as_ptr().add(0x62usize),
515            )
516        }
517    }
518    #[inline(always)]
519    pub const fn bcnt0cp2(
520        &self,
521    ) -> &'static crate::common::Reg<self::Bcnt0Cp_SPEC, crate::common::R> {
522        unsafe {
523            crate::common::Reg::<self::Bcnt0Cp_SPEC, crate::common::R>::from_ptr(
524                self._svd2pac_as_ptr().add(0x72usize),
525            )
526        }
527    }
528
529    #[doc = "Second Capture Register %s"]
530    #[inline(always)]
531    pub const fn rseccp(
532        &self,
533    ) -> &'static crate::common::ClusterRegisterArray<
534        crate::common::Reg<self::Rseccp_SPEC, crate::common::R>,
535        3,
536        0x10,
537    > {
538        unsafe {
539            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x52usize))
540        }
541    }
542    #[inline(always)]
543    pub const fn rseccp0(
544        &self,
545    ) -> &'static crate::common::Reg<self::Rseccp_SPEC, crate::common::R> {
546        unsafe {
547            crate::common::Reg::<self::Rseccp_SPEC, crate::common::R>::from_ptr(
548                self._svd2pac_as_ptr().add(0x52usize),
549            )
550        }
551    }
552    #[inline(always)]
553    pub const fn rseccp1(
554        &self,
555    ) -> &'static crate::common::Reg<self::Rseccp_SPEC, crate::common::R> {
556        unsafe {
557            crate::common::Reg::<self::Rseccp_SPEC, crate::common::R>::from_ptr(
558                self._svd2pac_as_ptr().add(0x62usize),
559            )
560        }
561    }
562    #[inline(always)]
563    pub const fn rseccp2(
564        &self,
565    ) -> &'static crate::common::Reg<self::Rseccp_SPEC, crate::common::R> {
566        unsafe {
567            crate::common::Reg::<self::Rseccp_SPEC, crate::common::R>::from_ptr(
568                self._svd2pac_as_ptr().add(0x72usize),
569            )
570        }
571    }
572
573    #[doc = "BCNT1 Capture Register %s"]
574    #[inline(always)]
575    pub const fn bcnt1cp(
576        &self,
577    ) -> &'static crate::common::ClusterRegisterArray<
578        crate::common::Reg<self::Bcnt1Cp_SPEC, crate::common::R>,
579        3,
580        0x10,
581    > {
582        unsafe {
583            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x54usize))
584        }
585    }
586    #[inline(always)]
587    pub const fn bcnt1cp0(
588        &self,
589    ) -> &'static crate::common::Reg<self::Bcnt1Cp_SPEC, crate::common::R> {
590        unsafe {
591            crate::common::Reg::<self::Bcnt1Cp_SPEC, crate::common::R>::from_ptr(
592                self._svd2pac_as_ptr().add(0x54usize),
593            )
594        }
595    }
596    #[inline(always)]
597    pub const fn bcnt1cp1(
598        &self,
599    ) -> &'static crate::common::Reg<self::Bcnt1Cp_SPEC, crate::common::R> {
600        unsafe {
601            crate::common::Reg::<self::Bcnt1Cp_SPEC, crate::common::R>::from_ptr(
602                self._svd2pac_as_ptr().add(0x64usize),
603            )
604        }
605    }
606    #[inline(always)]
607    pub const fn bcnt1cp2(
608        &self,
609    ) -> &'static crate::common::Reg<self::Bcnt1Cp_SPEC, crate::common::R> {
610        unsafe {
611            crate::common::Reg::<self::Bcnt1Cp_SPEC, crate::common::R>::from_ptr(
612                self._svd2pac_as_ptr().add(0x74usize),
613            )
614        }
615    }
616
617    #[doc = "Minute Capture Register %s"]
618    #[inline(always)]
619    pub const fn rmincp(
620        &self,
621    ) -> &'static crate::common::ClusterRegisterArray<
622        crate::common::Reg<self::Rmincp_SPEC, crate::common::R>,
623        3,
624        0x10,
625    > {
626        unsafe {
627            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x54usize))
628        }
629    }
630    #[inline(always)]
631    pub const fn rmincp0(
632        &self,
633    ) -> &'static crate::common::Reg<self::Rmincp_SPEC, crate::common::R> {
634        unsafe {
635            crate::common::Reg::<self::Rmincp_SPEC, crate::common::R>::from_ptr(
636                self._svd2pac_as_ptr().add(0x54usize),
637            )
638        }
639    }
640    #[inline(always)]
641    pub const fn rmincp1(
642        &self,
643    ) -> &'static crate::common::Reg<self::Rmincp_SPEC, crate::common::R> {
644        unsafe {
645            crate::common::Reg::<self::Rmincp_SPEC, crate::common::R>::from_ptr(
646                self._svd2pac_as_ptr().add(0x64usize),
647            )
648        }
649    }
650    #[inline(always)]
651    pub const fn rmincp2(
652        &self,
653    ) -> &'static crate::common::Reg<self::Rmincp_SPEC, crate::common::R> {
654        unsafe {
655            crate::common::Reg::<self::Rmincp_SPEC, crate::common::R>::from_ptr(
656                self._svd2pac_as_ptr().add(0x74usize),
657            )
658        }
659    }
660
661    #[doc = "BCNT2 Capture Register %s"]
662    #[inline(always)]
663    pub const fn bcnt2cp(
664        &self,
665    ) -> &'static crate::common::ClusterRegisterArray<
666        crate::common::Reg<self::Bcnt2Cp_SPEC, crate::common::R>,
667        3,
668        0x10,
669    > {
670        unsafe {
671            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x56usize))
672        }
673    }
674    #[inline(always)]
675    pub const fn bcnt2cp0(
676        &self,
677    ) -> &'static crate::common::Reg<self::Bcnt2Cp_SPEC, crate::common::R> {
678        unsafe {
679            crate::common::Reg::<self::Bcnt2Cp_SPEC, crate::common::R>::from_ptr(
680                self._svd2pac_as_ptr().add(0x56usize),
681            )
682        }
683    }
684    #[inline(always)]
685    pub const fn bcnt2cp1(
686        &self,
687    ) -> &'static crate::common::Reg<self::Bcnt2Cp_SPEC, crate::common::R> {
688        unsafe {
689            crate::common::Reg::<self::Bcnt2Cp_SPEC, crate::common::R>::from_ptr(
690                self._svd2pac_as_ptr().add(0x66usize),
691            )
692        }
693    }
694    #[inline(always)]
695    pub const fn bcnt2cp2(
696        &self,
697    ) -> &'static crate::common::Reg<self::Bcnt2Cp_SPEC, crate::common::R> {
698        unsafe {
699            crate::common::Reg::<self::Bcnt2Cp_SPEC, crate::common::R>::from_ptr(
700                self._svd2pac_as_ptr().add(0x76usize),
701            )
702        }
703    }
704
705    #[doc = "Hour Capture Register %s"]
706    #[inline(always)]
707    pub const fn rhrcp(
708        &self,
709    ) -> &'static crate::common::ClusterRegisterArray<
710        crate::common::Reg<self::Rhrcp_SPEC, crate::common::R>,
711        3,
712        0x10,
713    > {
714        unsafe {
715            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x56usize))
716        }
717    }
718    #[inline(always)]
719    pub const fn rhrcp0(&self) -> &'static crate::common::Reg<self::Rhrcp_SPEC, crate::common::R> {
720        unsafe {
721            crate::common::Reg::<self::Rhrcp_SPEC, crate::common::R>::from_ptr(
722                self._svd2pac_as_ptr().add(0x56usize),
723            )
724        }
725    }
726    #[inline(always)]
727    pub const fn rhrcp1(&self) -> &'static crate::common::Reg<self::Rhrcp_SPEC, crate::common::R> {
728        unsafe {
729            crate::common::Reg::<self::Rhrcp_SPEC, crate::common::R>::from_ptr(
730                self._svd2pac_as_ptr().add(0x66usize),
731            )
732        }
733    }
734    #[inline(always)]
735    pub const fn rhrcp2(&self) -> &'static crate::common::Reg<self::Rhrcp_SPEC, crate::common::R> {
736        unsafe {
737            crate::common::Reg::<self::Rhrcp_SPEC, crate::common::R>::from_ptr(
738                self._svd2pac_as_ptr().add(0x76usize),
739            )
740        }
741    }
742
743    #[doc = "BCNT3 Capture Register %s"]
744    #[inline(always)]
745    pub const fn bcnt3cp(
746        &self,
747    ) -> &'static crate::common::ClusterRegisterArray<
748        crate::common::Reg<self::Bcnt3Cp_SPEC, crate::common::R>,
749        3,
750        0x10,
751    > {
752        unsafe {
753            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x5ausize))
754        }
755    }
756    #[inline(always)]
757    pub const fn bcnt3cp0(
758        &self,
759    ) -> &'static crate::common::Reg<self::Bcnt3Cp_SPEC, crate::common::R> {
760        unsafe {
761            crate::common::Reg::<self::Bcnt3Cp_SPEC, crate::common::R>::from_ptr(
762                self._svd2pac_as_ptr().add(0x5ausize),
763            )
764        }
765    }
766    #[inline(always)]
767    pub const fn bcnt3cp1(
768        &self,
769    ) -> &'static crate::common::Reg<self::Bcnt3Cp_SPEC, crate::common::R> {
770        unsafe {
771            crate::common::Reg::<self::Bcnt3Cp_SPEC, crate::common::R>::from_ptr(
772                self._svd2pac_as_ptr().add(0x6ausize),
773            )
774        }
775    }
776    #[inline(always)]
777    pub const fn bcnt3cp2(
778        &self,
779    ) -> &'static crate::common::Reg<self::Bcnt3Cp_SPEC, crate::common::R> {
780        unsafe {
781            crate::common::Reg::<self::Bcnt3Cp_SPEC, crate::common::R>::from_ptr(
782                self._svd2pac_as_ptr().add(0x7ausize),
783            )
784        }
785    }
786
787    #[doc = "Date Capture Register %s"]
788    #[inline(always)]
789    pub const fn rdaycp(
790        &self,
791    ) -> &'static crate::common::ClusterRegisterArray<
792        crate::common::Reg<self::Rdaycp_SPEC, crate::common::R>,
793        3,
794        0x10,
795    > {
796        unsafe {
797            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x5ausize))
798        }
799    }
800    #[inline(always)]
801    pub const fn rdaycp0(
802        &self,
803    ) -> &'static crate::common::Reg<self::Rdaycp_SPEC, crate::common::R> {
804        unsafe {
805            crate::common::Reg::<self::Rdaycp_SPEC, crate::common::R>::from_ptr(
806                self._svd2pac_as_ptr().add(0x5ausize),
807            )
808        }
809    }
810    #[inline(always)]
811    pub const fn rdaycp1(
812        &self,
813    ) -> &'static crate::common::Reg<self::Rdaycp_SPEC, crate::common::R> {
814        unsafe {
815            crate::common::Reg::<self::Rdaycp_SPEC, crate::common::R>::from_ptr(
816                self._svd2pac_as_ptr().add(0x6ausize),
817            )
818        }
819    }
820    #[inline(always)]
821    pub const fn rdaycp2(
822        &self,
823    ) -> &'static crate::common::Reg<self::Rdaycp_SPEC, crate::common::R> {
824        unsafe {
825            crate::common::Reg::<self::Rdaycp_SPEC, crate::common::R>::from_ptr(
826                self._svd2pac_as_ptr().add(0x7ausize),
827            )
828        }
829    }
830
831    #[doc = "Month Capture Register %s"]
832    #[inline(always)]
833    pub const fn rmoncp(
834        &self,
835    ) -> &'static crate::common::ClusterRegisterArray<
836        crate::common::Reg<self::Rmoncp_SPEC, crate::common::R>,
837        3,
838        0x10,
839    > {
840        unsafe {
841            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x5cusize))
842        }
843    }
844    #[inline(always)]
845    pub const fn rmoncp0(
846        &self,
847    ) -> &'static crate::common::Reg<self::Rmoncp_SPEC, crate::common::R> {
848        unsafe {
849            crate::common::Reg::<self::Rmoncp_SPEC, crate::common::R>::from_ptr(
850                self._svd2pac_as_ptr().add(0x5cusize),
851            )
852        }
853    }
854    #[inline(always)]
855    pub const fn rmoncp1(
856        &self,
857    ) -> &'static crate::common::Reg<self::Rmoncp_SPEC, crate::common::R> {
858        unsafe {
859            crate::common::Reg::<self::Rmoncp_SPEC, crate::common::R>::from_ptr(
860                self._svd2pac_as_ptr().add(0x6cusize),
861            )
862        }
863    }
864    #[inline(always)]
865    pub const fn rmoncp2(
866        &self,
867    ) -> &'static crate::common::Reg<self::Rmoncp_SPEC, crate::common::R> {
868        unsafe {
869            crate::common::Reg::<self::Rmoncp_SPEC, crate::common::R>::from_ptr(
870                self._svd2pac_as_ptr().add(0x7cusize),
871            )
872        }
873    }
874}
875#[doc(hidden)]
876#[derive(Copy, Clone, Eq, PartialEq)]
877pub struct R64Cnt_SPEC;
878impl crate::sealed::RegSpec for R64Cnt_SPEC {
879    type DataType = u8;
880}
881
882#[doc = "64-Hz Counter"]
883pub type R64Cnt = crate::RegValueT<R64Cnt_SPEC>;
884
885impl R64Cnt {
886    #[doc = "64-Hz Flag"]
887    #[inline(always)]
888    pub fn f64hz(self) -> crate::common::RegisterFieldBool<0, 1, 0, R64Cnt_SPEC, crate::common::R> {
889        crate::common::RegisterFieldBool::<0, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
890            self, 0,
891        )
892    }
893
894    #[doc = "32-Hz Flag"]
895    #[inline(always)]
896    pub fn f32hz(self) -> crate::common::RegisterFieldBool<1, 1, 0, R64Cnt_SPEC, crate::common::R> {
897        crate::common::RegisterFieldBool::<1, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
898            self, 0,
899        )
900    }
901
902    #[doc = "16-Hz Flag"]
903    #[inline(always)]
904    pub fn f16hz(self) -> crate::common::RegisterFieldBool<2, 1, 0, R64Cnt_SPEC, crate::common::R> {
905        crate::common::RegisterFieldBool::<2, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
906            self, 0,
907        )
908    }
909
910    #[doc = "8-Hz Flag"]
911    #[inline(always)]
912    pub fn f8hz(self) -> crate::common::RegisterFieldBool<3, 1, 0, R64Cnt_SPEC, crate::common::R> {
913        crate::common::RegisterFieldBool::<3, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
914            self, 0,
915        )
916    }
917
918    #[doc = "4-Hz Flag"]
919    #[inline(always)]
920    pub fn f4hz(self) -> crate::common::RegisterFieldBool<4, 1, 0, R64Cnt_SPEC, crate::common::R> {
921        crate::common::RegisterFieldBool::<4, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
922            self, 0,
923        )
924    }
925
926    #[doc = "2-Hz Flag"]
927    #[inline(always)]
928    pub fn f2hz(self) -> crate::common::RegisterFieldBool<5, 1, 0, R64Cnt_SPEC, crate::common::R> {
929        crate::common::RegisterFieldBool::<5, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
930            self, 0,
931        )
932    }
933
934    #[doc = "1-Hz Flag"]
935    #[inline(always)]
936    pub fn f1hz(self) -> crate::common::RegisterFieldBool<6, 1, 0, R64Cnt_SPEC, crate::common::R> {
937        crate::common::RegisterFieldBool::<6, 1, 0, R64Cnt_SPEC, crate::common::R>::from_register(
938            self, 0,
939        )
940    }
941}
942impl ::core::default::Default for R64Cnt {
943    #[inline(always)]
944    fn default() -> R64Cnt {
945        <crate::RegValueT<R64Cnt_SPEC> as RegisterValue<_>>::new(0)
946    }
947}
948
949#[doc(hidden)]
950#[derive(Copy, Clone, Eq, PartialEq)]
951pub struct Bcnt_SPEC;
952impl crate::sealed::RegSpec for Bcnt_SPEC {
953    type DataType = u8;
954}
955
956#[doc = "Binary Counter %s"]
957pub type Bcnt = crate::RegValueT<Bcnt_SPEC>;
958
959impl Bcnt {
960    #[doc = "Binary Counter"]
961    #[inline(always)]
962    pub fn bcnt(
963        self,
964    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Bcnt_SPEC, crate::common::RW> {
965        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Bcnt_SPEC,crate::common::RW>::from_register(self,0)
966    }
967}
968impl ::core::default::Default for Bcnt {
969    #[inline(always)]
970    fn default() -> Bcnt {
971        <crate::RegValueT<Bcnt_SPEC> as RegisterValue<_>>::new(0)
972    }
973}
974
975#[doc(hidden)]
976#[derive(Copy, Clone, Eq, PartialEq)]
977pub struct Rseccnt_SPEC;
978impl crate::sealed::RegSpec for Rseccnt_SPEC {
979    type DataType = u8;
980}
981
982#[doc = "Second Counter (in Calendar Count Mode)"]
983pub type Rseccnt = crate::RegValueT<Rseccnt_SPEC>;
984
985impl Rseccnt {
986    #[doc = "1-Second Count"]
987    #[inline(always)]
988    pub fn sec1(
989        self,
990    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rseccnt_SPEC, crate::common::RW> {
991        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rseccnt_SPEC,crate::common::RW>::from_register(self,0)
992    }
993
994    #[doc = "10-Second Count"]
995    #[inline(always)]
996    pub fn sec10(
997        self,
998    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rseccnt_SPEC, crate::common::RW> {
999        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rseccnt_SPEC,crate::common::RW>::from_register(self,0)
1000    }
1001}
1002impl ::core::default::Default for Rseccnt {
1003    #[inline(always)]
1004    fn default() -> Rseccnt {
1005        <crate::RegValueT<Rseccnt_SPEC> as RegisterValue<_>>::new(0)
1006    }
1007}
1008
1009#[doc(hidden)]
1010#[derive(Copy, Clone, Eq, PartialEq)]
1011pub struct Rmincnt_SPEC;
1012impl crate::sealed::RegSpec for Rmincnt_SPEC {
1013    type DataType = u8;
1014}
1015
1016#[doc = "Minute Counter (in Calendar Count Mode)"]
1017pub type Rmincnt = crate::RegValueT<Rmincnt_SPEC>;
1018
1019impl Rmincnt {
1020    #[doc = "1-Minute Count"]
1021    #[inline(always)]
1022    pub fn min1(
1023        self,
1024    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rmincnt_SPEC, crate::common::RW> {
1025        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rmincnt_SPEC,crate::common::RW>::from_register(self,0)
1026    }
1027
1028    #[doc = "10-Minute Count"]
1029    #[inline(always)]
1030    pub fn min10(
1031        self,
1032    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rmincnt_SPEC, crate::common::RW> {
1033        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rmincnt_SPEC,crate::common::RW>::from_register(self,0)
1034    }
1035}
1036impl ::core::default::Default for Rmincnt {
1037    #[inline(always)]
1038    fn default() -> Rmincnt {
1039        <crate::RegValueT<Rmincnt_SPEC> as RegisterValue<_>>::new(0)
1040    }
1041}
1042
1043#[doc(hidden)]
1044#[derive(Copy, Clone, Eq, PartialEq)]
1045pub struct Rhrcnt_SPEC;
1046impl crate::sealed::RegSpec for Rhrcnt_SPEC {
1047    type DataType = u8;
1048}
1049
1050#[doc = "Hour Counter (in Calendar Count Mode)"]
1051pub type Rhrcnt = crate::RegValueT<Rhrcnt_SPEC>;
1052
1053impl Rhrcnt {
1054    #[doc = "1-Hour Count"]
1055    #[inline(always)]
1056    pub fn hr1(
1057        self,
1058    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rhrcnt_SPEC, crate::common::RW> {
1059        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rhrcnt_SPEC,crate::common::RW>::from_register(self,0)
1060    }
1061
1062    #[doc = "10-Hour Count"]
1063    #[inline(always)]
1064    pub fn hr10(
1065        self,
1066    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rhrcnt_SPEC, crate::common::RW> {
1067        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rhrcnt_SPEC,crate::common::RW>::from_register(self,0)
1068    }
1069
1070    #[doc = "AM/PM select for time counter setting."]
1071    #[inline(always)]
1072    pub fn pm(
1073        self,
1074    ) -> crate::common::RegisterField<
1075        6,
1076        0x1,
1077        1,
1078        0,
1079        rhrcnt::Pm,
1080        rhrcnt::Pm,
1081        Rhrcnt_SPEC,
1082        crate::common::RW,
1083    > {
1084        crate::common::RegisterField::<
1085            6,
1086            0x1,
1087            1,
1088            0,
1089            rhrcnt::Pm,
1090            rhrcnt::Pm,
1091            Rhrcnt_SPEC,
1092            crate::common::RW,
1093        >::from_register(self, 0)
1094    }
1095}
1096impl ::core::default::Default for Rhrcnt {
1097    #[inline(always)]
1098    fn default() -> Rhrcnt {
1099        <crate::RegValueT<Rhrcnt_SPEC> as RegisterValue<_>>::new(0)
1100    }
1101}
1102pub mod rhrcnt {
1103
1104    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1105    pub struct Pm_SPEC;
1106    pub type Pm = crate::EnumBitfieldStruct<u8, Pm_SPEC>;
1107    impl Pm {
1108        #[doc = "AM"]
1109        pub const _0: Self = Self::new(0);
1110
1111        #[doc = "PM"]
1112        pub const _1: Self = Self::new(1);
1113    }
1114}
1115#[doc(hidden)]
1116#[derive(Copy, Clone, Eq, PartialEq)]
1117pub struct Rwkcnt_SPEC;
1118impl crate::sealed::RegSpec for Rwkcnt_SPEC {
1119    type DataType = u8;
1120}
1121
1122#[doc = "Day-of-Week Counter (in Calendar Count Mode)"]
1123pub type Rwkcnt = crate::RegValueT<Rwkcnt_SPEC>;
1124
1125impl Rwkcnt {
1126    #[doc = "Day-of-Week Counting"]
1127    #[inline(always)]
1128    pub fn dayw(
1129        self,
1130    ) -> crate::common::RegisterField<
1131        0,
1132        0x7,
1133        1,
1134        0,
1135        rwkcnt::Dayw,
1136        rwkcnt::Dayw,
1137        Rwkcnt_SPEC,
1138        crate::common::RW,
1139    > {
1140        crate::common::RegisterField::<
1141            0,
1142            0x7,
1143            1,
1144            0,
1145            rwkcnt::Dayw,
1146            rwkcnt::Dayw,
1147            Rwkcnt_SPEC,
1148            crate::common::RW,
1149        >::from_register(self, 0)
1150    }
1151}
1152impl ::core::default::Default for Rwkcnt {
1153    #[inline(always)]
1154    fn default() -> Rwkcnt {
1155        <crate::RegValueT<Rwkcnt_SPEC> as RegisterValue<_>>::new(0)
1156    }
1157}
1158pub mod rwkcnt {
1159
1160    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1161    pub struct Dayw_SPEC;
1162    pub type Dayw = crate::EnumBitfieldStruct<u8, Dayw_SPEC>;
1163    impl Dayw {
1164        #[doc = "Sunday"]
1165        pub const _000: Self = Self::new(0);
1166
1167        #[doc = "Monday"]
1168        pub const _001: Self = Self::new(1);
1169
1170        #[doc = "Tuesday"]
1171        pub const _010: Self = Self::new(2);
1172
1173        #[doc = "Wednesday"]
1174        pub const _011: Self = Self::new(3);
1175
1176        #[doc = "Thursday"]
1177        pub const _100: Self = Self::new(4);
1178
1179        #[doc = "Friday"]
1180        pub const _101: Self = Self::new(5);
1181
1182        #[doc = "Saturday"]
1183        pub const _110: Self = Self::new(6);
1184
1185        #[doc = "Setting prohibited"]
1186        pub const _111: Self = Self::new(7);
1187    }
1188}
1189#[doc(hidden)]
1190#[derive(Copy, Clone, Eq, PartialEq)]
1191pub struct Rdaycnt_SPEC;
1192impl crate::sealed::RegSpec for Rdaycnt_SPEC {
1193    type DataType = u8;
1194}
1195
1196#[doc = "Day Counter"]
1197pub type Rdaycnt = crate::RegValueT<Rdaycnt_SPEC>;
1198
1199impl Rdaycnt {
1200    #[doc = "1-Day Count"]
1201    #[inline(always)]
1202    pub fn date1(
1203        self,
1204    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rdaycnt_SPEC, crate::common::RW> {
1205        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rdaycnt_SPEC,crate::common::RW>::from_register(self,0)
1206    }
1207
1208    #[doc = "10-Day Count"]
1209    #[inline(always)]
1210    pub fn date10(
1211        self,
1212    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rdaycnt_SPEC, crate::common::RW> {
1213        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rdaycnt_SPEC,crate::common::RW>::from_register(self,0)
1214    }
1215}
1216impl ::core::default::Default for Rdaycnt {
1217    #[inline(always)]
1218    fn default() -> Rdaycnt {
1219        <crate::RegValueT<Rdaycnt_SPEC> as RegisterValue<_>>::new(0)
1220    }
1221}
1222
1223#[doc(hidden)]
1224#[derive(Copy, Clone, Eq, PartialEq)]
1225pub struct Rmoncnt_SPEC;
1226impl crate::sealed::RegSpec for Rmoncnt_SPEC {
1227    type DataType = u8;
1228}
1229
1230#[doc = "Month Counter"]
1231pub type Rmoncnt = crate::RegValueT<Rmoncnt_SPEC>;
1232
1233impl Rmoncnt {
1234    #[doc = "1-Month Count"]
1235    #[inline(always)]
1236    pub fn mon1(
1237        self,
1238    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rmoncnt_SPEC, crate::common::RW> {
1239        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rmoncnt_SPEC,crate::common::RW>::from_register(self,0)
1240    }
1241
1242    #[doc = "10-Month Count"]
1243    #[inline(always)]
1244    pub fn mon10(
1245        self,
1246    ) -> crate::common::RegisterFieldBool<4, 1, 0, Rmoncnt_SPEC, crate::common::RW> {
1247        crate::common::RegisterFieldBool::<4, 1, 0, Rmoncnt_SPEC, crate::common::RW>::from_register(
1248            self, 0,
1249        )
1250    }
1251}
1252impl ::core::default::Default for Rmoncnt {
1253    #[inline(always)]
1254    fn default() -> Rmoncnt {
1255        <crate::RegValueT<Rmoncnt_SPEC> as RegisterValue<_>>::new(0)
1256    }
1257}
1258
1259#[doc(hidden)]
1260#[derive(Copy, Clone, Eq, PartialEq)]
1261pub struct Ryrcnt_SPEC;
1262impl crate::sealed::RegSpec for Ryrcnt_SPEC {
1263    type DataType = u16;
1264}
1265
1266#[doc = "Year Counter"]
1267pub type Ryrcnt = crate::RegValueT<Ryrcnt_SPEC>;
1268
1269impl Ryrcnt {
1270    #[doc = "1-Year Count"]
1271    #[inline(always)]
1272    pub fn yr1(
1273        self,
1274    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Ryrcnt_SPEC, crate::common::RW> {
1275        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Ryrcnt_SPEC,crate::common::RW>::from_register(self,0)
1276    }
1277
1278    #[doc = "10-Year Count"]
1279    #[inline(always)]
1280    pub fn yr10(
1281        self,
1282    ) -> crate::common::RegisterField<4, 0xf, 1, 0, u8, u8, Ryrcnt_SPEC, crate::common::RW> {
1283        crate::common::RegisterField::<4,0xf,1,0,u8,u8,Ryrcnt_SPEC,crate::common::RW>::from_register(self,0)
1284    }
1285}
1286impl ::core::default::Default for Ryrcnt {
1287    #[inline(always)]
1288    fn default() -> Ryrcnt {
1289        <crate::RegValueT<Ryrcnt_SPEC> as RegisterValue<_>>::new(0)
1290    }
1291}
1292
1293#[doc(hidden)]
1294#[derive(Copy, Clone, Eq, PartialEq)]
1295pub struct Bcntar_SPEC;
1296impl crate::sealed::RegSpec for Bcntar_SPEC {
1297    type DataType = u8;
1298}
1299
1300#[doc = "Binary Counter %s Alarm Register"]
1301pub type Bcntar = crate::RegValueT<Bcntar_SPEC>;
1302
1303impl Bcntar {
1304    #[doc = "Alarm register associated with the 32-bit binary counter"]
1305    #[inline(always)]
1306    pub fn bcntar(
1307        self,
1308    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Bcntar_SPEC, crate::common::RW> {
1309        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Bcntar_SPEC,crate::common::RW>::from_register(self,0)
1310    }
1311}
1312impl ::core::default::Default for Bcntar {
1313    #[inline(always)]
1314    fn default() -> Bcntar {
1315        <crate::RegValueT<Bcntar_SPEC> as RegisterValue<_>>::new(0)
1316    }
1317}
1318
1319#[doc(hidden)]
1320#[derive(Copy, Clone, Eq, PartialEq)]
1321pub struct Rsecar_SPEC;
1322impl crate::sealed::RegSpec for Rsecar_SPEC {
1323    type DataType = u8;
1324}
1325
1326#[doc = "Second Alarm Register (in Calendar Count Mode)"]
1327pub type Rsecar = crate::RegValueT<Rsecar_SPEC>;
1328
1329impl Rsecar {
1330    #[doc = "1 Second"]
1331    #[inline(always)]
1332    pub fn sec1(
1333        self,
1334    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rsecar_SPEC, crate::common::RW> {
1335        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rsecar_SPEC,crate::common::RW>::from_register(self,0)
1336    }
1337
1338    #[doc = "10 Seconds"]
1339    #[inline(always)]
1340    pub fn sec10(
1341        self,
1342    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rsecar_SPEC, crate::common::RW> {
1343        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rsecar_SPEC,crate::common::RW>::from_register(self,0)
1344    }
1345
1346    #[doc = "ENB"]
1347    #[inline(always)]
1348    pub fn enb(
1349        self,
1350    ) -> crate::common::RegisterField<
1351        7,
1352        0x1,
1353        1,
1354        0,
1355        rsecar::Enb,
1356        rsecar::Enb,
1357        Rsecar_SPEC,
1358        crate::common::RW,
1359    > {
1360        crate::common::RegisterField::<
1361            7,
1362            0x1,
1363            1,
1364            0,
1365            rsecar::Enb,
1366            rsecar::Enb,
1367            Rsecar_SPEC,
1368            crate::common::RW,
1369        >::from_register(self, 0)
1370    }
1371}
1372impl ::core::default::Default for Rsecar {
1373    #[inline(always)]
1374    fn default() -> Rsecar {
1375        <crate::RegValueT<Rsecar_SPEC> as RegisterValue<_>>::new(0)
1376    }
1377}
1378pub mod rsecar {
1379
1380    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1381    pub struct Enb_SPEC;
1382    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1383    impl Enb {
1384        #[doc = "Do not compare register value with RSECCNT counter value"]
1385        pub const _0: Self = Self::new(0);
1386
1387        #[doc = "Compare register value with RSECCNT counter value"]
1388        pub const _1: Self = Self::new(1);
1389    }
1390}
1391#[doc(hidden)]
1392#[derive(Copy, Clone, Eq, PartialEq)]
1393pub struct Rminar_SPEC;
1394impl crate::sealed::RegSpec for Rminar_SPEC {
1395    type DataType = u8;
1396}
1397
1398#[doc = "Minute Alarm Register (in Calendar Count Mode)"]
1399pub type Rminar = crate::RegValueT<Rminar_SPEC>;
1400
1401impl Rminar {
1402    #[doc = "1 Minute"]
1403    #[inline(always)]
1404    pub fn min1(
1405        self,
1406    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rminar_SPEC, crate::common::RW> {
1407        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rminar_SPEC,crate::common::RW>::from_register(self,0)
1408    }
1409
1410    #[doc = "10 Minutes"]
1411    #[inline(always)]
1412    pub fn min10(
1413        self,
1414    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rminar_SPEC, crate::common::RW> {
1415        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rminar_SPEC,crate::common::RW>::from_register(self,0)
1416    }
1417
1418    #[doc = "ENB"]
1419    #[inline(always)]
1420    pub fn enb(
1421        self,
1422    ) -> crate::common::RegisterField<
1423        7,
1424        0x1,
1425        1,
1426        0,
1427        rminar::Enb,
1428        rminar::Enb,
1429        Rminar_SPEC,
1430        crate::common::RW,
1431    > {
1432        crate::common::RegisterField::<
1433            7,
1434            0x1,
1435            1,
1436            0,
1437            rminar::Enb,
1438            rminar::Enb,
1439            Rminar_SPEC,
1440            crate::common::RW,
1441        >::from_register(self, 0)
1442    }
1443}
1444impl ::core::default::Default for Rminar {
1445    #[inline(always)]
1446    fn default() -> Rminar {
1447        <crate::RegValueT<Rminar_SPEC> as RegisterValue<_>>::new(0)
1448    }
1449}
1450pub mod rminar {
1451
1452    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1453    pub struct Enb_SPEC;
1454    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1455    impl Enb {
1456        #[doc = "Do not compare register value with RMINCNT counter value"]
1457        pub const _0: Self = Self::new(0);
1458
1459        #[doc = "Compare register value with RMINCNT counter value"]
1460        pub const _1: Self = Self::new(1);
1461    }
1462}
1463#[doc(hidden)]
1464#[derive(Copy, Clone, Eq, PartialEq)]
1465pub struct Rhrar_SPEC;
1466impl crate::sealed::RegSpec for Rhrar_SPEC {
1467    type DataType = u8;
1468}
1469
1470#[doc = "Hour Alarm Register (in Calendar Count Mode)"]
1471pub type Rhrar = crate::RegValueT<Rhrar_SPEC>;
1472
1473impl Rhrar {
1474    #[doc = "1 Hour"]
1475    #[inline(always)]
1476    pub fn hr1(
1477        self,
1478    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rhrar_SPEC, crate::common::RW> {
1479        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rhrar_SPEC,crate::common::RW>::from_register(self,0)
1480    }
1481
1482    #[doc = "10 Hours"]
1483    #[inline(always)]
1484    pub fn hr10(
1485        self,
1486    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rhrar_SPEC, crate::common::RW> {
1487        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rhrar_SPEC,crate::common::RW>::from_register(self,0)
1488    }
1489
1490    #[doc = "AM/PM select for alarm setting."]
1491    #[inline(always)]
1492    pub fn pm(
1493        self,
1494    ) -> crate::common::RegisterField<
1495        6,
1496        0x1,
1497        1,
1498        0,
1499        rhrar::Pm,
1500        rhrar::Pm,
1501        Rhrar_SPEC,
1502        crate::common::RW,
1503    > {
1504        crate::common::RegisterField::<
1505            6,
1506            0x1,
1507            1,
1508            0,
1509            rhrar::Pm,
1510            rhrar::Pm,
1511            Rhrar_SPEC,
1512            crate::common::RW,
1513        >::from_register(self, 0)
1514    }
1515
1516    #[doc = "ENB"]
1517    #[inline(always)]
1518    pub fn enb(
1519        self,
1520    ) -> crate::common::RegisterField<
1521        7,
1522        0x1,
1523        1,
1524        0,
1525        rhrar::Enb,
1526        rhrar::Enb,
1527        Rhrar_SPEC,
1528        crate::common::RW,
1529    > {
1530        crate::common::RegisterField::<
1531            7,
1532            0x1,
1533            1,
1534            0,
1535            rhrar::Enb,
1536            rhrar::Enb,
1537            Rhrar_SPEC,
1538            crate::common::RW,
1539        >::from_register(self, 0)
1540    }
1541}
1542impl ::core::default::Default for Rhrar {
1543    #[inline(always)]
1544    fn default() -> Rhrar {
1545        <crate::RegValueT<Rhrar_SPEC> as RegisterValue<_>>::new(0)
1546    }
1547}
1548pub mod rhrar {
1549
1550    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1551    pub struct Pm_SPEC;
1552    pub type Pm = crate::EnumBitfieldStruct<u8, Pm_SPEC>;
1553    impl Pm {
1554        #[doc = "AM"]
1555        pub const _0: Self = Self::new(0);
1556
1557        #[doc = "PM"]
1558        pub const _1: Self = Self::new(1);
1559    }
1560    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1561    pub struct Enb_SPEC;
1562    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1563    impl Enb {
1564        #[doc = "Do not compare register value with RHRCNT counter value"]
1565        pub const _0: Self = Self::new(0);
1566
1567        #[doc = "Compare register value with RHRCNT counter value"]
1568        pub const _1: Self = Self::new(1);
1569    }
1570}
1571#[doc(hidden)]
1572#[derive(Copy, Clone, Eq, PartialEq)]
1573pub struct Rwkar_SPEC;
1574impl crate::sealed::RegSpec for Rwkar_SPEC {
1575    type DataType = u8;
1576}
1577
1578#[doc = "Day-of-Week Alarm Register (in Calendar Count Mode)"]
1579pub type Rwkar = crate::RegValueT<Rwkar_SPEC>;
1580
1581impl Rwkar {
1582    #[doc = "Day-of-Week Setting"]
1583    #[inline(always)]
1584    pub fn dayw(
1585        self,
1586    ) -> crate::common::RegisterField<
1587        0,
1588        0x7,
1589        1,
1590        0,
1591        rwkar::Dayw,
1592        rwkar::Dayw,
1593        Rwkar_SPEC,
1594        crate::common::RW,
1595    > {
1596        crate::common::RegisterField::<
1597            0,
1598            0x7,
1599            1,
1600            0,
1601            rwkar::Dayw,
1602            rwkar::Dayw,
1603            Rwkar_SPEC,
1604            crate::common::RW,
1605        >::from_register(self, 0)
1606    }
1607
1608    #[doc = "ENB"]
1609    #[inline(always)]
1610    pub fn enb(
1611        self,
1612    ) -> crate::common::RegisterField<
1613        7,
1614        0x1,
1615        1,
1616        0,
1617        rwkar::Enb,
1618        rwkar::Enb,
1619        Rwkar_SPEC,
1620        crate::common::RW,
1621    > {
1622        crate::common::RegisterField::<
1623            7,
1624            0x1,
1625            1,
1626            0,
1627            rwkar::Enb,
1628            rwkar::Enb,
1629            Rwkar_SPEC,
1630            crate::common::RW,
1631        >::from_register(self, 0)
1632    }
1633}
1634impl ::core::default::Default for Rwkar {
1635    #[inline(always)]
1636    fn default() -> Rwkar {
1637        <crate::RegValueT<Rwkar_SPEC> as RegisterValue<_>>::new(0)
1638    }
1639}
1640pub mod rwkar {
1641
1642    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1643    pub struct Dayw_SPEC;
1644    pub type Dayw = crate::EnumBitfieldStruct<u8, Dayw_SPEC>;
1645    impl Dayw {
1646        #[doc = "Sunday"]
1647        pub const _000: Self = Self::new(0);
1648
1649        #[doc = "Monday"]
1650        pub const _001: Self = Self::new(1);
1651
1652        #[doc = "Tuesday"]
1653        pub const _010: Self = Self::new(2);
1654
1655        #[doc = "Wednesday"]
1656        pub const _011: Self = Self::new(3);
1657
1658        #[doc = "Thursday"]
1659        pub const _100: Self = Self::new(4);
1660
1661        #[doc = "Friday"]
1662        pub const _101: Self = Self::new(5);
1663
1664        #[doc = "Saturday"]
1665        pub const _110: Self = Self::new(6);
1666
1667        #[doc = "Setting prohibited"]
1668        pub const _111: Self = Self::new(7);
1669    }
1670    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1671    pub struct Enb_SPEC;
1672    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1673    impl Enb {
1674        #[doc = "Do not compare register value with RWKCNT counter value"]
1675        pub const _0: Self = Self::new(0);
1676
1677        #[doc = "Compare register value with RWKCNT counter value"]
1678        pub const _1: Self = Self::new(1);
1679    }
1680}
1681#[doc(hidden)]
1682#[derive(Copy, Clone, Eq, PartialEq)]
1683pub struct Bcntaer_SPEC;
1684impl crate::sealed::RegSpec for Bcntaer_SPEC {
1685    type DataType = u8;
1686}
1687
1688#[doc = "Binary Counter %s Alarm Enable Register"]
1689pub type Bcntaer = crate::RegValueT<Bcntaer_SPEC>;
1690
1691impl Bcntaer {
1692    #[doc = "Setting the alarm enable associated with the 32-bit binary counter"]
1693    #[inline(always)]
1694    pub fn enb(
1695        self,
1696    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Bcntaer_SPEC, crate::common::RW> {
1697        crate::common::RegisterField::<0,0xff,1,0,u8,u8,Bcntaer_SPEC,crate::common::RW>::from_register(self,0)
1698    }
1699}
1700impl ::core::default::Default for Bcntaer {
1701    #[inline(always)]
1702    fn default() -> Bcntaer {
1703        <crate::RegValueT<Bcntaer_SPEC> as RegisterValue<_>>::new(0)
1704    }
1705}
1706
1707#[doc(hidden)]
1708#[derive(Copy, Clone, Eq, PartialEq)]
1709pub struct Rdayar_SPEC;
1710impl crate::sealed::RegSpec for Rdayar_SPEC {
1711    type DataType = u8;
1712}
1713
1714#[doc = "Date Alarm Register (in Calendar Count Mode)"]
1715pub type Rdayar = crate::RegValueT<Rdayar_SPEC>;
1716
1717impl Rdayar {
1718    #[doc = "1 Day"]
1719    #[inline(always)]
1720    pub fn date1(
1721        self,
1722    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rdayar_SPEC, crate::common::RW> {
1723        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rdayar_SPEC,crate::common::RW>::from_register(self,0)
1724    }
1725
1726    #[doc = "10 Days"]
1727    #[inline(always)]
1728    pub fn date10(
1729        self,
1730    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rdayar_SPEC, crate::common::RW> {
1731        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rdayar_SPEC,crate::common::RW>::from_register(self,0)
1732    }
1733
1734    #[doc = "ENB"]
1735    #[inline(always)]
1736    pub fn enb(
1737        self,
1738    ) -> crate::common::RegisterField<
1739        7,
1740        0x1,
1741        1,
1742        0,
1743        rdayar::Enb,
1744        rdayar::Enb,
1745        Rdayar_SPEC,
1746        crate::common::RW,
1747    > {
1748        crate::common::RegisterField::<
1749            7,
1750            0x1,
1751            1,
1752            0,
1753            rdayar::Enb,
1754            rdayar::Enb,
1755            Rdayar_SPEC,
1756            crate::common::RW,
1757        >::from_register(self, 0)
1758    }
1759}
1760impl ::core::default::Default for Rdayar {
1761    #[inline(always)]
1762    fn default() -> Rdayar {
1763        <crate::RegValueT<Rdayar_SPEC> as RegisterValue<_>>::new(0)
1764    }
1765}
1766pub mod rdayar {
1767
1768    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1769    pub struct Enb_SPEC;
1770    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1771    impl Enb {
1772        #[doc = "Do not compare register value with RDAYCNT counter value"]
1773        pub const _0: Self = Self::new(0);
1774
1775        #[doc = "Compare register value with RDAYCNT counter value"]
1776        pub const _1: Self = Self::new(1);
1777    }
1778}
1779#[doc(hidden)]
1780#[derive(Copy, Clone, Eq, PartialEq)]
1781pub struct Rmonar_SPEC;
1782impl crate::sealed::RegSpec for Rmonar_SPEC {
1783    type DataType = u8;
1784}
1785
1786#[doc = "Month Alarm Register (in Calendar Count Mode)"]
1787pub type Rmonar = crate::RegValueT<Rmonar_SPEC>;
1788
1789impl Rmonar {
1790    #[doc = "1 Month"]
1791    #[inline(always)]
1792    pub fn mon1(
1793        self,
1794    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rmonar_SPEC, crate::common::RW> {
1795        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rmonar_SPEC,crate::common::RW>::from_register(self,0)
1796    }
1797
1798    #[doc = "10 Months"]
1799    #[inline(always)]
1800    pub fn mon10(
1801        self,
1802    ) -> crate::common::RegisterFieldBool<4, 1, 0, Rmonar_SPEC, crate::common::RW> {
1803        crate::common::RegisterFieldBool::<4, 1, 0, Rmonar_SPEC, crate::common::RW>::from_register(
1804            self, 0,
1805        )
1806    }
1807
1808    #[doc = "ENB"]
1809    #[inline(always)]
1810    pub fn enb(
1811        self,
1812    ) -> crate::common::RegisterField<
1813        7,
1814        0x1,
1815        1,
1816        0,
1817        rmonar::Enb,
1818        rmonar::Enb,
1819        Rmonar_SPEC,
1820        crate::common::RW,
1821    > {
1822        crate::common::RegisterField::<
1823            7,
1824            0x1,
1825            1,
1826            0,
1827            rmonar::Enb,
1828            rmonar::Enb,
1829            Rmonar_SPEC,
1830            crate::common::RW,
1831        >::from_register(self, 0)
1832    }
1833}
1834impl ::core::default::Default for Rmonar {
1835    #[inline(always)]
1836    fn default() -> Rmonar {
1837        <crate::RegValueT<Rmonar_SPEC> as RegisterValue<_>>::new(0)
1838    }
1839}
1840pub mod rmonar {
1841
1842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1843    pub struct Enb_SPEC;
1844    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1845    impl Enb {
1846        #[doc = "Do not compare register value with RMONCNT counter value"]
1847        pub const _0: Self = Self::new(0);
1848
1849        #[doc = "Compare register value with RMONCNT counter value"]
1850        pub const _1: Self = Self::new(1);
1851    }
1852}
1853#[doc(hidden)]
1854#[derive(Copy, Clone, Eq, PartialEq)]
1855pub struct Ryrar_SPEC;
1856impl crate::sealed::RegSpec for Ryrar_SPEC {
1857    type DataType = u16;
1858}
1859
1860#[doc = "Year Alarm Register (in Calendar Count Mode)"]
1861pub type Ryrar = crate::RegValueT<Ryrar_SPEC>;
1862
1863impl Ryrar {
1864    #[doc = "1 Year"]
1865    #[inline(always)]
1866    pub fn yr1(
1867        self,
1868    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Ryrar_SPEC, crate::common::RW> {
1869        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Ryrar_SPEC,crate::common::RW>::from_register(self,0)
1870    }
1871
1872    #[doc = "10 Years"]
1873    #[inline(always)]
1874    pub fn yr10(
1875        self,
1876    ) -> crate::common::RegisterField<4, 0xf, 1, 0, u8, u8, Ryrar_SPEC, crate::common::RW> {
1877        crate::common::RegisterField::<4,0xf,1,0,u8,u8,Ryrar_SPEC,crate::common::RW>::from_register(self,0)
1878    }
1879}
1880impl ::core::default::Default for Ryrar {
1881    #[inline(always)]
1882    fn default() -> Ryrar {
1883        <crate::RegValueT<Ryrar_SPEC> as RegisterValue<_>>::new(0)
1884    }
1885}
1886
1887#[doc(hidden)]
1888#[derive(Copy, Clone, Eq, PartialEq)]
1889pub struct Ryraren_SPEC;
1890impl crate::sealed::RegSpec for Ryraren_SPEC {
1891    type DataType = u8;
1892}
1893
1894#[doc = "Year Alarm Enable Register (in Calendar Count Mode)"]
1895pub type Ryraren = crate::RegValueT<Ryraren_SPEC>;
1896
1897impl Ryraren {
1898    #[doc = "ENB"]
1899    #[inline(always)]
1900    pub fn enb(
1901        self,
1902    ) -> crate::common::RegisterField<
1903        7,
1904        0x1,
1905        1,
1906        0,
1907        ryraren::Enb,
1908        ryraren::Enb,
1909        Ryraren_SPEC,
1910        crate::common::RW,
1911    > {
1912        crate::common::RegisterField::<
1913            7,
1914            0x1,
1915            1,
1916            0,
1917            ryraren::Enb,
1918            ryraren::Enb,
1919            Ryraren_SPEC,
1920            crate::common::RW,
1921        >::from_register(self, 0)
1922    }
1923}
1924impl ::core::default::Default for Ryraren {
1925    #[inline(always)]
1926    fn default() -> Ryraren {
1927        <crate::RegValueT<Ryraren_SPEC> as RegisterValue<_>>::new(0)
1928    }
1929}
1930pub mod ryraren {
1931
1932    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1933    pub struct Enb_SPEC;
1934    pub type Enb = crate::EnumBitfieldStruct<u8, Enb_SPEC>;
1935    impl Enb {
1936        #[doc = "Do not compare register value with the RYRCNT counter value"]
1937        pub const _0: Self = Self::new(0);
1938
1939        #[doc = "Compare register value with the RYRCNT counter value"]
1940        pub const _1: Self = Self::new(1);
1941    }
1942}
1943#[doc(hidden)]
1944#[derive(Copy, Clone, Eq, PartialEq)]
1945pub struct Rcr1_SPEC;
1946impl crate::sealed::RegSpec for Rcr1_SPEC {
1947    type DataType = u8;
1948}
1949
1950#[doc = "RTC Control Register 1"]
1951pub type Rcr1 = crate::RegValueT<Rcr1_SPEC>;
1952
1953impl Rcr1 {
1954    #[doc = "Alarm Interrupt Enable"]
1955    #[inline(always)]
1956    pub fn aie(
1957        self,
1958    ) -> crate::common::RegisterField<
1959        0,
1960        0x1,
1961        1,
1962        0,
1963        rcr1::Aie,
1964        rcr1::Aie,
1965        Rcr1_SPEC,
1966        crate::common::RW,
1967    > {
1968        crate::common::RegisterField::<
1969            0,
1970            0x1,
1971            1,
1972            0,
1973            rcr1::Aie,
1974            rcr1::Aie,
1975            Rcr1_SPEC,
1976            crate::common::RW,
1977        >::from_register(self, 0)
1978    }
1979
1980    #[doc = "Carry Interrupt Enable"]
1981    #[inline(always)]
1982    pub fn cie(
1983        self,
1984    ) -> crate::common::RegisterField<
1985        1,
1986        0x1,
1987        1,
1988        0,
1989        rcr1::Cie,
1990        rcr1::Cie,
1991        Rcr1_SPEC,
1992        crate::common::RW,
1993    > {
1994        crate::common::RegisterField::<
1995            1,
1996            0x1,
1997            1,
1998            0,
1999            rcr1::Cie,
2000            rcr1::Cie,
2001            Rcr1_SPEC,
2002            crate::common::RW,
2003        >::from_register(self, 0)
2004    }
2005
2006    #[doc = "Periodic Interrupt Enable"]
2007    #[inline(always)]
2008    pub fn pie(
2009        self,
2010    ) -> crate::common::RegisterField<
2011        2,
2012        0x1,
2013        1,
2014        0,
2015        rcr1::Pie,
2016        rcr1::Pie,
2017        Rcr1_SPEC,
2018        crate::common::RW,
2019    > {
2020        crate::common::RegisterField::<
2021            2,
2022            0x1,
2023            1,
2024            0,
2025            rcr1::Pie,
2026            rcr1::Pie,
2027            Rcr1_SPEC,
2028            crate::common::RW,
2029        >::from_register(self, 0)
2030    }
2031
2032    #[doc = "RTCOUT Output Select"]
2033    #[inline(always)]
2034    pub fn rtcos(
2035        self,
2036    ) -> crate::common::RegisterField<
2037        3,
2038        0x1,
2039        1,
2040        0,
2041        rcr1::Rtcos,
2042        rcr1::Rtcos,
2043        Rcr1_SPEC,
2044        crate::common::RW,
2045    > {
2046        crate::common::RegisterField::<
2047            3,
2048            0x1,
2049            1,
2050            0,
2051            rcr1::Rtcos,
2052            rcr1::Rtcos,
2053            Rcr1_SPEC,
2054            crate::common::RW,
2055        >::from_register(self, 0)
2056    }
2057
2058    #[doc = "Periodic Interrupt Select"]
2059    #[inline(always)]
2060    pub fn pes(
2061        self,
2062    ) -> crate::common::RegisterField<
2063        4,
2064        0xf,
2065        1,
2066        0,
2067        rcr1::Pes,
2068        rcr1::Pes,
2069        Rcr1_SPEC,
2070        crate::common::RW,
2071    > {
2072        crate::common::RegisterField::<
2073            4,
2074            0xf,
2075            1,
2076            0,
2077            rcr1::Pes,
2078            rcr1::Pes,
2079            Rcr1_SPEC,
2080            crate::common::RW,
2081        >::from_register(self, 0)
2082    }
2083}
2084impl ::core::default::Default for Rcr1 {
2085    #[inline(always)]
2086    fn default() -> Rcr1 {
2087        <crate::RegValueT<Rcr1_SPEC> as RegisterValue<_>>::new(0)
2088    }
2089}
2090pub mod rcr1 {
2091
2092    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2093    pub struct Aie_SPEC;
2094    pub type Aie = crate::EnumBitfieldStruct<u8, Aie_SPEC>;
2095    impl Aie {
2096        #[doc = "Disable alarm interrupt requests"]
2097        pub const _0: Self = Self::new(0);
2098
2099        #[doc = "Enable alarm interrupt requests"]
2100        pub const _1: Self = Self::new(1);
2101    }
2102    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2103    pub struct Cie_SPEC;
2104    pub type Cie = crate::EnumBitfieldStruct<u8, Cie_SPEC>;
2105    impl Cie {
2106        #[doc = "Disable carry interrupt requests"]
2107        pub const _0: Self = Self::new(0);
2108
2109        #[doc = "Enable carry interrupt requests"]
2110        pub const _1: Self = Self::new(1);
2111    }
2112    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2113    pub struct Pie_SPEC;
2114    pub type Pie = crate::EnumBitfieldStruct<u8, Pie_SPEC>;
2115    impl Pie {
2116        #[doc = "Disable periodic interrupt requests"]
2117        pub const _0: Self = Self::new(0);
2118
2119        #[doc = "Enable periodic interrupt requests"]
2120        pub const _1: Self = Self::new(1);
2121    }
2122    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2123    pub struct Rtcos_SPEC;
2124    pub type Rtcos = crate::EnumBitfieldStruct<u8, Rtcos_SPEC>;
2125    impl Rtcos {
2126        #[doc = "Outputs 1 Hz on RTCOUT"]
2127        pub const _0: Self = Self::new(0);
2128
2129        #[doc = "Outputs 64 Hz RTCOUT"]
2130        pub const _1: Self = Self::new(1);
2131    }
2132    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2133    pub struct Pes_SPEC;
2134    pub type Pes = crate::EnumBitfieldStruct<u8, Pes_SPEC>;
2135    impl Pes {
2136        #[doc = "Generate periodic interrupt every 1/256 second"]
2137        pub const _0_X_6: Self = Self::new(6);
2138
2139        #[doc = "Generate periodic interrupt every 1/128 second"]
2140        pub const _0_X_7: Self = Self::new(7);
2141
2142        #[doc = "Generate periodic interrupt every 1/64 second"]
2143        pub const _0_X_8: Self = Self::new(8);
2144
2145        #[doc = "Generate periodic interrupt every 1/32 second"]
2146        pub const _0_X_9: Self = Self::new(9);
2147
2148        #[doc = "Generate periodic interrupt every 1/16 second"]
2149        pub const _0_X_A: Self = Self::new(10);
2150
2151        #[doc = "Generate periodic interrupt every 1/8 second"]
2152        pub const _0_X_B: Self = Self::new(11);
2153
2154        #[doc = "Generate periodic interrupt every 1/4 second"]
2155        pub const _0_X_C: Self = Self::new(12);
2156
2157        #[doc = "Generate periodic interrupt every 1/2 second"]
2158        pub const _0_X_D: Self = Self::new(13);
2159
2160        #[doc = "Generate periodic interrupt every 1 second"]
2161        pub const _0_X_E: Self = Self::new(14);
2162
2163        #[doc = "Generate periodic interrupt every 2 seconds"]
2164        pub const _0_X_F: Self = Self::new(15);
2165
2166        #[doc = "Do not generate periodic interrupts"]
2167        pub const OTHERS: Self = Self::new(0);
2168    }
2169}
2170#[doc(hidden)]
2171#[derive(Copy, Clone, Eq, PartialEq)]
2172pub struct Rcr2_SPEC;
2173impl crate::sealed::RegSpec for Rcr2_SPEC {
2174    type DataType = u8;
2175}
2176
2177#[doc = "RTC Control Register 2 (in Calendar Count Mode)"]
2178pub type Rcr2 = crate::RegValueT<Rcr2_SPEC>;
2179
2180impl Rcr2 {
2181    #[doc = "Start"]
2182    #[inline(always)]
2183    pub fn start(
2184        self,
2185    ) -> crate::common::RegisterField<
2186        0,
2187        0x1,
2188        1,
2189        0,
2190        rcr2::Start,
2191        rcr2::Start,
2192        Rcr2_SPEC,
2193        crate::common::RW,
2194    > {
2195        crate::common::RegisterField::<
2196            0,
2197            0x1,
2198            1,
2199            0,
2200            rcr2::Start,
2201            rcr2::Start,
2202            Rcr2_SPEC,
2203            crate::common::RW,
2204        >::from_register(self, 0)
2205    }
2206
2207    #[doc = "RTC Software Reset"]
2208    #[inline(always)]
2209    pub fn reset(
2210        self,
2211    ) -> crate::common::RegisterField<
2212        1,
2213        0x1,
2214        1,
2215        0,
2216        rcr2::Reset,
2217        rcr2::Reset,
2218        Rcr2_SPEC,
2219        crate::common::RW,
2220    > {
2221        crate::common::RegisterField::<
2222            1,
2223            0x1,
2224            1,
2225            0,
2226            rcr2::Reset,
2227            rcr2::Reset,
2228            Rcr2_SPEC,
2229            crate::common::RW,
2230        >::from_register(self, 0)
2231    }
2232
2233    #[doc = "30-Second Adjustment"]
2234    #[inline(always)]
2235    pub fn adj30(
2236        self,
2237    ) -> crate::common::RegisterField<
2238        2,
2239        0x1,
2240        1,
2241        0,
2242        rcr2::Adj30,
2243        rcr2::Adj30,
2244        Rcr2_SPEC,
2245        crate::common::RW,
2246    > {
2247        crate::common::RegisterField::<
2248            2,
2249            0x1,
2250            1,
2251            0,
2252            rcr2::Adj30,
2253            rcr2::Adj30,
2254            Rcr2_SPEC,
2255            crate::common::RW,
2256        >::from_register(self, 0)
2257    }
2258
2259    #[doc = "RTCOUT Output Enable"]
2260    #[inline(always)]
2261    pub fn rtcoe(
2262        self,
2263    ) -> crate::common::RegisterField<
2264        3,
2265        0x1,
2266        1,
2267        0,
2268        rcr2::Rtcoe,
2269        rcr2::Rtcoe,
2270        Rcr2_SPEC,
2271        crate::common::RW,
2272    > {
2273        crate::common::RegisterField::<
2274            3,
2275            0x1,
2276            1,
2277            0,
2278            rcr2::Rtcoe,
2279            rcr2::Rtcoe,
2280            Rcr2_SPEC,
2281            crate::common::RW,
2282        >::from_register(self, 0)
2283    }
2284
2285    #[doc = "Automatic Adjustment Enable"]
2286    #[inline(always)]
2287    pub fn aadje(
2288        self,
2289    ) -> crate::common::RegisterField<
2290        4,
2291        0x1,
2292        1,
2293        0,
2294        rcr2::Aadje,
2295        rcr2::Aadje,
2296        Rcr2_SPEC,
2297        crate::common::RW,
2298    > {
2299        crate::common::RegisterField::<
2300            4,
2301            0x1,
2302            1,
2303            0,
2304            rcr2::Aadje,
2305            rcr2::Aadje,
2306            Rcr2_SPEC,
2307            crate::common::RW,
2308        >::from_register(self, 0)
2309    }
2310
2311    #[doc = "Automatic Adjustment Period Select"]
2312    #[inline(always)]
2313    pub fn aadjp(
2314        self,
2315    ) -> crate::common::RegisterField<
2316        5,
2317        0x1,
2318        1,
2319        0,
2320        rcr2::Aadjp,
2321        rcr2::Aadjp,
2322        Rcr2_SPEC,
2323        crate::common::RW,
2324    > {
2325        crate::common::RegisterField::<
2326            5,
2327            0x1,
2328            1,
2329            0,
2330            rcr2::Aadjp,
2331            rcr2::Aadjp,
2332            Rcr2_SPEC,
2333            crate::common::RW,
2334        >::from_register(self, 0)
2335    }
2336
2337    #[doc = "Hours Mode"]
2338    #[inline(always)]
2339    pub fn hr24(
2340        self,
2341    ) -> crate::common::RegisterField<
2342        6,
2343        0x1,
2344        1,
2345        0,
2346        rcr2::Hr24,
2347        rcr2::Hr24,
2348        Rcr2_SPEC,
2349        crate::common::RW,
2350    > {
2351        crate::common::RegisterField::<
2352            6,
2353            0x1,
2354            1,
2355            0,
2356            rcr2::Hr24,
2357            rcr2::Hr24,
2358            Rcr2_SPEC,
2359            crate::common::RW,
2360        >::from_register(self, 0)
2361    }
2362
2363    #[doc = "Count Mode Select"]
2364    #[inline(always)]
2365    pub fn cntmd(
2366        self,
2367    ) -> crate::common::RegisterField<
2368        7,
2369        0x1,
2370        1,
2371        0,
2372        rcr2::Cntmd,
2373        rcr2::Cntmd,
2374        Rcr2_SPEC,
2375        crate::common::RW,
2376    > {
2377        crate::common::RegisterField::<
2378            7,
2379            0x1,
2380            1,
2381            0,
2382            rcr2::Cntmd,
2383            rcr2::Cntmd,
2384            Rcr2_SPEC,
2385            crate::common::RW,
2386        >::from_register(self, 0)
2387    }
2388}
2389impl ::core::default::Default for Rcr2 {
2390    #[inline(always)]
2391    fn default() -> Rcr2 {
2392        <crate::RegValueT<Rcr2_SPEC> as RegisterValue<_>>::new(0)
2393    }
2394}
2395pub mod rcr2 {
2396
2397    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2398    pub struct Start_SPEC;
2399    pub type Start = crate::EnumBitfieldStruct<u8, Start_SPEC>;
2400    impl Start {
2401        #[doc = "Stop prescaler and time counter"]
2402        pub const _0: Self = Self::new(0);
2403
2404        #[doc = "Operate prescaler and time counter normally"]
2405        pub const _1: Self = Self::new(1);
2406    }
2407    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2408    pub struct Reset_SPEC;
2409    pub type Reset = crate::EnumBitfieldStruct<u8, Reset_SPEC>;
2410    impl Reset {
2411        #[doc = "In writing: Invalid (writing 0 has no effect). In reading: Normal time operation in progress, or an RTC software reset has completed."]
2412        pub const _0: Self = Self::new(0);
2413
2414        #[doc = "In writing: Initialize the prescaler and target registers for RTC software reset. In reading: RTC software reset in progress."]
2415        pub const _1: Self = Self::new(1);
2416    }
2417    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2418    pub struct Adj30_SPEC;
2419    pub type Adj30 = crate::EnumBitfieldStruct<u8, Adj30_SPEC>;
2420    impl Adj30 {
2421        #[doc = "In writing: Invalid (writing 0 has no effect). In reading: Normal time operation in progress, or 30-second adjustment has completed."]
2422        pub const _0: Self = Self::new(0);
2423
2424        #[doc = "In writing: Execute 30-second adjustment. In reading: 30-second adjustment in progress."]
2425        pub const _1: Self = Self::new(1);
2426    }
2427    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2428    pub struct Rtcoe_SPEC;
2429    pub type Rtcoe = crate::EnumBitfieldStruct<u8, Rtcoe_SPEC>;
2430    impl Rtcoe {
2431        #[doc = "Disable RTCOUT output"]
2432        pub const _0: Self = Self::new(0);
2433
2434        #[doc = "Enable RTCOUT output"]
2435        pub const _1: Self = Self::new(1);
2436    }
2437    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2438    pub struct Aadje_SPEC;
2439    pub type Aadje = crate::EnumBitfieldStruct<u8, Aadje_SPEC>;
2440    impl Aadje {
2441        #[doc = "Disable automatic adjustment"]
2442        pub const _0: Self = Self::new(0);
2443
2444        #[doc = "Enable automatic adjustment"]
2445        pub const _1: Self = Self::new(1);
2446    }
2447    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2448    pub struct Aadjp_SPEC;
2449    pub type Aadjp = crate::EnumBitfieldStruct<u8, Aadjp_SPEC>;
2450    impl Aadjp {
2451        #[doc = "The RADJ.ADJ\\[5:0\\] setting from the count value of the prescaler every minute."]
2452        pub const _0: Self = Self::new(0);
2453
2454        #[doc = "The RADJ.ADJ\\[5:0\\] setting value is adjusted from the count value of the prescaler every 10 seconds."]
2455        pub const _1: Self = Self::new(1);
2456    }
2457    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2458    pub struct Hr24_SPEC;
2459    pub type Hr24 = crate::EnumBitfieldStruct<u8, Hr24_SPEC>;
2460    impl Hr24 {
2461        #[doc = "Operate RTC in 12-hour mode"]
2462        pub const _0: Self = Self::new(0);
2463
2464        #[doc = "Operate RTC in 24-hour mode"]
2465        pub const _1: Self = Self::new(1);
2466    }
2467    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2468    pub struct Cntmd_SPEC;
2469    pub type Cntmd = crate::EnumBitfieldStruct<u8, Cntmd_SPEC>;
2470    impl Cntmd {
2471        #[doc = "Calendar count mode"]
2472        pub const _0: Self = Self::new(0);
2473
2474        #[doc = "Binary count mode"]
2475        pub const _1: Self = Self::new(1);
2476    }
2477}
2478#[doc(hidden)]
2479#[derive(Copy, Clone, Eq, PartialEq)]
2480pub struct Rcr2Bcnt_SPEC;
2481impl crate::sealed::RegSpec for Rcr2Bcnt_SPEC {
2482    type DataType = u8;
2483}
2484
2485#[doc = "RTC Control Register 2 (in Binary Count Mode)"]
2486pub type Rcr2Bcnt = crate::RegValueT<Rcr2Bcnt_SPEC>;
2487
2488impl Rcr2Bcnt {
2489    #[doc = "Start"]
2490    #[inline(always)]
2491    pub fn start(
2492        self,
2493    ) -> crate::common::RegisterField<
2494        0,
2495        0x1,
2496        1,
2497        0,
2498        rcr2_bcnt::Start,
2499        rcr2_bcnt::Start,
2500        Rcr2Bcnt_SPEC,
2501        crate::common::RW,
2502    > {
2503        crate::common::RegisterField::<
2504            0,
2505            0x1,
2506            1,
2507            0,
2508            rcr2_bcnt::Start,
2509            rcr2_bcnt::Start,
2510            Rcr2Bcnt_SPEC,
2511            crate::common::RW,
2512        >::from_register(self, 0)
2513    }
2514
2515    #[doc = "RTC Software Reset"]
2516    #[inline(always)]
2517    pub fn reset(
2518        self,
2519    ) -> crate::common::RegisterField<
2520        1,
2521        0x1,
2522        1,
2523        0,
2524        rcr2_bcnt::Reset,
2525        rcr2_bcnt::Reset,
2526        Rcr2Bcnt_SPEC,
2527        crate::common::RW,
2528    > {
2529        crate::common::RegisterField::<
2530            1,
2531            0x1,
2532            1,
2533            0,
2534            rcr2_bcnt::Reset,
2535            rcr2_bcnt::Reset,
2536            Rcr2Bcnt_SPEC,
2537            crate::common::RW,
2538        >::from_register(self, 0)
2539    }
2540
2541    #[doc = "RTCOUT Output Enable"]
2542    #[inline(always)]
2543    pub fn rtcoe(
2544        self,
2545    ) -> crate::common::RegisterField<
2546        3,
2547        0x1,
2548        1,
2549        0,
2550        rcr2_bcnt::Rtcoe,
2551        rcr2_bcnt::Rtcoe,
2552        Rcr2Bcnt_SPEC,
2553        crate::common::RW,
2554    > {
2555        crate::common::RegisterField::<
2556            3,
2557            0x1,
2558            1,
2559            0,
2560            rcr2_bcnt::Rtcoe,
2561            rcr2_bcnt::Rtcoe,
2562            Rcr2Bcnt_SPEC,
2563            crate::common::RW,
2564        >::from_register(self, 0)
2565    }
2566
2567    #[doc = "Automatic Adjustment Enable"]
2568    #[inline(always)]
2569    pub fn aadje(
2570        self,
2571    ) -> crate::common::RegisterField<
2572        4,
2573        0x1,
2574        1,
2575        0,
2576        rcr2_bcnt::Aadje,
2577        rcr2_bcnt::Aadje,
2578        Rcr2Bcnt_SPEC,
2579        crate::common::RW,
2580    > {
2581        crate::common::RegisterField::<
2582            4,
2583            0x1,
2584            1,
2585            0,
2586            rcr2_bcnt::Aadje,
2587            rcr2_bcnt::Aadje,
2588            Rcr2Bcnt_SPEC,
2589            crate::common::RW,
2590        >::from_register(self, 0)
2591    }
2592
2593    #[doc = "Automatic Adjustment Period Select"]
2594    #[inline(always)]
2595    pub fn aadjp(
2596        self,
2597    ) -> crate::common::RegisterField<
2598        5,
2599        0x1,
2600        1,
2601        0,
2602        rcr2_bcnt::Aadjp,
2603        rcr2_bcnt::Aadjp,
2604        Rcr2Bcnt_SPEC,
2605        crate::common::RW,
2606    > {
2607        crate::common::RegisterField::<
2608            5,
2609            0x1,
2610            1,
2611            0,
2612            rcr2_bcnt::Aadjp,
2613            rcr2_bcnt::Aadjp,
2614            Rcr2Bcnt_SPEC,
2615            crate::common::RW,
2616        >::from_register(self, 0)
2617    }
2618
2619    #[doc = "Count Mode Select"]
2620    #[inline(always)]
2621    pub fn cntmd(
2622        self,
2623    ) -> crate::common::RegisterField<
2624        7,
2625        0x1,
2626        1,
2627        0,
2628        rcr2_bcnt::Cntmd,
2629        rcr2_bcnt::Cntmd,
2630        Rcr2Bcnt_SPEC,
2631        crate::common::RW,
2632    > {
2633        crate::common::RegisterField::<
2634            7,
2635            0x1,
2636            1,
2637            0,
2638            rcr2_bcnt::Cntmd,
2639            rcr2_bcnt::Cntmd,
2640            Rcr2Bcnt_SPEC,
2641            crate::common::RW,
2642        >::from_register(self, 0)
2643    }
2644}
2645impl ::core::default::Default for Rcr2Bcnt {
2646    #[inline(always)]
2647    fn default() -> Rcr2Bcnt {
2648        <crate::RegValueT<Rcr2Bcnt_SPEC> as RegisterValue<_>>::new(0)
2649    }
2650}
2651pub mod rcr2_bcnt {
2652
2653    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2654    pub struct Start_SPEC;
2655    pub type Start = crate::EnumBitfieldStruct<u8, Start_SPEC>;
2656    impl Start {
2657        #[doc = "Stop the 32-bit binary counter, 64-Hz counter, and prescaler"]
2658        pub const _0: Self = Self::new(0);
2659
2660        #[doc = "Operate the 32-bit binary counter, 64-Hz counter, and prescaler normally"]
2661        pub const _1: Self = Self::new(1);
2662    }
2663    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2664    pub struct Reset_SPEC;
2665    pub type Reset = crate::EnumBitfieldStruct<u8, Reset_SPEC>;
2666    impl Reset {
2667        #[doc = "In writing: Invalid (writing 0 has no effect). In reading: Normal time operation in progress, or an RTC software reset has completed."]
2668        pub const _0: Self = Self::new(0);
2669
2670        #[doc = "In writing: Initialize the prescaler and target registers for RTC software reset. In reading: RTC software reset in progress."]
2671        pub const _1: Self = Self::new(1);
2672    }
2673    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2674    pub struct Rtcoe_SPEC;
2675    pub type Rtcoe = crate::EnumBitfieldStruct<u8, Rtcoe_SPEC>;
2676    impl Rtcoe {
2677        #[doc = "Disable RTCOUT output"]
2678        pub const _0: Self = Self::new(0);
2679
2680        #[doc = "Enable RTCOUT output"]
2681        pub const _1: Self = Self::new(1);
2682    }
2683    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2684    pub struct Aadje_SPEC;
2685    pub type Aadje = crate::EnumBitfieldStruct<u8, Aadje_SPEC>;
2686    impl Aadje {
2687        #[doc = "Disable automatic adjustment"]
2688        pub const _0: Self = Self::new(0);
2689
2690        #[doc = "Enable automatic adjustment"]
2691        pub const _1: Self = Self::new(1);
2692    }
2693    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2694    pub struct Aadjp_SPEC;
2695    pub type Aadjp = crate::EnumBitfieldStruct<u8, Aadjp_SPEC>;
2696    impl Aadjp {
2697        #[doc = "Add or subtract RADJ.ADJ \\[5:0\\] bits from prescaler count value every 32 seconds"]
2698        pub const _0: Self = Self::new(0);
2699
2700        #[doc = "Add or subtract RADJ.ADJ \\[5:0\\] bits from prescaler count value every 8 seconds."]
2701        pub const _1: Self = Self::new(1);
2702    }
2703    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2704    pub struct Cntmd_SPEC;
2705    pub type Cntmd = crate::EnumBitfieldStruct<u8, Cntmd_SPEC>;
2706    impl Cntmd {
2707        #[doc = "Calendar count mode"]
2708        pub const _0: Self = Self::new(0);
2709
2710        #[doc = "Binary count mode"]
2711        pub const _1: Self = Self::new(1);
2712    }
2713}
2714#[doc(hidden)]
2715#[derive(Copy, Clone, Eq, PartialEq)]
2716pub struct Rcr4_SPEC;
2717impl crate::sealed::RegSpec for Rcr4_SPEC {
2718    type DataType = u8;
2719}
2720
2721#[doc = "RTC Control Register 4"]
2722pub type Rcr4 = crate::RegValueT<Rcr4_SPEC>;
2723
2724impl Rcr4 {
2725    #[doc = "Count Source Select"]
2726    #[inline(always)]
2727    pub fn rcksel(
2728        self,
2729    ) -> crate::common::RegisterField<
2730        0,
2731        0x1,
2732        1,
2733        0,
2734        rcr4::Rcksel,
2735        rcr4::Rcksel,
2736        Rcr4_SPEC,
2737        crate::common::RW,
2738    > {
2739        crate::common::RegisterField::<
2740            0,
2741            0x1,
2742            1,
2743            0,
2744            rcr4::Rcksel,
2745            rcr4::Rcksel,
2746            Rcr4_SPEC,
2747            crate::common::RW,
2748        >::from_register(self, 0)
2749    }
2750}
2751impl ::core::default::Default for Rcr4 {
2752    #[inline(always)]
2753    fn default() -> Rcr4 {
2754        <crate::RegValueT<Rcr4_SPEC> as RegisterValue<_>>::new(0)
2755    }
2756}
2757pub mod rcr4 {
2758
2759    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2760    pub struct Rcksel_SPEC;
2761    pub type Rcksel = crate::EnumBitfieldStruct<u8, Rcksel_SPEC>;
2762    impl Rcksel {
2763        #[doc = "Sub-clock oscillator is selected"]
2764        pub const _0: Self = Self::new(0);
2765
2766        #[doc = "LOCO is selected"]
2767        pub const _1: Self = Self::new(1);
2768    }
2769}
2770#[doc(hidden)]
2771#[derive(Copy, Clone, Eq, PartialEq)]
2772pub struct Rfrh_SPEC;
2773impl crate::sealed::RegSpec for Rfrh_SPEC {
2774    type DataType = u16;
2775}
2776
2777#[doc = "Frequency Register H"]
2778pub type Rfrh = crate::RegValueT<Rfrh_SPEC>;
2779
2780impl Rfrh {
2781    #[doc = "Write 0 before writing to the RFRL register after a cold start."]
2782    #[inline(always)]
2783    pub fn rfc16(self) -> crate::common::RegisterFieldBool<0, 1, 0, Rfrh_SPEC, crate::common::RW> {
2784        crate::common::RegisterFieldBool::<0, 1, 0, Rfrh_SPEC, crate::common::RW>::from_register(
2785            self, 0,
2786        )
2787    }
2788}
2789impl ::core::default::Default for Rfrh {
2790    #[inline(always)]
2791    fn default() -> Rfrh {
2792        <crate::RegValueT<Rfrh_SPEC> as RegisterValue<_>>::new(0)
2793    }
2794}
2795
2796#[doc(hidden)]
2797#[derive(Copy, Clone, Eq, PartialEq)]
2798pub struct Rfrl_SPEC;
2799impl crate::sealed::RegSpec for Rfrl_SPEC {
2800    type DataType = u16;
2801}
2802
2803#[doc = "Frequency Register L"]
2804pub type Rfrl = crate::RegValueT<Rfrl_SPEC>;
2805
2806impl Rfrl {
2807    #[doc = "Frequency Comparison Value"]
2808    #[inline(always)]
2809    pub fn rfc(
2810        self,
2811    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Rfrl_SPEC, crate::common::RW> {
2812        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Rfrl_SPEC,crate::common::RW>::from_register(self,0)
2813    }
2814}
2815impl ::core::default::Default for Rfrl {
2816    #[inline(always)]
2817    fn default() -> Rfrl {
2818        <crate::RegValueT<Rfrl_SPEC> as RegisterValue<_>>::new(0)
2819    }
2820}
2821
2822#[doc(hidden)]
2823#[derive(Copy, Clone, Eq, PartialEq)]
2824pub struct Radj_SPEC;
2825impl crate::sealed::RegSpec for Radj_SPEC {
2826    type DataType = u8;
2827}
2828
2829#[doc = "Time Error Adjustment Register"]
2830pub type Radj = crate::RegValueT<Radj_SPEC>;
2831
2832impl Radj {
2833    #[doc = "Adjustment Value"]
2834    #[inline(always)]
2835    pub fn adj(
2836        self,
2837    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Radj_SPEC, crate::common::RW> {
2838        crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Radj_SPEC,crate::common::RW>::from_register(self,0)
2839    }
2840
2841    #[doc = "Plus-Minus"]
2842    #[inline(always)]
2843    pub fn pmadj(
2844        self,
2845    ) -> crate::common::RegisterField<
2846        6,
2847        0x3,
2848        1,
2849        0,
2850        radj::Pmadj,
2851        radj::Pmadj,
2852        Radj_SPEC,
2853        crate::common::RW,
2854    > {
2855        crate::common::RegisterField::<
2856            6,
2857            0x3,
2858            1,
2859            0,
2860            radj::Pmadj,
2861            radj::Pmadj,
2862            Radj_SPEC,
2863            crate::common::RW,
2864        >::from_register(self, 0)
2865    }
2866}
2867impl ::core::default::Default for Radj {
2868    #[inline(always)]
2869    fn default() -> Radj {
2870        <crate::RegValueT<Radj_SPEC> as RegisterValue<_>>::new(0)
2871    }
2872}
2873pub mod radj {
2874
2875    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2876    pub struct Pmadj_SPEC;
2877    pub type Pmadj = crate::EnumBitfieldStruct<u8, Pmadj_SPEC>;
2878    impl Pmadj {
2879        #[doc = "Do not perform adjustment."]
2880        pub const _00: Self = Self::new(0);
2881
2882        #[doc = "Adjustment is performed by the addition to the prescaler"]
2883        pub const _01: Self = Self::new(1);
2884
2885        #[doc = "Adjustment is performed by the subtraction from the prescaler"]
2886        pub const _10: Self = Self::new(2);
2887
2888        #[doc = "Setting prohibited."]
2889        pub const _11: Self = Self::new(3);
2890    }
2891}
2892#[doc(hidden)]
2893#[derive(Copy, Clone, Eq, PartialEq)]
2894pub struct Rtccr_SPEC;
2895impl crate::sealed::RegSpec for Rtccr_SPEC {
2896    type DataType = u8;
2897}
2898
2899#[doc = "Time Capture Control Register %s"]
2900pub type Rtccr = crate::RegValueT<Rtccr_SPEC>;
2901
2902impl Rtccr {
2903    #[doc = "Time Capture Control"]
2904    #[inline(always)]
2905    pub fn tcct(
2906        self,
2907    ) -> crate::common::RegisterField<
2908        0,
2909        0x3,
2910        1,
2911        0,
2912        rtccr::Tcct,
2913        rtccr::Tcct,
2914        Rtccr_SPEC,
2915        crate::common::RW,
2916    > {
2917        crate::common::RegisterField::<
2918            0,
2919            0x3,
2920            1,
2921            0,
2922            rtccr::Tcct,
2923            rtccr::Tcct,
2924            Rtccr_SPEC,
2925            crate::common::RW,
2926        >::from_register(self, 0)
2927    }
2928
2929    #[doc = "Time Capture Status"]
2930    #[inline(always)]
2931    pub fn tcst(
2932        self,
2933    ) -> crate::common::RegisterField<
2934        2,
2935        0x1,
2936        1,
2937        0,
2938        rtccr::Tcst,
2939        rtccr::Tcst,
2940        Rtccr_SPEC,
2941        crate::common::RW,
2942    > {
2943        crate::common::RegisterField::<
2944            2,
2945            0x1,
2946            1,
2947            0,
2948            rtccr::Tcst,
2949            rtccr::Tcst,
2950            Rtccr_SPEC,
2951            crate::common::RW,
2952        >::from_register(self, 0)
2953    }
2954
2955    #[doc = "Time Capture Noise Filter Control"]
2956    #[inline(always)]
2957    pub fn tcnf(
2958        self,
2959    ) -> crate::common::RegisterField<
2960        4,
2961        0x3,
2962        1,
2963        0,
2964        rtccr::Tcnf,
2965        rtccr::Tcnf,
2966        Rtccr_SPEC,
2967        crate::common::RW,
2968    > {
2969        crate::common::RegisterField::<
2970            4,
2971            0x3,
2972            1,
2973            0,
2974            rtccr::Tcnf,
2975            rtccr::Tcnf,
2976            Rtccr_SPEC,
2977            crate::common::RW,
2978        >::from_register(self, 0)
2979    }
2980
2981    #[doc = "Time Capture Event Input Pin Enable"]
2982    #[inline(always)]
2983    pub fn tcen(
2984        self,
2985    ) -> crate::common::RegisterField<
2986        7,
2987        0x1,
2988        1,
2989        0,
2990        rtccr::Tcen,
2991        rtccr::Tcen,
2992        Rtccr_SPEC,
2993        crate::common::RW,
2994    > {
2995        crate::common::RegisterField::<
2996            7,
2997            0x1,
2998            1,
2999            0,
3000            rtccr::Tcen,
3001            rtccr::Tcen,
3002            Rtccr_SPEC,
3003            crate::common::RW,
3004        >::from_register(self, 0)
3005    }
3006}
3007impl ::core::default::Default for Rtccr {
3008    #[inline(always)]
3009    fn default() -> Rtccr {
3010        <crate::RegValueT<Rtccr_SPEC> as RegisterValue<_>>::new(0)
3011    }
3012}
3013pub mod rtccr {
3014
3015    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3016    pub struct Tcct_SPEC;
3017    pub type Tcct = crate::EnumBitfieldStruct<u8, Tcct_SPEC>;
3018    impl Tcct {
3019        #[doc = "Do not detect events"]
3020        pub const _00: Self = Self::new(0);
3021
3022        #[doc = "Detect rising edge"]
3023        pub const _01: Self = Self::new(1);
3024
3025        #[doc = "Detect falling edge"]
3026        pub const _10: Self = Self::new(2);
3027
3028        #[doc = "Detect both edges"]
3029        pub const _11: Self = Self::new(3);
3030    }
3031    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3032    pub struct Tcst_SPEC;
3033    pub type Tcst = crate::EnumBitfieldStruct<u8, Tcst_SPEC>;
3034    impl Tcst {
3035        #[doc = "No event detected"]
3036        pub const _0: Self = Self::new(0);
3037
3038        #[doc = "Event detected"]
3039        pub const _1: Self = Self::new(1);
3040    }
3041    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3042    pub struct Tcnf_SPEC;
3043    pub type Tcnf = crate::EnumBitfieldStruct<u8, Tcnf_SPEC>;
3044    impl Tcnf {
3045        #[doc = "Turn noise filter off"]
3046        pub const _00: Self = Self::new(0);
3047
3048        #[doc = "Setting prohibited"]
3049        pub const _01: Self = Self::new(1);
3050
3051        #[doc = "Turn noise filter on (count source)"]
3052        pub const _10: Self = Self::new(2);
3053
3054        #[doc = "Turn noise filter on (count source by divided by 32)"]
3055        pub const _11: Self = Self::new(3);
3056    }
3057    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3058    pub struct Tcen_SPEC;
3059    pub type Tcen = crate::EnumBitfieldStruct<u8, Tcen_SPEC>;
3060    impl Tcen {
3061        #[doc = "Disable the RTCICn pin as the time capture event input pin"]
3062        pub const _0: Self = Self::new(0);
3063
3064        #[doc = "Enable the RTCICn pin as the time capture event input pin"]
3065        pub const _1: Self = Self::new(1);
3066    }
3067}
3068#[doc(hidden)]
3069#[derive(Copy, Clone, Eq, PartialEq)]
3070pub struct Bcnt0Cp_SPEC;
3071impl crate::sealed::RegSpec for Bcnt0Cp_SPEC {
3072    type DataType = u8;
3073}
3074
3075#[doc = "BCNT0 Capture Register %s"]
3076pub type Bcnt0Cp = crate::RegValueT<Bcnt0Cp_SPEC>;
3077
3078impl NoBitfieldReg<Bcnt0Cp_SPEC> for Bcnt0Cp {}
3079impl ::core::default::Default for Bcnt0Cp {
3080    #[inline(always)]
3081    fn default() -> Bcnt0Cp {
3082        <crate::RegValueT<Bcnt0Cp_SPEC> as RegisterValue<_>>::new(0)
3083    }
3084}
3085
3086#[doc(hidden)]
3087#[derive(Copy, Clone, Eq, PartialEq)]
3088pub struct Rseccp_SPEC;
3089impl crate::sealed::RegSpec for Rseccp_SPEC {
3090    type DataType = u8;
3091}
3092
3093#[doc = "Second Capture Register %s"]
3094pub type Rseccp = crate::RegValueT<Rseccp_SPEC>;
3095
3096impl Rseccp {
3097    #[doc = "1-Second Capture"]
3098    #[inline(always)]
3099    pub fn sec1(
3100        self,
3101    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rseccp_SPEC, crate::common::R> {
3102        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rseccp_SPEC,crate::common::R>::from_register(self,0)
3103    }
3104
3105    #[doc = "10-Second Capture"]
3106    #[inline(always)]
3107    pub fn sec10(
3108        self,
3109    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rseccp_SPEC, crate::common::R> {
3110        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rseccp_SPEC,crate::common::R>::from_register(self,0)
3111    }
3112}
3113impl ::core::default::Default for Rseccp {
3114    #[inline(always)]
3115    fn default() -> Rseccp {
3116        <crate::RegValueT<Rseccp_SPEC> as RegisterValue<_>>::new(0)
3117    }
3118}
3119
3120#[doc(hidden)]
3121#[derive(Copy, Clone, Eq, PartialEq)]
3122pub struct Bcnt1Cp_SPEC;
3123impl crate::sealed::RegSpec for Bcnt1Cp_SPEC {
3124    type DataType = u8;
3125}
3126
3127#[doc = "BCNT1 Capture Register %s"]
3128pub type Bcnt1Cp = crate::RegValueT<Bcnt1Cp_SPEC>;
3129
3130impl NoBitfieldReg<Bcnt1Cp_SPEC> for Bcnt1Cp {}
3131impl ::core::default::Default for Bcnt1Cp {
3132    #[inline(always)]
3133    fn default() -> Bcnt1Cp {
3134        <crate::RegValueT<Bcnt1Cp_SPEC> as RegisterValue<_>>::new(0)
3135    }
3136}
3137
3138#[doc(hidden)]
3139#[derive(Copy, Clone, Eq, PartialEq)]
3140pub struct Rmincp_SPEC;
3141impl crate::sealed::RegSpec for Rmincp_SPEC {
3142    type DataType = u8;
3143}
3144
3145#[doc = "Minute Capture Register %s"]
3146pub type Rmincp = crate::RegValueT<Rmincp_SPEC>;
3147
3148impl Rmincp {
3149    #[doc = "1-Minute Capture"]
3150    #[inline(always)]
3151    pub fn min1(
3152        self,
3153    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rmincp_SPEC, crate::common::R> {
3154        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rmincp_SPEC,crate::common::R>::from_register(self,0)
3155    }
3156
3157    #[doc = "10-Minute Capture"]
3158    #[inline(always)]
3159    pub fn min10(
3160        self,
3161    ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Rmincp_SPEC, crate::common::R> {
3162        crate::common::RegisterField::<4,0x7,1,0,u8,u8,Rmincp_SPEC,crate::common::R>::from_register(self,0)
3163    }
3164}
3165impl ::core::default::Default for Rmincp {
3166    #[inline(always)]
3167    fn default() -> Rmincp {
3168        <crate::RegValueT<Rmincp_SPEC> as RegisterValue<_>>::new(0)
3169    }
3170}
3171
3172#[doc(hidden)]
3173#[derive(Copy, Clone, Eq, PartialEq)]
3174pub struct Bcnt2Cp_SPEC;
3175impl crate::sealed::RegSpec for Bcnt2Cp_SPEC {
3176    type DataType = u8;
3177}
3178
3179#[doc = "BCNT2 Capture Register %s"]
3180pub type Bcnt2Cp = crate::RegValueT<Bcnt2Cp_SPEC>;
3181
3182impl NoBitfieldReg<Bcnt2Cp_SPEC> for Bcnt2Cp {}
3183impl ::core::default::Default for Bcnt2Cp {
3184    #[inline(always)]
3185    fn default() -> Bcnt2Cp {
3186        <crate::RegValueT<Bcnt2Cp_SPEC> as RegisterValue<_>>::new(0)
3187    }
3188}
3189
3190#[doc(hidden)]
3191#[derive(Copy, Clone, Eq, PartialEq)]
3192pub struct Rhrcp_SPEC;
3193impl crate::sealed::RegSpec for Rhrcp_SPEC {
3194    type DataType = u8;
3195}
3196
3197#[doc = "Hour Capture Register %s"]
3198pub type Rhrcp = crate::RegValueT<Rhrcp_SPEC>;
3199
3200impl Rhrcp {
3201    #[doc = "1-Hour Capture"]
3202    #[inline(always)]
3203    pub fn hr1(
3204        self,
3205    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rhrcp_SPEC, crate::common::R> {
3206        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rhrcp_SPEC,crate::common::R>::from_register(self,0)
3207    }
3208
3209    #[doc = "10-Hour Capture"]
3210    #[inline(always)]
3211    pub fn hr10(
3212        self,
3213    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rhrcp_SPEC, crate::common::R> {
3214        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rhrcp_SPEC,crate::common::R>::from_register(self,0)
3215    }
3216
3217    #[doc = "PM"]
3218    #[inline(always)]
3219    pub fn pm(
3220        self,
3221    ) -> crate::common::RegisterField<
3222        6,
3223        0x1,
3224        1,
3225        0,
3226        rhrcp::Pm,
3227        rhrcp::Pm,
3228        Rhrcp_SPEC,
3229        crate::common::R,
3230    > {
3231        crate::common::RegisterField::<
3232            6,
3233            0x1,
3234            1,
3235            0,
3236            rhrcp::Pm,
3237            rhrcp::Pm,
3238            Rhrcp_SPEC,
3239            crate::common::R,
3240        >::from_register(self, 0)
3241    }
3242}
3243impl ::core::default::Default for Rhrcp {
3244    #[inline(always)]
3245    fn default() -> Rhrcp {
3246        <crate::RegValueT<Rhrcp_SPEC> as RegisterValue<_>>::new(0)
3247    }
3248}
3249pub mod rhrcp {
3250
3251    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3252    pub struct Pm_SPEC;
3253    pub type Pm = crate::EnumBitfieldStruct<u8, Pm_SPEC>;
3254    impl Pm {
3255        #[doc = "AM"]
3256        pub const _0: Self = Self::new(0);
3257
3258        #[doc = "PM"]
3259        pub const _1: Self = Self::new(1);
3260    }
3261}
3262#[doc(hidden)]
3263#[derive(Copy, Clone, Eq, PartialEq)]
3264pub struct Bcnt3Cp_SPEC;
3265impl crate::sealed::RegSpec for Bcnt3Cp_SPEC {
3266    type DataType = u8;
3267}
3268
3269#[doc = "BCNT3 Capture Register %s"]
3270pub type Bcnt3Cp = crate::RegValueT<Bcnt3Cp_SPEC>;
3271
3272impl NoBitfieldReg<Bcnt3Cp_SPEC> for Bcnt3Cp {}
3273impl ::core::default::Default for Bcnt3Cp {
3274    #[inline(always)]
3275    fn default() -> Bcnt3Cp {
3276        <crate::RegValueT<Bcnt3Cp_SPEC> as RegisterValue<_>>::new(0)
3277    }
3278}
3279
3280#[doc(hidden)]
3281#[derive(Copy, Clone, Eq, PartialEq)]
3282pub struct Rdaycp_SPEC;
3283impl crate::sealed::RegSpec for Rdaycp_SPEC {
3284    type DataType = u8;
3285}
3286
3287#[doc = "Date Capture Register %s"]
3288pub type Rdaycp = crate::RegValueT<Rdaycp_SPEC>;
3289
3290impl Rdaycp {
3291    #[doc = "1-Day Capture"]
3292    #[inline(always)]
3293    pub fn date1(
3294        self,
3295    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rdaycp_SPEC, crate::common::R> {
3296        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rdaycp_SPEC,crate::common::R>::from_register(self,0)
3297    }
3298
3299    #[doc = "10-Day Capture"]
3300    #[inline(always)]
3301    pub fn date10(
3302        self,
3303    ) -> crate::common::RegisterField<4, 0x3, 1, 0, u8, u8, Rdaycp_SPEC, crate::common::R> {
3304        crate::common::RegisterField::<4,0x3,1,0,u8,u8,Rdaycp_SPEC,crate::common::R>::from_register(self,0)
3305    }
3306}
3307impl ::core::default::Default for Rdaycp {
3308    #[inline(always)]
3309    fn default() -> Rdaycp {
3310        <crate::RegValueT<Rdaycp_SPEC> as RegisterValue<_>>::new(0)
3311    }
3312}
3313
3314#[doc(hidden)]
3315#[derive(Copy, Clone, Eq, PartialEq)]
3316pub struct Rmoncp_SPEC;
3317impl crate::sealed::RegSpec for Rmoncp_SPEC {
3318    type DataType = u8;
3319}
3320
3321#[doc = "Month Capture Register %s"]
3322pub type Rmoncp = crate::RegValueT<Rmoncp_SPEC>;
3323
3324impl Rmoncp {
3325    #[doc = "1-Month Capture"]
3326    #[inline(always)]
3327    pub fn mon1(
3328        self,
3329    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, Rmoncp_SPEC, crate::common::R> {
3330        crate::common::RegisterField::<0,0xf,1,0,u8,u8,Rmoncp_SPEC,crate::common::R>::from_register(self,0)
3331    }
3332
3333    #[doc = "10-Month Capture"]
3334    #[inline(always)]
3335    pub fn mon10(self) -> crate::common::RegisterFieldBool<4, 1, 0, Rmoncp_SPEC, crate::common::R> {
3336        crate::common::RegisterFieldBool::<4, 1, 0, Rmoncp_SPEC, crate::common::R>::from_register(
3337            self, 0,
3338        )
3339    }
3340}
3341impl ::core::default::Default for Rmoncp {
3342    #[inline(always)]
3343    fn default() -> Rmoncp {
3344        <crate::RegValueT<Rmoncp_SPEC> as RegisterValue<_>>::new(0)
3345    }
3346}