Skip to main content

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