nrf5340_app_pac/
uarte0_ns.rs1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Start UART receiver"]
5 pub tasks_startrx: TASKS_STARTRX,
6 #[doc = "0x04 - Stop UART receiver"]
7 pub tasks_stoprx: TASKS_STOPRX,
8 #[doc = "0x08 - Start UART transmitter"]
9 pub tasks_starttx: TASKS_STARTTX,
10 #[doc = "0x0c - Stop UART transmitter"]
11 pub tasks_stoptx: TASKS_STOPTX,
12 _reserved4: [u8; 0x1c],
13 #[doc = "0x2c - Flush RX FIFO into RX buffer"]
14 pub tasks_flushrx: TASKS_FLUSHRX,
15 _reserved5: [u8; 0x50],
16 #[doc = "0x80 - Subscribe configuration for task STARTRX"]
17 pub subscribe_startrx: SUBSCRIBE_STARTRX,
18 #[doc = "0x84 - Subscribe configuration for task STOPRX"]
19 pub subscribe_stoprx: SUBSCRIBE_STOPRX,
20 #[doc = "0x88 - Subscribe configuration for task STARTTX"]
21 pub subscribe_starttx: SUBSCRIBE_STARTTX,
22 #[doc = "0x8c - Subscribe configuration for task STOPTX"]
23 pub subscribe_stoptx: SUBSCRIBE_STOPTX,
24 _reserved9: [u8; 0x1c],
25 #[doc = "0xac - Subscribe configuration for task FLUSHRX"]
26 pub subscribe_flushrx: SUBSCRIBE_FLUSHRX,
27 _reserved10: [u8; 0x50],
28 #[doc = "0x100 - CTS is activated (set low). Clear To Send."]
29 pub events_cts: EVENTS_CTS,
30 #[doc = "0x104 - CTS is deactivated (set high). Not Clear To Send."]
31 pub events_ncts: EVENTS_NCTS,
32 #[doc = "0x108 - Data received in RXD (but potentially not yet transferred to Data RAM)"]
33 pub events_rxdrdy: EVENTS_RXDRDY,
34 _reserved13: [u8; 0x04],
35 #[doc = "0x110 - Receive buffer is filled up"]
36 pub events_endrx: EVENTS_ENDRX,
37 _reserved14: [u8; 0x08],
38 #[doc = "0x11c - Data sent from TXD"]
39 pub events_txdrdy: EVENTS_TXDRDY,
40 #[doc = "0x120 - Last TX byte transmitted"]
41 pub events_endtx: EVENTS_ENDTX,
42 #[doc = "0x124 - Error detected"]
43 pub events_error: EVENTS_ERROR,
44 _reserved17: [u8; 0x1c],
45 #[doc = "0x144 - Receiver timeout"]
46 pub events_rxto: EVENTS_RXTO,
47 _reserved18: [u8; 0x04],
48 #[doc = "0x14c - UART receiver has started"]
49 pub events_rxstarted: EVENTS_RXSTARTED,
50 #[doc = "0x150 - UART transmitter has started"]
51 pub events_txstarted: EVENTS_TXSTARTED,
52 _reserved20: [u8; 0x04],
53 #[doc = "0x158 - Transmitter stopped"]
54 pub events_txstopped: EVENTS_TXSTOPPED,
55 _reserved21: [u8; 0x24],
56 #[doc = "0x180 - Publish configuration for event CTS"]
57 pub publish_cts: PUBLISH_CTS,
58 #[doc = "0x184 - Publish configuration for event NCTS"]
59 pub publish_ncts: PUBLISH_NCTS,
60 #[doc = "0x188 - Publish configuration for event RXDRDY"]
61 pub publish_rxdrdy: PUBLISH_RXDRDY,
62 _reserved24: [u8; 0x04],
63 #[doc = "0x190 - Publish configuration for event ENDRX"]
64 pub publish_endrx: PUBLISH_ENDRX,
65 _reserved25: [u8; 0x08],
66 #[doc = "0x19c - Publish configuration for event TXDRDY"]
67 pub publish_txdrdy: PUBLISH_TXDRDY,
68 #[doc = "0x1a0 - Publish configuration for event ENDTX"]
69 pub publish_endtx: PUBLISH_ENDTX,
70 #[doc = "0x1a4 - Publish configuration for event ERROR"]
71 pub publish_error: PUBLISH_ERROR,
72 _reserved28: [u8; 0x1c],
73 #[doc = "0x1c4 - Publish configuration for event RXTO"]
74 pub publish_rxto: PUBLISH_RXTO,
75 _reserved29: [u8; 0x04],
76 #[doc = "0x1cc - Publish configuration for event RXSTARTED"]
77 pub publish_rxstarted: PUBLISH_RXSTARTED,
78 #[doc = "0x1d0 - Publish configuration for event TXSTARTED"]
79 pub publish_txstarted: PUBLISH_TXSTARTED,
80 _reserved31: [u8; 0x04],
81 #[doc = "0x1d8 - Publish configuration for event TXSTOPPED"]
82 pub publish_txstopped: PUBLISH_TXSTOPPED,
83 _reserved32: [u8; 0x24],
84 #[doc = "0x200 - Shortcuts between local events and tasks"]
85 pub shorts: SHORTS,
86 _reserved33: [u8; 0xfc],
87 #[doc = "0x300 - Enable or disable interrupt"]
88 pub inten: INTEN,
89 #[doc = "0x304 - Enable interrupt"]
90 pub intenset: INTENSET,
91 #[doc = "0x308 - Disable interrupt"]
92 pub intenclr: INTENCLR,
93 _reserved36: [u8; 0x0174],
94 #[doc = "0x480 - Error source"]
95 pub errorsrc: ERRORSRC,
96 _reserved37: [u8; 0x7c],
97 #[doc = "0x500 - Enable UART"]
98 pub enable: ENABLE,
99 _reserved38: [u8; 0x04],
100 #[doc = "0x508..0x518 - Unspecified"]
101 pub psel: PSEL,
102 _reserved39: [u8; 0x0c],
103 #[doc = "0x524 - Baud rate. Accuracy depends on the HFCLK source selected."]
104 pub baudrate: BAUDRATE,
105 _reserved40: [u8; 0x0c],
106 #[doc = "0x534..0x540 - RXD EasyDMA channel"]
107 pub rxd: RXD,
108 _reserved41: [u8; 0x04],
109 #[doc = "0x544..0x550 - TXD EasyDMA channel"]
110 pub txd: TXD,
111 _reserved42: [u8; 0x1c],
112 #[doc = "0x56c - Configuration of parity and hardware flow control"]
113 pub config: CONFIG,
114}
115#[doc = "TASKS_STARTRX (w) register accessor: an alias for `Reg<TASKS_STARTRX_SPEC>`"]
116pub type TASKS_STARTRX = crate::Reg<tasks_startrx::TASKS_STARTRX_SPEC>;
117#[doc = "Start UART receiver"]
118pub mod tasks_startrx;
119#[doc = "TASKS_STOPRX (w) register accessor: an alias for `Reg<TASKS_STOPRX_SPEC>`"]
120pub type TASKS_STOPRX = crate::Reg<tasks_stoprx::TASKS_STOPRX_SPEC>;
121#[doc = "Stop UART receiver"]
122pub mod tasks_stoprx;
123#[doc = "TASKS_STARTTX (w) register accessor: an alias for `Reg<TASKS_STARTTX_SPEC>`"]
124pub type TASKS_STARTTX = crate::Reg<tasks_starttx::TASKS_STARTTX_SPEC>;
125#[doc = "Start UART transmitter"]
126pub mod tasks_starttx;
127#[doc = "TASKS_STOPTX (w) register accessor: an alias for `Reg<TASKS_STOPTX_SPEC>`"]
128pub type TASKS_STOPTX = crate::Reg<tasks_stoptx::TASKS_STOPTX_SPEC>;
129#[doc = "Stop UART transmitter"]
130pub mod tasks_stoptx;
131#[doc = "TASKS_FLUSHRX (w) register accessor: an alias for `Reg<TASKS_FLUSHRX_SPEC>`"]
132pub type TASKS_FLUSHRX = crate::Reg<tasks_flushrx::TASKS_FLUSHRX_SPEC>;
133#[doc = "Flush RX FIFO into RX buffer"]
134pub mod tasks_flushrx;
135#[doc = "SUBSCRIBE_STARTRX (rw) register accessor: an alias for `Reg<SUBSCRIBE_STARTRX_SPEC>`"]
136pub type SUBSCRIBE_STARTRX = crate::Reg<subscribe_startrx::SUBSCRIBE_STARTRX_SPEC>;
137#[doc = "Subscribe configuration for task STARTRX"]
138pub mod subscribe_startrx;
139#[doc = "SUBSCRIBE_STOPRX (rw) register accessor: an alias for `Reg<SUBSCRIBE_STOPRX_SPEC>`"]
140pub type SUBSCRIBE_STOPRX = crate::Reg<subscribe_stoprx::SUBSCRIBE_STOPRX_SPEC>;
141#[doc = "Subscribe configuration for task STOPRX"]
142pub mod subscribe_stoprx;
143#[doc = "SUBSCRIBE_STARTTX (rw) register accessor: an alias for `Reg<SUBSCRIBE_STARTTX_SPEC>`"]
144pub type SUBSCRIBE_STARTTX = crate::Reg<subscribe_starttx::SUBSCRIBE_STARTTX_SPEC>;
145#[doc = "Subscribe configuration for task STARTTX"]
146pub mod subscribe_starttx;
147#[doc = "SUBSCRIBE_STOPTX (rw) register accessor: an alias for `Reg<SUBSCRIBE_STOPTX_SPEC>`"]
148pub type SUBSCRIBE_STOPTX = crate::Reg<subscribe_stoptx::SUBSCRIBE_STOPTX_SPEC>;
149#[doc = "Subscribe configuration for task STOPTX"]
150pub mod subscribe_stoptx;
151#[doc = "SUBSCRIBE_FLUSHRX (rw) register accessor: an alias for `Reg<SUBSCRIBE_FLUSHRX_SPEC>`"]
152pub type SUBSCRIBE_FLUSHRX = crate::Reg<subscribe_flushrx::SUBSCRIBE_FLUSHRX_SPEC>;
153#[doc = "Subscribe configuration for task FLUSHRX"]
154pub mod subscribe_flushrx;
155#[doc = "EVENTS_CTS (rw) register accessor: an alias for `Reg<EVENTS_CTS_SPEC>`"]
156pub type EVENTS_CTS = crate::Reg<events_cts::EVENTS_CTS_SPEC>;
157#[doc = "CTS is activated (set low). Clear To Send."]
158pub mod events_cts;
159#[doc = "EVENTS_NCTS (rw) register accessor: an alias for `Reg<EVENTS_NCTS_SPEC>`"]
160pub type EVENTS_NCTS = crate::Reg<events_ncts::EVENTS_NCTS_SPEC>;
161#[doc = "CTS is deactivated (set high). Not Clear To Send."]
162pub mod events_ncts;
163#[doc = "EVENTS_RXDRDY (rw) register accessor: an alias for `Reg<EVENTS_RXDRDY_SPEC>`"]
164pub type EVENTS_RXDRDY = crate::Reg<events_rxdrdy::EVENTS_RXDRDY_SPEC>;
165#[doc = "Data received in RXD (but potentially not yet transferred to Data RAM)"]
166pub mod events_rxdrdy;
167#[doc = "EVENTS_ENDRX (rw) register accessor: an alias for `Reg<EVENTS_ENDRX_SPEC>`"]
168pub type EVENTS_ENDRX = crate::Reg<events_endrx::EVENTS_ENDRX_SPEC>;
169#[doc = "Receive buffer is filled up"]
170pub mod events_endrx;
171#[doc = "EVENTS_TXDRDY (rw) register accessor: an alias for `Reg<EVENTS_TXDRDY_SPEC>`"]
172pub type EVENTS_TXDRDY = crate::Reg<events_txdrdy::EVENTS_TXDRDY_SPEC>;
173#[doc = "Data sent from TXD"]
174pub mod events_txdrdy;
175#[doc = "EVENTS_ENDTX (rw) register accessor: an alias for `Reg<EVENTS_ENDTX_SPEC>`"]
176pub type EVENTS_ENDTX = crate::Reg<events_endtx::EVENTS_ENDTX_SPEC>;
177#[doc = "Last TX byte transmitted"]
178pub mod events_endtx;
179#[doc = "EVENTS_ERROR (rw) register accessor: an alias for `Reg<EVENTS_ERROR_SPEC>`"]
180pub type EVENTS_ERROR = crate::Reg<events_error::EVENTS_ERROR_SPEC>;
181#[doc = "Error detected"]
182pub mod events_error;
183#[doc = "EVENTS_RXTO (rw) register accessor: an alias for `Reg<EVENTS_RXTO_SPEC>`"]
184pub type EVENTS_RXTO = crate::Reg<events_rxto::EVENTS_RXTO_SPEC>;
185#[doc = "Receiver timeout"]
186pub mod events_rxto;
187#[doc = "EVENTS_RXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_RXSTARTED_SPEC>`"]
188pub type EVENTS_RXSTARTED = crate::Reg<events_rxstarted::EVENTS_RXSTARTED_SPEC>;
189#[doc = "UART receiver has started"]
190pub mod events_rxstarted;
191#[doc = "EVENTS_TXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_TXSTARTED_SPEC>`"]
192pub type EVENTS_TXSTARTED = crate::Reg<events_txstarted::EVENTS_TXSTARTED_SPEC>;
193#[doc = "UART transmitter has started"]
194pub mod events_txstarted;
195#[doc = "EVENTS_TXSTOPPED (rw) register accessor: an alias for `Reg<EVENTS_TXSTOPPED_SPEC>`"]
196pub type EVENTS_TXSTOPPED = crate::Reg<events_txstopped::EVENTS_TXSTOPPED_SPEC>;
197#[doc = "Transmitter stopped"]
198pub mod events_txstopped;
199#[doc = "PUBLISH_CTS (rw) register accessor: an alias for `Reg<PUBLISH_CTS_SPEC>`"]
200pub type PUBLISH_CTS = crate::Reg<publish_cts::PUBLISH_CTS_SPEC>;
201#[doc = "Publish configuration for event CTS"]
202pub mod publish_cts;
203#[doc = "PUBLISH_NCTS (rw) register accessor: an alias for `Reg<PUBLISH_NCTS_SPEC>`"]
204pub type PUBLISH_NCTS = crate::Reg<publish_ncts::PUBLISH_NCTS_SPEC>;
205#[doc = "Publish configuration for event NCTS"]
206pub mod publish_ncts;
207#[doc = "PUBLISH_RXDRDY (rw) register accessor: an alias for `Reg<PUBLISH_RXDRDY_SPEC>`"]
208pub type PUBLISH_RXDRDY = crate::Reg<publish_rxdrdy::PUBLISH_RXDRDY_SPEC>;
209#[doc = "Publish configuration for event RXDRDY"]
210pub mod publish_rxdrdy;
211#[doc = "PUBLISH_ENDRX (rw) register accessor: an alias for `Reg<PUBLISH_ENDRX_SPEC>`"]
212pub type PUBLISH_ENDRX = crate::Reg<publish_endrx::PUBLISH_ENDRX_SPEC>;
213#[doc = "Publish configuration for event ENDRX"]
214pub mod publish_endrx;
215#[doc = "PUBLISH_TXDRDY (rw) register accessor: an alias for `Reg<PUBLISH_TXDRDY_SPEC>`"]
216pub type PUBLISH_TXDRDY = crate::Reg<publish_txdrdy::PUBLISH_TXDRDY_SPEC>;
217#[doc = "Publish configuration for event TXDRDY"]
218pub mod publish_txdrdy;
219#[doc = "PUBLISH_ENDTX (rw) register accessor: an alias for `Reg<PUBLISH_ENDTX_SPEC>`"]
220pub type PUBLISH_ENDTX = crate::Reg<publish_endtx::PUBLISH_ENDTX_SPEC>;
221#[doc = "Publish configuration for event ENDTX"]
222pub mod publish_endtx;
223#[doc = "PUBLISH_ERROR (rw) register accessor: an alias for `Reg<PUBLISH_ERROR_SPEC>`"]
224pub type PUBLISH_ERROR = crate::Reg<publish_error::PUBLISH_ERROR_SPEC>;
225#[doc = "Publish configuration for event ERROR"]
226pub mod publish_error;
227#[doc = "PUBLISH_RXTO (rw) register accessor: an alias for `Reg<PUBLISH_RXTO_SPEC>`"]
228pub type PUBLISH_RXTO = crate::Reg<publish_rxto::PUBLISH_RXTO_SPEC>;
229#[doc = "Publish configuration for event RXTO"]
230pub mod publish_rxto;
231#[doc = "PUBLISH_RXSTARTED (rw) register accessor: an alias for `Reg<PUBLISH_RXSTARTED_SPEC>`"]
232pub type PUBLISH_RXSTARTED = crate::Reg<publish_rxstarted::PUBLISH_RXSTARTED_SPEC>;
233#[doc = "Publish configuration for event RXSTARTED"]
234pub mod publish_rxstarted;
235#[doc = "PUBLISH_TXSTARTED (rw) register accessor: an alias for `Reg<PUBLISH_TXSTARTED_SPEC>`"]
236pub type PUBLISH_TXSTARTED = crate::Reg<publish_txstarted::PUBLISH_TXSTARTED_SPEC>;
237#[doc = "Publish configuration for event TXSTARTED"]
238pub mod publish_txstarted;
239#[doc = "PUBLISH_TXSTOPPED (rw) register accessor: an alias for `Reg<PUBLISH_TXSTOPPED_SPEC>`"]
240pub type PUBLISH_TXSTOPPED = crate::Reg<publish_txstopped::PUBLISH_TXSTOPPED_SPEC>;
241#[doc = "Publish configuration for event TXSTOPPED"]
242pub mod publish_txstopped;
243#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
244pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
245#[doc = "Shortcuts between local events and tasks"]
246pub mod shorts;
247#[doc = "INTEN (rw) register accessor: an alias for `Reg<INTEN_SPEC>`"]
248pub type INTEN = crate::Reg<inten::INTEN_SPEC>;
249#[doc = "Enable or disable interrupt"]
250pub mod inten;
251#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
252pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
253#[doc = "Enable interrupt"]
254pub mod intenset;
255#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
256pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
257#[doc = "Disable interrupt"]
258pub mod intenclr;
259#[doc = "ERRORSRC (rw) register accessor: an alias for `Reg<ERRORSRC_SPEC>`"]
260pub type ERRORSRC = crate::Reg<errorsrc::ERRORSRC_SPEC>;
261#[doc = "Error source"]
262pub mod errorsrc;
263#[doc = "ENABLE (rw) register accessor: an alias for `Reg<ENABLE_SPEC>`"]
264pub type ENABLE = crate::Reg<enable::ENABLE_SPEC>;
265#[doc = "Enable UART"]
266pub mod enable;
267#[doc = "Unspecified"]
268pub use psel::PSEL;
269#[doc = r"Cluster"]
270#[doc = "Unspecified"]
271pub mod psel;
272#[doc = "BAUDRATE (rw) register accessor: an alias for `Reg<BAUDRATE_SPEC>`"]
273pub type BAUDRATE = crate::Reg<baudrate::BAUDRATE_SPEC>;
274#[doc = "Baud rate. Accuracy depends on the HFCLK source selected."]
275pub mod baudrate;
276#[doc = "RXD EasyDMA channel"]
277pub use rxd::RXD;
278#[doc = r"Cluster"]
279#[doc = "RXD EasyDMA channel"]
280pub mod rxd;
281#[doc = "TXD EasyDMA channel"]
282pub use txd::TXD;
283#[doc = r"Cluster"]
284#[doc = "TXD EasyDMA channel"]
285pub mod txd;
286#[doc = "CONFIG (rw) register accessor: an alias for `Reg<CONFIG_SPEC>`"]
287pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
288#[doc = "Configuration of parity and hardware flow control"]
289pub mod config;