nrf52840_pac/
uarte0.rs
1#[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; 0xd0],
16 #[doc = "0x100 - CTS is activated (set low). Clear To Send."]
17 pub events_cts: EVENTS_CTS,
18 #[doc = "0x104 - CTS is deactivated (set high). Not Clear To Send."]
19 pub events_ncts: EVENTS_NCTS,
20 #[doc = "0x108 - Data received in RXD (but potentially not yet transferred to Data RAM)"]
21 pub events_rxdrdy: EVENTS_RXDRDY,
22 _reserved8: [u8; 0x04],
23 #[doc = "0x110 - Receive buffer is filled up"]
24 pub events_endrx: EVENTS_ENDRX,
25 _reserved9: [u8; 0x08],
26 #[doc = "0x11c - Data sent from TXD"]
27 pub events_txdrdy: EVENTS_TXDRDY,
28 #[doc = "0x120 - Last TX byte transmitted"]
29 pub events_endtx: EVENTS_ENDTX,
30 #[doc = "0x124 - Error detected"]
31 pub events_error: EVENTS_ERROR,
32 _reserved12: [u8; 0x1c],
33 #[doc = "0x144 - Receiver timeout"]
34 pub events_rxto: EVENTS_RXTO,
35 _reserved13: [u8; 0x04],
36 #[doc = "0x14c - UART receiver has started"]
37 pub events_rxstarted: EVENTS_RXSTARTED,
38 #[doc = "0x150 - UART transmitter has started"]
39 pub events_txstarted: EVENTS_TXSTARTED,
40 _reserved15: [u8; 0x04],
41 #[doc = "0x158 - Transmitter stopped"]
42 pub events_txstopped: EVENTS_TXSTOPPED,
43 _reserved16: [u8; 0xa4],
44 #[doc = "0x200 - Shortcut register"]
45 pub shorts: SHORTS,
46 _reserved17: [u8; 0xfc],
47 #[doc = "0x300 - Enable or disable interrupt"]
48 pub inten: INTEN,
49 #[doc = "0x304 - Enable interrupt"]
50 pub intenset: INTENSET,
51 #[doc = "0x308 - Disable interrupt"]
52 pub intenclr: INTENCLR,
53 _reserved20: [u8; 0x0174],
54 #[doc = "0x480 - Error source Note : this register is read / write one to clear."]
55 pub errorsrc: ERRORSRC,
56 _reserved21: [u8; 0x7c],
57 #[doc = "0x500 - Enable UART"]
58 pub enable: ENABLE,
59 _reserved22: [u8; 0x04],
60 #[doc = "0x508..0x518 - Unspecified"]
61 pub psel: PSEL,
62 _reserved23: [u8; 0x0c],
63 #[doc = "0x524 - Baud rate. Accuracy depends on the HFCLK source selected."]
64 pub baudrate: BAUDRATE,
65 _reserved24: [u8; 0x0c],
66 #[doc = "0x534..0x540 - RXD EasyDMA channel"]
67 pub rxd: RXD,
68 _reserved25: [u8; 0x04],
69 #[doc = "0x544..0x550 - TXD EasyDMA channel"]
70 pub txd: TXD,
71 _reserved26: [u8; 0x1c],
72 #[doc = "0x56c - Configuration of parity and hardware flow control"]
73 pub config: CONFIG,
74}
75#[doc = "TASKS_STARTRX (w) register accessor: an alias for `Reg<TASKS_STARTRX_SPEC>`"]
76pub type TASKS_STARTRX = crate::Reg<tasks_startrx::TASKS_STARTRX_SPEC>;
77#[doc = "Start UART receiver"]
78pub mod tasks_startrx;
79#[doc = "TASKS_STOPRX (w) register accessor: an alias for `Reg<TASKS_STOPRX_SPEC>`"]
80pub type TASKS_STOPRX = crate::Reg<tasks_stoprx::TASKS_STOPRX_SPEC>;
81#[doc = "Stop UART receiver"]
82pub mod tasks_stoprx;
83#[doc = "TASKS_STARTTX (w) register accessor: an alias for `Reg<TASKS_STARTTX_SPEC>`"]
84pub type TASKS_STARTTX = crate::Reg<tasks_starttx::TASKS_STARTTX_SPEC>;
85#[doc = "Start UART transmitter"]
86pub mod tasks_starttx;
87#[doc = "TASKS_STOPTX (w) register accessor: an alias for `Reg<TASKS_STOPTX_SPEC>`"]
88pub type TASKS_STOPTX = crate::Reg<tasks_stoptx::TASKS_STOPTX_SPEC>;
89#[doc = "Stop UART transmitter"]
90pub mod tasks_stoptx;
91#[doc = "TASKS_FLUSHRX (w) register accessor: an alias for `Reg<TASKS_FLUSHRX_SPEC>`"]
92pub type TASKS_FLUSHRX = crate::Reg<tasks_flushrx::TASKS_FLUSHRX_SPEC>;
93#[doc = "Flush RX FIFO into RX buffer"]
94pub mod tasks_flushrx;
95#[doc = "EVENTS_CTS (rw) register accessor: an alias for `Reg<EVENTS_CTS_SPEC>`"]
96pub type EVENTS_CTS = crate::Reg<events_cts::EVENTS_CTS_SPEC>;
97#[doc = "CTS is activated (set low). Clear To Send."]
98pub mod events_cts;
99#[doc = "EVENTS_NCTS (rw) register accessor: an alias for `Reg<EVENTS_NCTS_SPEC>`"]
100pub type EVENTS_NCTS = crate::Reg<events_ncts::EVENTS_NCTS_SPEC>;
101#[doc = "CTS is deactivated (set high). Not Clear To Send."]
102pub mod events_ncts;
103#[doc = "EVENTS_RXDRDY (rw) register accessor: an alias for `Reg<EVENTS_RXDRDY_SPEC>`"]
104pub type EVENTS_RXDRDY = crate::Reg<events_rxdrdy::EVENTS_RXDRDY_SPEC>;
105#[doc = "Data received in RXD (but potentially not yet transferred to Data RAM)"]
106pub mod events_rxdrdy;
107#[doc = "EVENTS_ENDRX (rw) register accessor: an alias for `Reg<EVENTS_ENDRX_SPEC>`"]
108pub type EVENTS_ENDRX = crate::Reg<events_endrx::EVENTS_ENDRX_SPEC>;
109#[doc = "Receive buffer is filled up"]
110pub mod events_endrx;
111#[doc = "EVENTS_TXDRDY (rw) register accessor: an alias for `Reg<EVENTS_TXDRDY_SPEC>`"]
112pub type EVENTS_TXDRDY = crate::Reg<events_txdrdy::EVENTS_TXDRDY_SPEC>;
113#[doc = "Data sent from TXD"]
114pub mod events_txdrdy;
115#[doc = "EVENTS_ENDTX (rw) register accessor: an alias for `Reg<EVENTS_ENDTX_SPEC>`"]
116pub type EVENTS_ENDTX = crate::Reg<events_endtx::EVENTS_ENDTX_SPEC>;
117#[doc = "Last TX byte transmitted"]
118pub mod events_endtx;
119#[doc = "EVENTS_ERROR (rw) register accessor: an alias for `Reg<EVENTS_ERROR_SPEC>`"]
120pub type EVENTS_ERROR = crate::Reg<events_error::EVENTS_ERROR_SPEC>;
121#[doc = "Error detected"]
122pub mod events_error;
123#[doc = "EVENTS_RXTO (rw) register accessor: an alias for `Reg<EVENTS_RXTO_SPEC>`"]
124pub type EVENTS_RXTO = crate::Reg<events_rxto::EVENTS_RXTO_SPEC>;
125#[doc = "Receiver timeout"]
126pub mod events_rxto;
127#[doc = "EVENTS_RXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_RXSTARTED_SPEC>`"]
128pub type EVENTS_RXSTARTED = crate::Reg<events_rxstarted::EVENTS_RXSTARTED_SPEC>;
129#[doc = "UART receiver has started"]
130pub mod events_rxstarted;
131#[doc = "EVENTS_TXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_TXSTARTED_SPEC>`"]
132pub type EVENTS_TXSTARTED = crate::Reg<events_txstarted::EVENTS_TXSTARTED_SPEC>;
133#[doc = "UART transmitter has started"]
134pub mod events_txstarted;
135#[doc = "EVENTS_TXSTOPPED (rw) register accessor: an alias for `Reg<EVENTS_TXSTOPPED_SPEC>`"]
136pub type EVENTS_TXSTOPPED = crate::Reg<events_txstopped::EVENTS_TXSTOPPED_SPEC>;
137#[doc = "Transmitter stopped"]
138pub mod events_txstopped;
139#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
140pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
141#[doc = "Shortcut register"]
142pub mod shorts;
143#[doc = "INTEN (rw) register accessor: an alias for `Reg<INTEN_SPEC>`"]
144pub type INTEN = crate::Reg<inten::INTEN_SPEC>;
145#[doc = "Enable or disable interrupt"]
146pub mod inten;
147#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
148pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
149#[doc = "Enable interrupt"]
150pub mod intenset;
151#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
152pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
153#[doc = "Disable interrupt"]
154pub mod intenclr;
155#[doc = "ERRORSRC (rw) register accessor: an alias for `Reg<ERRORSRC_SPEC>`"]
156pub type ERRORSRC = crate::Reg<errorsrc::ERRORSRC_SPEC>;
157#[doc = "Error source Note : this register is read / write one to clear."]
158pub mod errorsrc;
159#[doc = "ENABLE (rw) register accessor: an alias for `Reg<ENABLE_SPEC>`"]
160pub type ENABLE = crate::Reg<enable::ENABLE_SPEC>;
161#[doc = "Enable UART"]
162pub mod enable;
163#[doc = "Unspecified"]
164pub use psel::PSEL;
165#[doc = r"Cluster"]
166#[doc = "Unspecified"]
167pub mod psel;
168#[doc = "BAUDRATE (rw) register accessor: an alias for `Reg<BAUDRATE_SPEC>`"]
169pub type BAUDRATE = crate::Reg<baudrate::BAUDRATE_SPEC>;
170#[doc = "Baud rate. Accuracy depends on the HFCLK source selected."]
171pub mod baudrate;
172#[doc = "RXD EasyDMA channel"]
173pub use rxd::RXD;
174#[doc = r"Cluster"]
175#[doc = "RXD EasyDMA channel"]
176pub mod rxd;
177#[doc = "TXD EasyDMA channel"]
178pub use txd::TXD;
179#[doc = r"Cluster"]
180#[doc = "TXD EasyDMA channel"]
181pub mod txd;
182#[doc = "CONFIG (rw) register accessor: an alias for `Reg<CONFIG_SPEC>`"]
183pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
184#[doc = "Configuration of parity and hardware flow control"]
185pub mod config;