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 _reserved4: [u8; 0x70],
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 _reserved8: [u8; 0x70],
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 _reserved10: [u8; 0x38],
27 #[doc = "0x140..0x150 - Description collection: Compare event on CC\\[n\\]
28match"]
29 pub events_compare: [EVENTS_COMPARE; 4],
30 _reserved11: [u8; 0x30],
31 #[doc = "0x180 - Publish configuration for event TICK"]
32 pub publish_tick: PUBLISH_TICK,
33 #[doc = "0x184 - Publish configuration for event OVRFLW"]
34 pub publish_ovrflw: PUBLISH_OVRFLW,
35 _reserved13: [u8; 0x38],
36 #[doc = "0x1c0..0x1d0 - Description collection: Publish configuration for event COMPARE\\[n\\]"]
37 pub publish_compare: [PUBLISH_COMPARE; 4],
38 _reserved14: [u8; 0x0134],
39 #[doc = "0x304 - Enable interrupt"]
40 pub intenset: INTENSET,
41 #[doc = "0x308 - Disable interrupt"]
42 pub intenclr: INTENCLR,
43 _reserved16: [u8; 0x34],
44 #[doc = "0x340 - Enable or disable event routing"]
45 pub evten: EVTEN,
46 #[doc = "0x344 - Enable event routing"]
47 pub evtenset: EVTENSET,
48 #[doc = "0x348 - Disable event routing"]
49 pub evtenclr: EVTENCLR,
50 _reserved19: [u8; 0x01b8],
51 #[doc = "0x504 - Current counter value"]
52 pub counter: COUNTER,
53 #[doc = "0x508 - 12-bit prescaler for counter frequency (32768/(PRESCALER+1)). Must be written when RTC is stopped."]
54 pub prescaler: PRESCALER,
55 _reserved21: [u8; 0x34],
56 #[doc = "0x540..0x550 - Description collection: Compare register n"]
57 pub cc: [CC; 4],
58}
59#[doc = "TASKS_START (w) register accessor: an alias for `Reg<TASKS_START_SPEC>`"]
60pub type TASKS_START = crate::Reg<tasks_start::TASKS_START_SPEC>;
61#[doc = "Start RTC counter"]
62pub mod tasks_start;
63#[doc = "TASKS_STOP (w) register accessor: an alias for `Reg<TASKS_STOP_SPEC>`"]
64pub type TASKS_STOP = crate::Reg<tasks_stop::TASKS_STOP_SPEC>;
65#[doc = "Stop RTC counter"]
66pub mod tasks_stop;
67#[doc = "TASKS_CLEAR (w) register accessor: an alias for `Reg<TASKS_CLEAR_SPEC>`"]
68pub type TASKS_CLEAR = crate::Reg<tasks_clear::TASKS_CLEAR_SPEC>;
69#[doc = "Clear RTC counter"]
70pub mod tasks_clear;
71#[doc = "TASKS_TRIGOVRFLW (w) register accessor: an alias for `Reg<TASKS_TRIGOVRFLW_SPEC>`"]
72pub type TASKS_TRIGOVRFLW = crate::Reg<tasks_trigovrflw::TASKS_TRIGOVRFLW_SPEC>;
73#[doc = "Set counter to 0xFFFFF0"]
74pub mod tasks_trigovrflw;
75#[doc = "SUBSCRIBE_START (rw) register accessor: an alias for `Reg<SUBSCRIBE_START_SPEC>`"]
76pub type SUBSCRIBE_START = crate::Reg<subscribe_start::SUBSCRIBE_START_SPEC>;
77#[doc = "Subscribe configuration for task START"]
78pub mod subscribe_start;
79#[doc = "SUBSCRIBE_STOP (rw) register accessor: an alias for `Reg<SUBSCRIBE_STOP_SPEC>`"]
80pub type SUBSCRIBE_STOP = crate::Reg<subscribe_stop::SUBSCRIBE_STOP_SPEC>;
81#[doc = "Subscribe configuration for task STOP"]
82pub mod subscribe_stop;
83#[doc = "SUBSCRIBE_CLEAR (rw) register accessor: an alias for `Reg<SUBSCRIBE_CLEAR_SPEC>`"]
84pub type SUBSCRIBE_CLEAR = crate::Reg<subscribe_clear::SUBSCRIBE_CLEAR_SPEC>;
85#[doc = "Subscribe configuration for task CLEAR"]
86pub mod subscribe_clear;
87#[doc = "SUBSCRIBE_TRIGOVRFLW (rw) register accessor: an alias for `Reg<SUBSCRIBE_TRIGOVRFLW_SPEC>`"]
88pub type SUBSCRIBE_TRIGOVRFLW = crate::Reg<subscribe_trigovrflw::SUBSCRIBE_TRIGOVRFLW_SPEC>;
89#[doc = "Subscribe configuration for task TRIGOVRFLW"]
90pub mod subscribe_trigovrflw;
91#[doc = "EVENTS_TICK (rw) register accessor: an alias for `Reg<EVENTS_TICK_SPEC>`"]
92pub type EVENTS_TICK = crate::Reg<events_tick::EVENTS_TICK_SPEC>;
93#[doc = "Event on counter increment"]
94pub mod events_tick;
95#[doc = "EVENTS_OVRFLW (rw) register accessor: an alias for `Reg<EVENTS_OVRFLW_SPEC>`"]
96pub type EVENTS_OVRFLW = crate::Reg<events_ovrflw::EVENTS_OVRFLW_SPEC>;
97#[doc = "Event on counter overflow"]
98pub mod events_ovrflw;
99#[doc = "EVENTS_COMPARE (rw) register accessor: an alias for `Reg<EVENTS_COMPARE_SPEC>`"]
100pub type EVENTS_COMPARE = crate::Reg<events_compare::EVENTS_COMPARE_SPEC>;
101#[doc = "Description collection: Compare event on CC\\[n\\]
102match"]
103pub mod events_compare;
104#[doc = "PUBLISH_TICK (rw) register accessor: an alias for `Reg<PUBLISH_TICK_SPEC>`"]
105pub type PUBLISH_TICK = crate::Reg<publish_tick::PUBLISH_TICK_SPEC>;
106#[doc = "Publish configuration for event TICK"]
107pub mod publish_tick;
108#[doc = "PUBLISH_OVRFLW (rw) register accessor: an alias for `Reg<PUBLISH_OVRFLW_SPEC>`"]
109pub type PUBLISH_OVRFLW = crate::Reg<publish_ovrflw::PUBLISH_OVRFLW_SPEC>;
110#[doc = "Publish configuration for event OVRFLW"]
111pub mod publish_ovrflw;
112#[doc = "PUBLISH_COMPARE (rw) register accessor: an alias for `Reg<PUBLISH_COMPARE_SPEC>`"]
113pub type PUBLISH_COMPARE = crate::Reg<publish_compare::PUBLISH_COMPARE_SPEC>;
114#[doc = "Description collection: Publish configuration for event COMPARE\\[n\\]"]
115pub mod publish_compare;
116#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
117pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
118#[doc = "Enable interrupt"]
119pub mod intenset;
120#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
121pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
122#[doc = "Disable interrupt"]
123pub mod intenclr;
124#[doc = "EVTEN (rw) register accessor: an alias for `Reg<EVTEN_SPEC>`"]
125pub type EVTEN = crate::Reg<evten::EVTEN_SPEC>;
126#[doc = "Enable or disable event routing"]
127pub mod evten;
128#[doc = "EVTENSET (rw) register accessor: an alias for `Reg<EVTENSET_SPEC>`"]
129pub type EVTENSET = crate::Reg<evtenset::EVTENSET_SPEC>;
130#[doc = "Enable event routing"]
131pub mod evtenset;
132#[doc = "EVTENCLR (rw) register accessor: an alias for `Reg<EVTENCLR_SPEC>`"]
133pub type EVTENCLR = crate::Reg<evtenclr::EVTENCLR_SPEC>;
134#[doc = "Disable event routing"]
135pub mod evtenclr;
136#[doc = "COUNTER (r) register accessor: an alias for `Reg<COUNTER_SPEC>`"]
137pub type COUNTER = crate::Reg<counter::COUNTER_SPEC>;
138#[doc = "Current counter value"]
139pub mod counter;
140#[doc = "PRESCALER (rw) register accessor: an alias for `Reg<PRESCALER_SPEC>`"]
141pub type PRESCALER = crate::Reg<prescaler::PRESCALER_SPEC>;
142#[doc = "12-bit prescaler for counter frequency (32768/(PRESCALER+1)). Must be written when RTC is stopped."]
143pub mod prescaler;
144#[doc = "CC (rw) register accessor: an alias for `Reg<CC_SPEC>`"]
145pub type CC = crate::Reg<cc::CC_SPEC>;
146#[doc = "Description collection: Compare register n"]
147pub mod cc;