cyt2bl_a/m0/backup/
alm1_date.rs1#[doc = "Register `ALM1_DATE` reader"]
2pub struct R(crate::R<ALM1_DATE_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<ALM1_DATE_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<ALM1_DATE_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<ALM1_DATE_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `ALM1_DATE` writer"]
17pub struct W(crate::W<ALM1_DATE_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<ALM1_DATE_SPEC>;
20 #[inline(always)]
21 fn deref(&self) -> &Self::Target {
22 &self.0
23 }
24}
25impl core::ops::DerefMut for W {
26 #[inline(always)]
27 fn deref_mut(&mut self) -> &mut Self::Target {
28 &mut self.0
29 }
30}
31impl From<crate::W<ALM1_DATE_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<ALM1_DATE_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Field `ALM_DATE` reader - Alarm Day of the Month, 1-31 Leap Year corrected"]
38pub type ALM_DATE_R = crate::FieldReader<u8, u8>;
39#[doc = "Field `ALM_DATE` writer - Alarm Day of the Month, 1-31 Leap Year corrected"]
40pub type ALM_DATE_W<'a, const O: u8> = crate::FieldWriter<'a, u32, ALM1_DATE_SPEC, u8, u8, 5, O>;
41#[doc = "Field `ALM_DATE_EN` reader - Alarm Day of the Month enable: 0=ignore, 1=match"]
42pub type ALM_DATE_EN_R = crate::BitReader<bool>;
43#[doc = "Field `ALM_DATE_EN` writer - Alarm Day of the Month enable: 0=ignore, 1=match"]
44pub type ALM_DATE_EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, ALM1_DATE_SPEC, bool, O>;
45#[doc = "Field `ALM_MON` reader - Alarm Month, 1-12"]
46pub type ALM_MON_R = crate::FieldReader<u8, u8>;
47#[doc = "Field `ALM_MON` writer - Alarm Month, 1-12"]
48pub type ALM_MON_W<'a, const O: u8> = crate::FieldWriter<'a, u32, ALM1_DATE_SPEC, u8, u8, 4, O>;
49#[doc = "Field `ALM_MON_EN` reader - Alarm Month enable: 0=ignore, 1=match"]
50pub type ALM_MON_EN_R = crate::BitReader<bool>;
51#[doc = "Field `ALM_MON_EN` writer - Alarm Month enable: 0=ignore, 1=match"]
52pub type ALM_MON_EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, ALM1_DATE_SPEC, bool, O>;
53#[doc = "Field `ALM_EN` reader - Master enable for alarm 1. 0: Alarm 1 is disabled. Fields for date and time are ignored. 1: Alarm 1 is enabled. Alarm triggers whenever the new date and time matches all the enabled date and time fields, which can happen more than once depending on configuration. If none of the date and time fields are enabled, then this alarm triggers once every second."]
54pub type ALM_EN_R = crate::BitReader<bool>;
55#[doc = "Field `ALM_EN` writer - Master enable for alarm 1. 0: Alarm 1 is disabled. Fields for date and time are ignored. 1: Alarm 1 is enabled. Alarm triggers whenever the new date and time matches all the enabled date and time fields, which can happen more than once depending on configuration. If none of the date and time fields are enabled, then this alarm triggers once every second."]
56pub type ALM_EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, ALM1_DATE_SPEC, bool, O>;
57impl R {
58 #[doc = "Bits 0:4 - Alarm Day of the Month, 1-31 Leap Year corrected"]
59 #[inline(always)]
60 pub fn alm_date(&self) -> ALM_DATE_R {
61 ALM_DATE_R::new((self.bits & 0x1f) as u8)
62 }
63 #[doc = "Bit 7 - Alarm Day of the Month enable: 0=ignore, 1=match"]
64 #[inline(always)]
65 pub fn alm_date_en(&self) -> ALM_DATE_EN_R {
66 ALM_DATE_EN_R::new(((self.bits >> 7) & 1) != 0)
67 }
68 #[doc = "Bits 8:11 - Alarm Month, 1-12"]
69 #[inline(always)]
70 pub fn alm_mon(&self) -> ALM_MON_R {
71 ALM_MON_R::new(((self.bits >> 8) & 0x0f) as u8)
72 }
73 #[doc = "Bit 15 - Alarm Month enable: 0=ignore, 1=match"]
74 #[inline(always)]
75 pub fn alm_mon_en(&self) -> ALM_MON_EN_R {
76 ALM_MON_EN_R::new(((self.bits >> 15) & 1) != 0)
77 }
78 #[doc = "Bit 31 - Master enable for alarm 1. 0: Alarm 1 is disabled. Fields for date and time are ignored. 1: Alarm 1 is enabled. Alarm triggers whenever the new date and time matches all the enabled date and time fields, which can happen more than once depending on configuration. If none of the date and time fields are enabled, then this alarm triggers once every second."]
79 #[inline(always)]
80 pub fn alm_en(&self) -> ALM_EN_R {
81 ALM_EN_R::new(((self.bits >> 31) & 1) != 0)
82 }
83}
84impl W {
85 #[doc = "Bits 0:4 - Alarm Day of the Month, 1-31 Leap Year corrected"]
86 #[inline(always)]
87 #[must_use]
88 pub fn alm_date(&mut self) -> ALM_DATE_W<0> {
89 ALM_DATE_W::new(self)
90 }
91 #[doc = "Bit 7 - Alarm Day of the Month enable: 0=ignore, 1=match"]
92 #[inline(always)]
93 #[must_use]
94 pub fn alm_date_en(&mut self) -> ALM_DATE_EN_W<7> {
95 ALM_DATE_EN_W::new(self)
96 }
97 #[doc = "Bits 8:11 - Alarm Month, 1-12"]
98 #[inline(always)]
99 #[must_use]
100 pub fn alm_mon(&mut self) -> ALM_MON_W<8> {
101 ALM_MON_W::new(self)
102 }
103 #[doc = "Bit 15 - Alarm Month enable: 0=ignore, 1=match"]
104 #[inline(always)]
105 #[must_use]
106 pub fn alm_mon_en(&mut self) -> ALM_MON_EN_W<15> {
107 ALM_MON_EN_W::new(self)
108 }
109 #[doc = "Bit 31 - Master enable for alarm 1. 0: Alarm 1 is disabled. Fields for date and time are ignored. 1: Alarm 1 is enabled. Alarm triggers whenever the new date and time matches all the enabled date and time fields, which can happen more than once depending on configuration. If none of the date and time fields are enabled, then this alarm triggers once every second."]
110 #[inline(always)]
111 #[must_use]
112 pub fn alm_en(&mut self) -> ALM_EN_W<31> {
113 ALM_EN_W::new(self)
114 }
115 #[doc = "Writes raw bits to the register."]
116 #[inline(always)]
117 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
118 self.0.bits(bits);
119 self
120 }
121}
122#[doc = "Alarm 1 Day of Month, Month\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [alm1_date](index.html) module"]
123pub struct ALM1_DATE_SPEC;
124impl crate::RegisterSpec for ALM1_DATE_SPEC {
125 type Ux = u32;
126}
127#[doc = "`read()` method returns [alm1_date::R](R) reader structure"]
128impl crate::Readable for ALM1_DATE_SPEC {
129 type Reader = R;
130}
131#[doc = "`write(|w| ..)` method takes [alm1_date::W](W) writer structure"]
132impl crate::Writable for ALM1_DATE_SPEC {
133 type Writer = W;
134 const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
135 const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
136}
137#[doc = "`reset()` method sets ALM1_DATE to value 0x0101"]
138impl crate::Resettable for ALM1_DATE_SPEC {
139 const RESET_VALUE: Self::Ux = 0x0101;
140}