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; 0x0c],
13 #[doc = "0x1c - Suspend UART."]
14 pub tasks_suspend: TASKS_SUSPEND,
15 _reserved5: [u8; 0xe0],
16 #[doc = "0x100 - CTS activated."]
17 pub events_cts: EVENTS_CTS,
18 #[doc = "0x104 - CTS deactivated."]
19 pub events_ncts: EVENTS_NCTS,
20 #[doc = "0x108 - Data received in RXD."]
21 pub events_rxdrdy: EVENTS_RXDRDY,
22 _reserved8: [u8; 0x10],
23 #[doc = "0x11c - Data sent from TXD."]
24 pub events_txdrdy: EVENTS_TXDRDY,
25 _reserved9: [u8; 0x04],
26 #[doc = "0x124 - Error detected."]
27 pub events_error: EVENTS_ERROR,
28 _reserved10: [u8; 0x1c],
29 #[doc = "0x144 - Receiver timeout."]
30 pub events_rxto: EVENTS_RXTO,
31 _reserved11: [u8; 0xb8],
32 #[doc = "0x200 - Shortcuts for UART."]
33 pub shorts: SHORTS,
34 _reserved12: [u8; 0x0100],
35 #[doc = "0x304 - Interrupt enable set register."]
36 pub intenset: INTENSET,
37 #[doc = "0x308 - Interrupt enable clear register."]
38 pub intenclr: INTENCLR,
39 _reserved14: [u8; 0x0174],
40 #[doc = "0x480 - Error source. Write error field to 1 to clear error."]
41 pub errorsrc: ERRORSRC,
42 _reserved15: [u8; 0x7c],
43 #[doc = "0x500 - Enable UART and acquire IOs."]
44 pub enable: ENABLE,
45 _reserved16: [u8; 0x04],
46 #[doc = "0x508 - Pin select for RTS."]
47 pub pselrts: PSELRTS,
48 #[doc = "0x50c - Pin select for TXD."]
49 pub pseltxd: PSELTXD,
50 #[doc = "0x510 - Pin select for CTS."]
51 pub pselcts: PSELCTS,
52 #[doc = "0x514 - Pin select for RXD."]
53 pub pselrxd: PSELRXD,
54 #[doc = "0x518 - RXD register. On read action the buffer pointer is displaced. Once read the character is consumed. If read when no character available, the UART will stop working."]
55 pub rxd: RXD,
56 #[doc = "0x51c - TXD register."]
57 pub txd: TXD,
58 _reserved22: [u8; 0x04],
59 #[doc = "0x524 - UART Baudrate."]
60 pub baudrate: BAUDRATE,
61 _reserved23: [u8; 0x44],
62 #[doc = "0x56c - Configuration of parity and hardware flow control register."]
63 pub config: CONFIG,
64 _reserved24: [u8; 0x0a8c],
65 #[doc = "0xffc - Peripheral power control."]
66 pub power: POWER,
67}
68#[doc = "TASKS_STARTRX (w) register accessor: an alias for `Reg<TASKS_STARTRX_SPEC>`"]
69pub type TASKS_STARTRX = crate::Reg<tasks_startrx::TASKS_STARTRX_SPEC>;
70#[doc = "Start UART receiver."]
71pub mod tasks_startrx;
72#[doc = "TASKS_STOPRX (w) register accessor: an alias for `Reg<TASKS_STOPRX_SPEC>`"]
73pub type TASKS_STOPRX = crate::Reg<tasks_stoprx::TASKS_STOPRX_SPEC>;
74#[doc = "Stop UART receiver."]
75pub mod tasks_stoprx;
76#[doc = "TASKS_STARTTX (w) register accessor: an alias for `Reg<TASKS_STARTTX_SPEC>`"]
77pub type TASKS_STARTTX = crate::Reg<tasks_starttx::TASKS_STARTTX_SPEC>;
78#[doc = "Start UART transmitter."]
79pub mod tasks_starttx;
80#[doc = "TASKS_STOPTX (w) register accessor: an alias for `Reg<TASKS_STOPTX_SPEC>`"]
81pub type TASKS_STOPTX = crate::Reg<tasks_stoptx::TASKS_STOPTX_SPEC>;
82#[doc = "Stop UART transmitter."]
83pub mod tasks_stoptx;
84#[doc = "TASKS_SUSPEND (w) register accessor: an alias for `Reg<TASKS_SUSPEND_SPEC>`"]
85pub type TASKS_SUSPEND = crate::Reg<tasks_suspend::TASKS_SUSPEND_SPEC>;
86#[doc = "Suspend UART."]
87pub mod tasks_suspend;
88#[doc = "EVENTS_CTS (rw) register accessor: an alias for `Reg<EVENTS_CTS_SPEC>`"]
89pub type EVENTS_CTS = crate::Reg<events_cts::EVENTS_CTS_SPEC>;
90#[doc = "CTS activated."]
91pub mod events_cts;
92#[doc = "EVENTS_NCTS (rw) register accessor: an alias for `Reg<EVENTS_NCTS_SPEC>`"]
93pub type EVENTS_NCTS = crate::Reg<events_ncts::EVENTS_NCTS_SPEC>;
94#[doc = "CTS deactivated."]
95pub mod events_ncts;
96#[doc = "EVENTS_RXDRDY (rw) register accessor: an alias for `Reg<EVENTS_RXDRDY_SPEC>`"]
97pub type EVENTS_RXDRDY = crate::Reg<events_rxdrdy::EVENTS_RXDRDY_SPEC>;
98#[doc = "Data received in RXD."]
99pub mod events_rxdrdy;
100#[doc = "EVENTS_TXDRDY (rw) register accessor: an alias for `Reg<EVENTS_TXDRDY_SPEC>`"]
101pub type EVENTS_TXDRDY = crate::Reg<events_txdrdy::EVENTS_TXDRDY_SPEC>;
102#[doc = "Data sent from TXD."]
103pub mod events_txdrdy;
104#[doc = "EVENTS_ERROR (rw) register accessor: an alias for `Reg<EVENTS_ERROR_SPEC>`"]
105pub type EVENTS_ERROR = crate::Reg<events_error::EVENTS_ERROR_SPEC>;
106#[doc = "Error detected."]
107pub mod events_error;
108#[doc = "EVENTS_RXTO (rw) register accessor: an alias for `Reg<EVENTS_RXTO_SPEC>`"]
109pub type EVENTS_RXTO = crate::Reg<events_rxto::EVENTS_RXTO_SPEC>;
110#[doc = "Receiver timeout."]
111pub mod events_rxto;
112#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
113pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
114#[doc = "Shortcuts for UART."]
115pub mod shorts;
116#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
117pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
118#[doc = "Interrupt enable set register."]
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 = "Interrupt enable clear register."]
123pub mod intenclr;
124#[doc = "ERRORSRC (rw) register accessor: an alias for `Reg<ERRORSRC_SPEC>`"]
125pub type ERRORSRC = crate::Reg<errorsrc::ERRORSRC_SPEC>;
126#[doc = "Error source. Write error field to 1 to clear error."]
127pub mod errorsrc;
128#[doc = "ENABLE (rw) register accessor: an alias for `Reg<ENABLE_SPEC>`"]
129pub type ENABLE = crate::Reg<enable::ENABLE_SPEC>;
130#[doc = "Enable UART and acquire IOs."]
131pub mod enable;
132#[doc = "PSELRTS (rw) register accessor: an alias for `Reg<PSELRTS_SPEC>`"]
133pub type PSELRTS = crate::Reg<pselrts::PSELRTS_SPEC>;
134#[doc = "Pin select for RTS."]
135pub mod pselrts;
136#[doc = "PSELTXD (rw) register accessor: an alias for `Reg<PSELTXD_SPEC>`"]
137pub type PSELTXD = crate::Reg<pseltxd::PSELTXD_SPEC>;
138#[doc = "Pin select for TXD."]
139pub mod pseltxd;
140#[doc = "PSELCTS (rw) register accessor: an alias for `Reg<PSELCTS_SPEC>`"]
141pub type PSELCTS = crate::Reg<pselcts::PSELCTS_SPEC>;
142#[doc = "Pin select for CTS."]
143pub mod pselcts;
144#[doc = "PSELRXD (rw) register accessor: an alias for `Reg<PSELRXD_SPEC>`"]
145pub type PSELRXD = crate::Reg<pselrxd::PSELRXD_SPEC>;
146#[doc = "Pin select for RXD."]
147pub mod pselrxd;
148#[doc = "RXD (r) register accessor: an alias for `Reg<RXD_SPEC>`"]
149pub type RXD = crate::Reg<rxd::RXD_SPEC>;
150#[doc = "RXD register. On read action the buffer pointer is displaced. Once read the character is consumed. If read when no character available, the UART will stop working."]
151pub mod rxd;
152#[doc = "TXD (w) register accessor: an alias for `Reg<TXD_SPEC>`"]
153pub type TXD = crate::Reg<txd::TXD_SPEC>;
154#[doc = "TXD register."]
155pub mod txd;
156#[doc = "BAUDRATE (rw) register accessor: an alias for `Reg<BAUDRATE_SPEC>`"]
157pub type BAUDRATE = crate::Reg<baudrate::BAUDRATE_SPEC>;
158#[doc = "UART Baudrate."]
159pub mod baudrate;
160#[doc = "CONFIG (rw) register accessor: an alias for `Reg<CONFIG_SPEC>`"]
161pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
162#[doc = "Configuration of parity and hardware flow control register."]
163pub mod config;
164#[doc = "POWER (rw) register accessor: an alias for `Reg<POWER_SPEC>`"]
165pub type POWER = crate::Reg<power::POWER_SPEC>;
166#[doc = "Peripheral power control."]
167pub mod power;