1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Transmit configuration register"]
5 pub transmit_config: TRANSMIT_CONFIG,
6 #[doc = "0x04 - Receive configuration register"]
7 pub receive_config: RECEIVE_CONFIG,
8 #[doc = "0x08 - Bit period control register"]
9 pub bit_period: BIT_PERIOD,
10 #[doc = "0x0c - Data configuration register"]
11 pub data_config: DATA_CONFIG,
12 #[doc = "0x10 - IR-mode transmit position control"]
13 pub transmit_position: TRANSMIT_POSITION,
14 #[doc = "0x14 - IR-mode receive position control"]
15 pub receive_position: RECEIVE_POSITION,
16 #[doc = "0x18 - Receive Time-Out interrupt control"]
17 pub receive_timeout: RECEIVE_TIMEOUT,
18 #[doc = "0x1c - Manual override of flow control signal"]
19 pub signal_override: SIGNAL_OVERRIDE,
20 #[doc = "0x20 - Interrupt state register"]
21 pub interrupt_state: INTERRUPT_STATE,
22 #[doc = "0x24 - Interrupt mask register"]
23 pub interrupt_mask: INTERRUPT_MASK,
24 #[doc = "0x28 - Clear interrupt register"]
25 pub interrupt_clear: INTERRUPT_CLEAR,
26 #[doc = "0x2c - Interrupt enable register"]
27 pub interrupt_enable: INTERRUPT_ENABLE,
28 #[doc = "0x30 - Bus state register"]
29 pub bus_state: BUS_STATE,
30 #[doc = "0x34 - Auto baudrate detection register"]
31 pub auto_baudrate: AUTO_BAUDRATE,
32 _reserved14: [u8; 0x48],
33 #[doc = "0x80 - FIFO configuration register 0"]
34 pub fifo_config_0: FIFO_CONFIG_0,
35 #[doc = "0x84 - FIFO configuration register 1"]
36 pub fifo_config_1: FIFO_CONFIG_1,
37 #[doc = "0x88 - FIFO write data register"]
38 pub data_write: DATA_WRITE,
39 #[doc = "0x8c - FIFO read data register"]
40 pub data_read: DATA_READ,
41}
42#[doc = "transmit_config (rw) register accessor: an alias for `Reg<TRANSMIT_CONFIG_SPEC>`"]
43pub type TRANSMIT_CONFIG = crate::Reg<transmit_config::TRANSMIT_CONFIG_SPEC>;
44#[doc = "Transmit configuration register"]
45pub mod transmit_config;
46#[doc = "receive_config (rw) register accessor: an alias for `Reg<RECEIVE_CONFIG_SPEC>`"]
47pub type RECEIVE_CONFIG = crate::Reg<receive_config::RECEIVE_CONFIG_SPEC>;
48#[doc = "Receive configuration register"]
49pub mod receive_config;
50#[doc = "bit_period (rw) register accessor: an alias for `Reg<BIT_PERIOD_SPEC>`"]
51pub type BIT_PERIOD = crate::Reg<bit_period::BIT_PERIOD_SPEC>;
52#[doc = "Bit period control register"]
53pub mod bit_period;
54#[doc = "data_config (rw) register accessor: an alias for `Reg<DATA_CONFIG_SPEC>`"]
55pub type DATA_CONFIG = crate::Reg<data_config::DATA_CONFIG_SPEC>;
56#[doc = "Data configuration register"]
57pub mod data_config;
58#[doc = "transmit_position (rw) register accessor: an alias for `Reg<TRANSMIT_POSITION_SPEC>`"]
59pub type TRANSMIT_POSITION = crate::Reg<transmit_position::TRANSMIT_POSITION_SPEC>;
60#[doc = "IR-mode transmit position control"]
61pub mod transmit_position;
62#[doc = "receive_position (rw) register accessor: an alias for `Reg<RECEIVE_POSITION_SPEC>`"]
63pub type RECEIVE_POSITION = crate::Reg<receive_position::RECEIVE_POSITION_SPEC>;
64#[doc = "IR-mode receive position control"]
65pub mod receive_position;
66#[doc = "receive_timeout (rw) register accessor: an alias for `Reg<RECEIVE_TIMEOUT_SPEC>`"]
67pub type RECEIVE_TIMEOUT = crate::Reg<receive_timeout::RECEIVE_TIMEOUT_SPEC>;
68#[doc = "Receive Time-Out interrupt control"]
69pub mod receive_timeout;
70#[doc = "signal_override (rw) register accessor: an alias for `Reg<SIGNAL_OVERRIDE_SPEC>`"]
71pub type SIGNAL_OVERRIDE = crate::Reg<signal_override::SIGNAL_OVERRIDE_SPEC>;
72#[doc = "Manual override of flow control signal"]
73pub mod signal_override;
74#[doc = "interrupt_state (r) register accessor: an alias for `Reg<INTERRUPT_STATE_SPEC>`"]
75pub type INTERRUPT_STATE = crate::Reg<interrupt_state::INTERRUPT_STATE_SPEC>;
76#[doc = "Interrupt state register"]
77pub mod interrupt_state;
78#[doc = "interrupt_mask (rw) register accessor: an alias for `Reg<INTERRUPT_MASK_SPEC>`"]
79pub type INTERRUPT_MASK = crate::Reg<interrupt_mask::INTERRUPT_MASK_SPEC>;
80#[doc = "Interrupt mask register"]
81pub mod interrupt_mask;
82#[doc = "interrupt_clear (w) register accessor: an alias for `Reg<INTERRUPT_CLEAR_SPEC>`"]
83pub type INTERRUPT_CLEAR = crate::Reg<interrupt_clear::INTERRUPT_CLEAR_SPEC>;
84#[doc = "Clear interrupt register"]
85pub mod interrupt_clear;
86#[doc = "interrupt_enable (rw) register accessor: an alias for `Reg<INTERRUPT_ENABLE_SPEC>`"]
87pub type INTERRUPT_ENABLE = crate::Reg<interrupt_enable::INTERRUPT_ENABLE_SPEC>;
88#[doc = "Interrupt enable register"]
89pub mod interrupt_enable;
90#[doc = "bus_state (r) register accessor: an alias for `Reg<BUS_STATE_SPEC>`"]
91pub type BUS_STATE = crate::Reg<bus_state::BUS_STATE_SPEC>;
92#[doc = "Bus state register"]
93pub mod bus_state;
94#[doc = "auto_baudrate (r) register accessor: an alias for `Reg<AUTO_BAUDRATE_SPEC>`"]
95pub type AUTO_BAUDRATE = crate::Reg<auto_baudrate::AUTO_BAUDRATE_SPEC>;
96#[doc = "Auto baudrate detection register"]
97pub mod auto_baudrate;
98#[doc = "fifo_config_0 (rw) register accessor: an alias for `Reg<FIFO_CONFIG_0_SPEC>`"]
99pub type FIFO_CONFIG_0 = crate::Reg<fifo_config_0::FIFO_CONFIG_0_SPEC>;
100#[doc = "FIFO configuration register 0"]
101pub mod fifo_config_0;
102#[doc = "fifo_config_1 (rw) register accessor: an alias for `Reg<FIFO_CONFIG_1_SPEC>`"]
103pub type FIFO_CONFIG_1 = crate::Reg<fifo_config_1::FIFO_CONFIG_1_SPEC>;
104#[doc = "FIFO configuration register 1"]
105pub mod fifo_config_1;
106#[doc = "data_write (w) register accessor: an alias for `Reg<DATA_WRITE_SPEC>`"]
107pub type DATA_WRITE = crate::Reg<data_write::DATA_WRITE_SPEC>;
108#[doc = "FIFO write data register"]
109pub mod data_write;
110#[doc = "data_read (r) register accessor: an alias for `Reg<DATA_READ_SPEC>`"]
111pub type DATA_READ = crate::Reg<data_read::DATA_READ_SPEC>;
112#[doc = "FIFO read data register"]
113pub mod data_read;