nrf52833_pac/
twis0.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    _reserved0: [u8; 0x14],
5    #[doc = "0x14 - Stop TWI transaction"]
6    pub tasks_stop: TASKS_STOP,
7    _reserved1: [u8; 0x04],
8    #[doc = "0x1c - Suspend TWI transaction"]
9    pub tasks_suspend: TASKS_SUSPEND,
10    #[doc = "0x20 - Resume TWI transaction"]
11    pub tasks_resume: TASKS_RESUME,
12    _reserved3: [u8; 0x0c],
13    #[doc = "0x30 - Prepare the TWI slave to respond to a write command"]
14    pub tasks_preparerx: TASKS_PREPARERX,
15    #[doc = "0x34 - Prepare the TWI slave to respond to a read command"]
16    pub tasks_preparetx: TASKS_PREPARETX,
17    _reserved5: [u8; 0xcc],
18    #[doc = "0x104 - TWI stopped"]
19    pub events_stopped: EVENTS_STOPPED,
20    _reserved6: [u8; 0x1c],
21    #[doc = "0x124 - TWI error"]
22    pub events_error: EVENTS_ERROR,
23    _reserved7: [u8; 0x24],
24    #[doc = "0x14c - Receive sequence started"]
25    pub events_rxstarted: EVENTS_RXSTARTED,
26    #[doc = "0x150 - Transmit sequence started"]
27    pub events_txstarted: EVENTS_TXSTARTED,
28    _reserved9: [u8; 0x10],
29    #[doc = "0x164 - Write command received"]
30    pub events_write: EVENTS_WRITE,
31    #[doc = "0x168 - Read command received"]
32    pub events_read: EVENTS_READ,
33    _reserved11: [u8; 0x94],
34    #[doc = "0x200 - Shortcuts between local events and tasks"]
35    pub shorts: SHORTS,
36    _reserved12: [u8; 0xfc],
37    #[doc = "0x300 - Enable or disable interrupt"]
38    pub inten: INTEN,
39    #[doc = "0x304 - Enable interrupt"]
40    pub intenset: INTENSET,
41    #[doc = "0x308 - Disable interrupt"]
42    pub intenclr: INTENCLR,
43    _reserved15: [u8; 0x01c4],
44    #[doc = "0x4d0 - Error source"]
45    pub errorsrc: ERRORSRC,
46    #[doc = "0x4d4 - Status register indicating which address had a match"]
47    pub match_: MATCH,
48    _reserved17: [u8; 0x28],
49    #[doc = "0x500 - Enable TWIS"]
50    pub enable: ENABLE,
51    _reserved18: [u8; 0x04],
52    #[doc = "0x508..0x510 - Unspecified"]
53    pub psel: PSEL,
54    _reserved19: [u8; 0x24],
55    #[doc = "0x534..0x544 - RXD EasyDMA channel"]
56    pub rxd: RXD,
57    #[doc = "0x544..0x554 - TXD EasyDMA channel"]
58    pub txd: TXD,
59    _reserved21: [u8; 0x34],
60    #[doc = "0x588..0x590 - Description collection: TWI slave address n"]
61    pub address: [ADDRESS; 2],
62    _reserved22: [u8; 0x04],
63    #[doc = "0x594 - Configuration register for the address match mechanism"]
64    pub config: CONFIG,
65    _reserved23: [u8; 0x28],
66    #[doc = "0x5c0 - Over-read character. Character sent out in case of an over-read of the transmit buffer."]
67    pub orc: ORC,
68}
69#[doc = "TASKS_STOP (w) register accessor: an alias for `Reg<TASKS_STOP_SPEC>`"]
70pub type TASKS_STOP = crate::Reg<tasks_stop::TASKS_STOP_SPEC>;
71#[doc = "Stop TWI transaction"]
72pub mod tasks_stop;
73#[doc = "TASKS_SUSPEND (w) register accessor: an alias for `Reg<TASKS_SUSPEND_SPEC>`"]
74pub type TASKS_SUSPEND = crate::Reg<tasks_suspend::TASKS_SUSPEND_SPEC>;
75#[doc = "Suspend TWI transaction"]
76pub mod tasks_suspend;
77#[doc = "TASKS_RESUME (w) register accessor: an alias for `Reg<TASKS_RESUME_SPEC>`"]
78pub type TASKS_RESUME = crate::Reg<tasks_resume::TASKS_RESUME_SPEC>;
79#[doc = "Resume TWI transaction"]
80pub mod tasks_resume;
81#[doc = "TASKS_PREPARERX (w) register accessor: an alias for `Reg<TASKS_PREPARERX_SPEC>`"]
82pub type TASKS_PREPARERX = crate::Reg<tasks_preparerx::TASKS_PREPARERX_SPEC>;
83#[doc = "Prepare the TWI slave to respond to a write command"]
84pub mod tasks_preparerx;
85#[doc = "TASKS_PREPARETX (w) register accessor: an alias for `Reg<TASKS_PREPARETX_SPEC>`"]
86pub type TASKS_PREPARETX = crate::Reg<tasks_preparetx::TASKS_PREPARETX_SPEC>;
87#[doc = "Prepare the TWI slave to respond to a read command"]
88pub mod tasks_preparetx;
89#[doc = "EVENTS_STOPPED (rw) register accessor: an alias for `Reg<EVENTS_STOPPED_SPEC>`"]
90pub type EVENTS_STOPPED = crate::Reg<events_stopped::EVENTS_STOPPED_SPEC>;
91#[doc = "TWI stopped"]
92pub mod events_stopped;
93#[doc = "EVENTS_ERROR (rw) register accessor: an alias for `Reg<EVENTS_ERROR_SPEC>`"]
94pub type EVENTS_ERROR = crate::Reg<events_error::EVENTS_ERROR_SPEC>;
95#[doc = "TWI error"]
96pub mod events_error;
97#[doc = "EVENTS_RXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_RXSTARTED_SPEC>`"]
98pub type EVENTS_RXSTARTED = crate::Reg<events_rxstarted::EVENTS_RXSTARTED_SPEC>;
99#[doc = "Receive sequence started"]
100pub mod events_rxstarted;
101#[doc = "EVENTS_TXSTARTED (rw) register accessor: an alias for `Reg<EVENTS_TXSTARTED_SPEC>`"]
102pub type EVENTS_TXSTARTED = crate::Reg<events_txstarted::EVENTS_TXSTARTED_SPEC>;
103#[doc = "Transmit sequence started"]
104pub mod events_txstarted;
105#[doc = "EVENTS_WRITE (rw) register accessor: an alias for `Reg<EVENTS_WRITE_SPEC>`"]
106pub type EVENTS_WRITE = crate::Reg<events_write::EVENTS_WRITE_SPEC>;
107#[doc = "Write command received"]
108pub mod events_write;
109#[doc = "EVENTS_READ (rw) register accessor: an alias for `Reg<EVENTS_READ_SPEC>`"]
110pub type EVENTS_READ = crate::Reg<events_read::EVENTS_READ_SPEC>;
111#[doc = "Read command received"]
112pub mod events_read;
113#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
114pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
115#[doc = "Shortcuts between local events and tasks"]
116pub mod shorts;
117#[doc = "INTEN (rw) register accessor: an alias for `Reg<INTEN_SPEC>`"]
118pub type INTEN = crate::Reg<inten::INTEN_SPEC>;
119#[doc = "Enable or disable interrupt"]
120pub mod inten;
121#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
122pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
123#[doc = "Enable interrupt"]
124pub mod intenset;
125#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
126pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
127#[doc = "Disable interrupt"]
128pub mod intenclr;
129#[doc = "ERRORSRC (rw) register accessor: an alias for `Reg<ERRORSRC_SPEC>`"]
130pub type ERRORSRC = crate::Reg<errorsrc::ERRORSRC_SPEC>;
131#[doc = "Error source"]
132pub mod errorsrc;
133#[doc = "MATCH (r) register accessor: an alias for `Reg<MATCH_SPEC>`"]
134pub type MATCH = crate::Reg<match_::MATCH_SPEC>;
135#[doc = "Status register indicating which address had a match"]
136pub mod match_;
137#[doc = "ENABLE (rw) register accessor: an alias for `Reg<ENABLE_SPEC>`"]
138pub type ENABLE = crate::Reg<enable::ENABLE_SPEC>;
139#[doc = "Enable TWIS"]
140pub mod enable;
141#[doc = "Unspecified"]
142pub use psel::PSEL;
143#[doc = r"Cluster"]
144#[doc = "Unspecified"]
145pub mod psel;
146#[doc = "RXD EasyDMA channel"]
147pub use rxd::RXD;
148#[doc = r"Cluster"]
149#[doc = "RXD EasyDMA channel"]
150pub mod rxd;
151#[doc = "TXD EasyDMA channel"]
152pub use txd::TXD;
153#[doc = r"Cluster"]
154#[doc = "TXD EasyDMA channel"]
155pub mod txd;
156#[doc = "ADDRESS (rw) register accessor: an alias for `Reg<ADDRESS_SPEC>`"]
157pub type ADDRESS = crate::Reg<address::ADDRESS_SPEC>;
158#[doc = "Description collection: TWI slave address n"]
159pub mod address;
160#[doc = "CONFIG (rw) register accessor: an alias for `Reg<CONFIG_SPEC>`"]
161pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
162#[doc = "Configuration register for the address match mechanism"]
163pub mod config;
164#[doc = "ORC (rw) register accessor: an alias for `Reg<ORC_SPEC>`"]
165pub type ORC = crate::Reg<orc::ORC_SPEC>;
166#[doc = "Over-read character. Character sent out in case of an over-read of the transmit buffer."]
167pub mod orc;