nrf91/
rtc0_ns.rs

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;