1#[doc = r" Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Start RTC counter"]
5 pub tasks_start: TASKS_START,
6 #[doc = "0x04 - Stop RTC counter"]
7 pub tasks_stop: TASKS_STOP,
8 #[doc = "0x08 - Clear RTC counter"]
9 pub tasks_clear: TASKS_CLEAR,
10 #[doc = "0x0c - Set counter to 0xFFFFF0"]
11 pub tasks_trigovrflw: TASKS_TRIGOVRFLW,
12 _reserved0: [u8; 112usize],
13 #[doc = "0x80 - Subscribe configuration for task START"]
14 pub subscribe_start: SUBSCRIBE_START,
15 #[doc = "0x84 - Subscribe configuration for task STOP"]
16 pub subscribe_stop: SUBSCRIBE_STOP,
17 #[doc = "0x88 - Subscribe configuration for task CLEAR"]
18 pub subscribe_clear: SUBSCRIBE_CLEAR,
19 #[doc = "0x8c - Subscribe configuration for task TRIGOVRFLW"]
20 pub subscribe_trigovrflw: SUBSCRIBE_TRIGOVRFLW,
21 _reserved1: [u8; 112usize],
22 #[doc = "0x100 - Event on counter increment"]
23 pub events_tick: EVENTS_TICK,
24 #[doc = "0x104 - Event on counter overflow"]
25 pub events_ovrflw: EVENTS_OVRFLW,
26 _reserved2: [u8; 56usize],
27 #[doc = "0x140 - Description collection: Compare event on CC\\[n\\] match"]
28 pub events_compare: [EVENTS_COMPARE; 4],
29 _reserved3: [u8; 48usize],
30 #[doc = "0x180 - Publish configuration for event TICK"]
31 pub publish_tick: PUBLISH_TICK,
32 #[doc = "0x184 - Publish configuration for event OVRFLW"]
33 pub publish_ovrflw: PUBLISH_OVRFLW,
34 _reserved4: [u8; 56usize],
35 #[doc = "0x1c0 - Description collection: Publish configuration for event COMPARE\\[n\\]"]
36 pub publish_compare: [PUBLISH_COMPARE; 4],
37 _reserved5: [u8; 308usize],
38 #[doc = "0x304 - Enable interrupt"]
39 pub intenset: INTENSET,
40 #[doc = "0x308 - Disable interrupt"]
41 pub intenclr: INTENCLR,
42 _reserved6: [u8; 52usize],
43 #[doc = "0x340 - Enable or disable event routing"]
44 pub evten: EVTEN,
45 #[doc = "0x344 - Enable event routing"]
46 pub evtenset: EVTENSET,
47 #[doc = "0x348 - Disable event routing"]
48 pub evtenclr: EVTENCLR,
49 _reserved7: [u8; 440usize],
50 #[doc = "0x504 - Current counter value"]
51 pub counter: COUNTER,
52 #[doc = "0x508 - 12-bit prescaler for counter frequency (32768/(PRESCALER+1)). Must be written when RTC is stopped."]
53 pub prescaler: PRESCALER,
54 _reserved8: [u8; 52usize],
55 #[doc = "0x540 - Description collection: Compare register n"]
56 pub cc: [CC; 4],
57}
58#[doc = "Start RTC counter"]
59pub struct TASKS_START {
60 register: ::vcell::VolatileCell<u32>,
61}
62#[doc = "Start RTC counter"]
63pub mod tasks_start;
64#[doc = "Stop RTC counter"]
65pub struct TASKS_STOP {
66 register: ::vcell::VolatileCell<u32>,
67}
68#[doc = "Stop RTC counter"]
69pub mod tasks_stop;
70#[doc = "Clear RTC counter"]
71pub struct TASKS_CLEAR {
72 register: ::vcell::VolatileCell<u32>,
73}
74#[doc = "Clear RTC counter"]
75pub mod tasks_clear;
76#[doc = "Set counter to 0xFFFFF0"]
77pub struct TASKS_TRIGOVRFLW {
78 register: ::vcell::VolatileCell<u32>,
79}
80#[doc = "Set counter to 0xFFFFF0"]
81pub mod tasks_trigovrflw;
82#[doc = "Subscribe configuration for task START"]
83pub struct SUBSCRIBE_START {
84 register: ::vcell::VolatileCell<u32>,
85}
86#[doc = "Subscribe configuration for task START"]
87pub mod subscribe_start;
88#[doc = "Subscribe configuration for task STOP"]
89pub struct SUBSCRIBE_STOP {
90 register: ::vcell::VolatileCell<u32>,
91}
92#[doc = "Subscribe configuration for task STOP"]
93pub mod subscribe_stop;
94#[doc = "Subscribe configuration for task CLEAR"]
95pub struct SUBSCRIBE_CLEAR {
96 register: ::vcell::VolatileCell<u32>,
97}
98#[doc = "Subscribe configuration for task CLEAR"]
99pub mod subscribe_clear;
100#[doc = "Subscribe configuration for task TRIGOVRFLW"]
101pub struct SUBSCRIBE_TRIGOVRFLW {
102 register: ::vcell::VolatileCell<u32>,
103}
104#[doc = "Subscribe configuration for task TRIGOVRFLW"]
105pub mod subscribe_trigovrflw;
106#[doc = "Event on counter increment"]
107pub struct EVENTS_TICK {
108 register: ::vcell::VolatileCell<u32>,
109}
110#[doc = "Event on counter increment"]
111pub mod events_tick;
112#[doc = "Event on counter overflow"]
113pub struct EVENTS_OVRFLW {
114 register: ::vcell::VolatileCell<u32>,
115}
116#[doc = "Event on counter overflow"]
117pub mod events_ovrflw;
118#[doc = "Description collection: Compare event on CC\\[n\\] match"]
119pub struct EVENTS_COMPARE {
120 register: ::vcell::VolatileCell<u32>,
121}
122#[doc = "Description collection: Compare event on CC\\[n\\] match"]
123pub mod events_compare;
124#[doc = "Publish configuration for event TICK"]
125pub struct PUBLISH_TICK {
126 register: ::vcell::VolatileCell<u32>,
127}
128#[doc = "Publish configuration for event TICK"]
129pub mod publish_tick;
130#[doc = "Publish configuration for event OVRFLW"]
131pub struct PUBLISH_OVRFLW {
132 register: ::vcell::VolatileCell<u32>,
133}
134#[doc = "Publish configuration for event OVRFLW"]
135pub mod publish_ovrflw;
136#[doc = "Description collection: Publish configuration for event COMPARE\\[n\\]"]
137pub struct PUBLISH_COMPARE {
138 register: ::vcell::VolatileCell<u32>,
139}
140#[doc = "Description collection: Publish configuration for event COMPARE\\[n\\]"]
141pub mod publish_compare;
142#[doc = "Enable interrupt"]
143pub struct INTENSET {
144 register: ::vcell::VolatileCell<u32>,
145}
146#[doc = "Enable interrupt"]
147pub mod intenset;
148#[doc = "Disable interrupt"]
149pub struct INTENCLR {
150 register: ::vcell::VolatileCell<u32>,
151}
152#[doc = "Disable interrupt"]
153pub mod intenclr;
154#[doc = "Enable or disable event routing"]
155pub struct EVTEN {
156 register: ::vcell::VolatileCell<u32>,
157}
158#[doc = "Enable or disable event routing"]
159pub mod evten;
160#[doc = "Enable event routing"]
161pub struct EVTENSET {
162 register: ::vcell::VolatileCell<u32>,
163}
164#[doc = "Enable event routing"]
165pub mod evtenset;
166#[doc = "Disable event routing"]
167pub struct EVTENCLR {
168 register: ::vcell::VolatileCell<u32>,
169}
170#[doc = "Disable event routing"]
171pub mod evtenclr;
172#[doc = "Current counter value"]
173pub struct COUNTER {
174 register: ::vcell::VolatileCell<u32>,
175}
176#[doc = "Current counter value"]
177pub mod counter;
178#[doc = "12-bit prescaler for counter frequency (32768/(PRESCALER+1)). Must be written when RTC is stopped."]
179pub struct PRESCALER {
180 register: ::vcell::VolatileCell<u32>,
181}
182#[doc = "12-bit prescaler for counter frequency (32768/(PRESCALER+1)). Must be written when RTC is stopped."]
183pub mod prescaler;
184#[doc = "Description collection: Compare register n"]
185pub struct CC {
186 register: ::vcell::VolatileCell<u32>,
187}
188#[doc = "Description collection: Compare register n"]
189pub mod cc;