nrf52833_pac/
radio.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Enable RADIO in TX mode"]
5    pub tasks_txen: TASKS_TXEN,
6    #[doc = "0x04 - Enable RADIO in RX mode"]
7    pub tasks_rxen: TASKS_RXEN,
8    #[doc = "0x08 - Start RADIO"]
9    pub tasks_start: TASKS_START,
10    #[doc = "0x0c - Stop RADIO"]
11    pub tasks_stop: TASKS_STOP,
12    #[doc = "0x10 - Disable RADIO"]
13    pub tasks_disable: TASKS_DISABLE,
14    #[doc = "0x14 - Start the RSSI and take one single sample of the receive signal strength"]
15    pub tasks_rssistart: TASKS_RSSISTART,
16    #[doc = "0x18 - Stop the RSSI measurement"]
17    pub tasks_rssistop: TASKS_RSSISTOP,
18    #[doc = "0x1c - Start the bit counter"]
19    pub tasks_bcstart: TASKS_BCSTART,
20    #[doc = "0x20 - Stop the bit counter"]
21    pub tasks_bcstop: TASKS_BCSTOP,
22    #[doc = "0x24 - Start the energy detect measurement used in IEEE 802.15.4 mode"]
23    pub tasks_edstart: TASKS_EDSTART,
24    #[doc = "0x28 - Stop the energy detect measurement"]
25    pub tasks_edstop: TASKS_EDSTOP,
26    #[doc = "0x2c - Start the clear channel assessment used in IEEE 802.15.4 mode"]
27    pub tasks_ccastart: TASKS_CCASTART,
28    #[doc = "0x30 - Stop the clear channel assessment"]
29    pub tasks_ccastop: TASKS_CCASTOP,
30    _reserved13: [u8; 0xcc],
31    #[doc = "0x100 - RADIO has ramped up and is ready to be started"]
32    pub events_ready: EVENTS_READY,
33    #[doc = "0x104 - Address sent or received"]
34    pub events_address: EVENTS_ADDRESS,
35    #[doc = "0x108 - Packet payload sent or received"]
36    pub events_payload: EVENTS_PAYLOAD,
37    #[doc = "0x10c - Packet sent or received"]
38    pub events_end: EVENTS_END,
39    #[doc = "0x110 - RADIO has been disabled"]
40    pub events_disabled: EVENTS_DISABLED,
41    #[doc = "0x114 - A device address match occurred on the last received packet"]
42    pub events_devmatch: EVENTS_DEVMATCH,
43    #[doc = "0x118 - No device address match occurred on the last received packet"]
44    pub events_devmiss: EVENTS_DEVMISS,
45    #[doc = "0x11c - Sampling of receive signal strength complete"]
46    pub events_rssiend: EVENTS_RSSIEND,
47    _reserved21: [u8; 0x08],
48    #[doc = "0x128 - Bit counter reached bit count value"]
49    pub events_bcmatch: EVENTS_BCMATCH,
50    _reserved22: [u8; 0x04],
51    #[doc = "0x130 - Packet received with CRC ok"]
52    pub events_crcok: EVENTS_CRCOK,
53    #[doc = "0x134 - Packet received with CRC error"]
54    pub events_crcerror: EVENTS_CRCERROR,
55    #[doc = "0x138 - IEEE 802.15.4 length field received"]
56    pub events_framestart: EVENTS_FRAMESTART,
57    #[doc = "0x13c - Sampling of energy detection complete. A new ED sample is ready for readout from the RADIO.EDSAMPLE register"]
58    pub events_edend: EVENTS_EDEND,
59    #[doc = "0x140 - The sampling of energy detection has stopped"]
60    pub events_edstopped: EVENTS_EDSTOPPED,
61    #[doc = "0x144 - Wireless medium in idle - clear to send"]
62    pub events_ccaidle: EVENTS_CCAIDLE,
63    #[doc = "0x148 - Wireless medium busy - do not send"]
64    pub events_ccabusy: EVENTS_CCABUSY,
65    #[doc = "0x14c - The CCA has stopped"]
66    pub events_ccastopped: EVENTS_CCASTOPPED,
67    #[doc = "0x150 - Ble_LR CI field received, receive mode is changed from Ble_LR125Kbit to Ble_LR500Kbit."]
68    pub events_rateboost: EVENTS_RATEBOOST,
69    #[doc = "0x154 - RADIO has ramped up and is ready to be started TX path"]
70    pub events_txready: EVENTS_TXREADY,
71    #[doc = "0x158 - RADIO has ramped up and is ready to be started RX path"]
72    pub events_rxready: EVENTS_RXREADY,
73    #[doc = "0x15c - MAC header match found"]
74    pub events_mhrmatch: EVENTS_MHRMATCH,
75    _reserved34: [u8; 0x08],
76    #[doc = "0x168 - Preamble indicator"]
77    pub events_sync: EVENTS_SYNC,
78    #[doc = "0x16c - Generated when last bit is sent on air, or received from air"]
79    pub events_phyend: EVENTS_PHYEND,
80    #[doc = "0x170 - CTE is present (early warning right after receiving CTEInfo byte)"]
81    pub events_ctepresent: EVENTS_CTEPRESENT,
82    _reserved37: [u8; 0x8c],
83    #[doc = "0x200 - Shortcuts between local events and tasks"]
84    pub shorts: SHORTS,
85    _reserved38: [u8; 0x0100],
86    #[doc = "0x304 - Enable interrupt"]
87    pub intenset: INTENSET,
88    #[doc = "0x308 - Disable interrupt"]
89    pub intenclr: INTENCLR,
90    _reserved40: [u8; 0xf4],
91    #[doc = "0x400 - CRC status"]
92    pub crcstatus: CRCSTATUS,
93    _reserved41: [u8; 0x04],
94    #[doc = "0x408 - Received address"]
95    pub rxmatch: RXMATCH,
96    #[doc = "0x40c - CRC field of previously received packet"]
97    pub rxcrc: RXCRC,
98    #[doc = "0x410 - Device address match index"]
99    pub dai: DAI,
100    #[doc = "0x414 - Payload status"]
101    pub pdustat: PDUSTAT,
102    _reserved45: [u8; 0x34],
103    #[doc = "0x44c - CTEInfo parsed from received packet"]
104    pub ctestatus: CTESTATUS,
105    _reserved46: [u8; 0x08],
106    #[doc = "0x458 - DFE status information"]
107    pub dfestatus: DFESTATUS,
108    _reserved47: [u8; 0xa8],
109    #[doc = "0x504 - Packet pointer"]
110    pub packetptr: PACKETPTR,
111    #[doc = "0x508 - Frequency"]
112    pub frequency: FREQUENCY,
113    #[doc = "0x50c - Output power"]
114    pub txpower: TXPOWER,
115    #[doc = "0x510 - Data rate and modulation"]
116    pub mode: MODE,
117    #[doc = "0x514 - Packet configuration register 0"]
118    pub pcnf0: PCNF0,
119    #[doc = "0x518 - Packet configuration register 1"]
120    pub pcnf1: PCNF1,
121    #[doc = "0x51c - Base address 0"]
122    pub base0: BASE0,
123    #[doc = "0x520 - Base address 1"]
124    pub base1: BASE1,
125    #[doc = "0x524 - Prefixes bytes for logical addresses 0-3"]
126    pub prefix0: PREFIX0,
127    #[doc = "0x528 - Prefixes bytes for logical addresses 4-7"]
128    pub prefix1: PREFIX1,
129    #[doc = "0x52c - Transmit address select"]
130    pub txaddress: TXADDRESS,
131    #[doc = "0x530 - Receive address select"]
132    pub rxaddresses: RXADDRESSES,
133    #[doc = "0x534 - CRC configuration"]
134    pub crccnf: CRCCNF,
135    #[doc = "0x538 - CRC polynomial"]
136    pub crcpoly: CRCPOLY,
137    #[doc = "0x53c - CRC initial value"]
138    pub crcinit: CRCINIT,
139    _reserved62: [u8; 0x04],
140    #[doc = "0x544 - Interframe spacing in us"]
141    pub tifs: TIFS,
142    #[doc = "0x548 - RSSI sample"]
143    pub rssisample: RSSISAMPLE,
144    _reserved64: [u8; 0x04],
145    #[doc = "0x550 - Current radio state"]
146    pub state: STATE,
147    #[doc = "0x554 - Data whitening initial value"]
148    pub datawhiteiv: DATAWHITEIV,
149    _reserved66: [u8; 0x08],
150    #[doc = "0x560 - Bit counter compare"]
151    pub bcc: BCC,
152    _reserved67: [u8; 0x9c],
153    #[doc = "0x600..0x620 - Description collection: Device address base segment n"]
154    pub dab: [DAB; 8],
155    #[doc = "0x620..0x640 - Description collection: Device address prefix n"]
156    pub dap: [DAP; 8],
157    #[doc = "0x640 - Device address match configuration"]
158    pub dacnf: DACNF,
159    #[doc = "0x644 - Search pattern configuration"]
160    pub mhrmatchconf: MHRMATCHCONF,
161    #[doc = "0x648 - Pattern mask"]
162    pub mhrmatchmas: MHRMATCHMAS,
163    _reserved72: [u8; 0x04],
164    #[doc = "0x650 - Radio mode configuration register 0"]
165    pub modecnf0: MODECNF0,
166    _reserved73: [u8; 0x0c],
167    #[doc = "0x660 - IEEE 802.15.4 start of frame delimiter"]
168    pub sfd: SFD,
169    #[doc = "0x664 - IEEE 802.15.4 energy detect loop count"]
170    pub edcnt: EDCNT,
171    #[doc = "0x668 - IEEE 802.15.4 energy detect level"]
172    pub edsample: EDSAMPLE,
173    #[doc = "0x66c - IEEE 802.15.4 clear channel assessment control"]
174    pub ccactrl: CCACTRL,
175    _reserved77: [u8; 0x0290],
176    #[doc = "0x900 - Whether to use Angle-of-Arrival (AOA) or Angle-of-Departure (AOD)"]
177    pub dfemode: DFEMODE,
178    #[doc = "0x904 - Configuration for CTE inline mode"]
179    pub cteinlineconf: CTEINLINECONF,
180    _reserved79: [u8; 0x08],
181    #[doc = "0x910 - Various configuration for Direction finding"]
182    pub dfectrl1: DFECTRL1,
183    #[doc = "0x914 - Start offset for Direction finding"]
184    pub dfectrl2: DFECTRL2,
185    _reserved81: [u8; 0x10],
186    #[doc = "0x928 - GPIO patterns to be used for each antenna"]
187    pub switchpattern: SWITCHPATTERN,
188    #[doc = "0x92c - Clear the GPIO pattern array for antenna control"]
189    pub clearpattern: CLEARPATTERN,
190    #[doc = "0x930..0x950 - Unspecified"]
191    pub psel: PSEL,
192    #[doc = "0x950..0x95c - DFE packet EasyDMA channel"]
193    pub dfepacket: DFEPACKET,
194    _reserved85: [u8; 0x06a0],
195    #[doc = "0xffc - Peripheral power control"]
196    pub power: POWER,
197}
198#[doc = "TASKS_TXEN (w) register accessor: an alias for `Reg<TASKS_TXEN_SPEC>`"]
199pub type TASKS_TXEN = crate::Reg<tasks_txen::TASKS_TXEN_SPEC>;
200#[doc = "Enable RADIO in TX mode"]
201pub mod tasks_txen;
202#[doc = "TASKS_RXEN (w) register accessor: an alias for `Reg<TASKS_RXEN_SPEC>`"]
203pub type TASKS_RXEN = crate::Reg<tasks_rxen::TASKS_RXEN_SPEC>;
204#[doc = "Enable RADIO in RX mode"]
205pub mod tasks_rxen;
206#[doc = "TASKS_START (w) register accessor: an alias for `Reg<TASKS_START_SPEC>`"]
207pub type TASKS_START = crate::Reg<tasks_start::TASKS_START_SPEC>;
208#[doc = "Start RADIO"]
209pub mod tasks_start;
210#[doc = "TASKS_STOP (w) register accessor: an alias for `Reg<TASKS_STOP_SPEC>`"]
211pub type TASKS_STOP = crate::Reg<tasks_stop::TASKS_STOP_SPEC>;
212#[doc = "Stop RADIO"]
213pub mod tasks_stop;
214#[doc = "TASKS_DISABLE (w) register accessor: an alias for `Reg<TASKS_DISABLE_SPEC>`"]
215pub type TASKS_DISABLE = crate::Reg<tasks_disable::TASKS_DISABLE_SPEC>;
216#[doc = "Disable RADIO"]
217pub mod tasks_disable;
218#[doc = "TASKS_RSSISTART (w) register accessor: an alias for `Reg<TASKS_RSSISTART_SPEC>`"]
219pub type TASKS_RSSISTART = crate::Reg<tasks_rssistart::TASKS_RSSISTART_SPEC>;
220#[doc = "Start the RSSI and take one single sample of the receive signal strength"]
221pub mod tasks_rssistart;
222#[doc = "TASKS_RSSISTOP (w) register accessor: an alias for `Reg<TASKS_RSSISTOP_SPEC>`"]
223pub type TASKS_RSSISTOP = crate::Reg<tasks_rssistop::TASKS_RSSISTOP_SPEC>;
224#[doc = "Stop the RSSI measurement"]
225pub mod tasks_rssistop;
226#[doc = "TASKS_BCSTART (w) register accessor: an alias for `Reg<TASKS_BCSTART_SPEC>`"]
227pub type TASKS_BCSTART = crate::Reg<tasks_bcstart::TASKS_BCSTART_SPEC>;
228#[doc = "Start the bit counter"]
229pub mod tasks_bcstart;
230#[doc = "TASKS_BCSTOP (w) register accessor: an alias for `Reg<TASKS_BCSTOP_SPEC>`"]
231pub type TASKS_BCSTOP = crate::Reg<tasks_bcstop::TASKS_BCSTOP_SPEC>;
232#[doc = "Stop the bit counter"]
233pub mod tasks_bcstop;
234#[doc = "TASKS_EDSTART (w) register accessor: an alias for `Reg<TASKS_EDSTART_SPEC>`"]
235pub type TASKS_EDSTART = crate::Reg<tasks_edstart::TASKS_EDSTART_SPEC>;
236#[doc = "Start the energy detect measurement used in IEEE 802.15.4 mode"]
237pub mod tasks_edstart;
238#[doc = "TASKS_EDSTOP (w) register accessor: an alias for `Reg<TASKS_EDSTOP_SPEC>`"]
239pub type TASKS_EDSTOP = crate::Reg<tasks_edstop::TASKS_EDSTOP_SPEC>;
240#[doc = "Stop the energy detect measurement"]
241pub mod tasks_edstop;
242#[doc = "TASKS_CCASTART (w) register accessor: an alias for `Reg<TASKS_CCASTART_SPEC>`"]
243pub type TASKS_CCASTART = crate::Reg<tasks_ccastart::TASKS_CCASTART_SPEC>;
244#[doc = "Start the clear channel assessment used in IEEE 802.15.4 mode"]
245pub mod tasks_ccastart;
246#[doc = "TASKS_CCASTOP (w) register accessor: an alias for `Reg<TASKS_CCASTOP_SPEC>`"]
247pub type TASKS_CCASTOP = crate::Reg<tasks_ccastop::TASKS_CCASTOP_SPEC>;
248#[doc = "Stop the clear channel assessment"]
249pub mod tasks_ccastop;
250#[doc = "EVENTS_READY (rw) register accessor: an alias for `Reg<EVENTS_READY_SPEC>`"]
251pub type EVENTS_READY = crate::Reg<events_ready::EVENTS_READY_SPEC>;
252#[doc = "RADIO has ramped up and is ready to be started"]
253pub mod events_ready;
254#[doc = "EVENTS_ADDRESS (rw) register accessor: an alias for `Reg<EVENTS_ADDRESS_SPEC>`"]
255pub type EVENTS_ADDRESS = crate::Reg<events_address::EVENTS_ADDRESS_SPEC>;
256#[doc = "Address sent or received"]
257pub mod events_address;
258#[doc = "EVENTS_PAYLOAD (rw) register accessor: an alias for `Reg<EVENTS_PAYLOAD_SPEC>`"]
259pub type EVENTS_PAYLOAD = crate::Reg<events_payload::EVENTS_PAYLOAD_SPEC>;
260#[doc = "Packet payload sent or received"]
261pub mod events_payload;
262#[doc = "EVENTS_END (rw) register accessor: an alias for `Reg<EVENTS_END_SPEC>`"]
263pub type EVENTS_END = crate::Reg<events_end::EVENTS_END_SPEC>;
264#[doc = "Packet sent or received"]
265pub mod events_end;
266#[doc = "EVENTS_DISABLED (rw) register accessor: an alias for `Reg<EVENTS_DISABLED_SPEC>`"]
267pub type EVENTS_DISABLED = crate::Reg<events_disabled::EVENTS_DISABLED_SPEC>;
268#[doc = "RADIO has been disabled"]
269pub mod events_disabled;
270#[doc = "EVENTS_DEVMATCH (rw) register accessor: an alias for `Reg<EVENTS_DEVMATCH_SPEC>`"]
271pub type EVENTS_DEVMATCH = crate::Reg<events_devmatch::EVENTS_DEVMATCH_SPEC>;
272#[doc = "A device address match occurred on the last received packet"]
273pub mod events_devmatch;
274#[doc = "EVENTS_DEVMISS (rw) register accessor: an alias for `Reg<EVENTS_DEVMISS_SPEC>`"]
275pub type EVENTS_DEVMISS = crate::Reg<events_devmiss::EVENTS_DEVMISS_SPEC>;
276#[doc = "No device address match occurred on the last received packet"]
277pub mod events_devmiss;
278#[doc = "EVENTS_RSSIEND (rw) register accessor: an alias for `Reg<EVENTS_RSSIEND_SPEC>`"]
279pub type EVENTS_RSSIEND = crate::Reg<events_rssiend::EVENTS_RSSIEND_SPEC>;
280#[doc = "Sampling of receive signal strength complete"]
281pub mod events_rssiend;
282#[doc = "EVENTS_BCMATCH (rw) register accessor: an alias for `Reg<EVENTS_BCMATCH_SPEC>`"]
283pub type EVENTS_BCMATCH = crate::Reg<events_bcmatch::EVENTS_BCMATCH_SPEC>;
284#[doc = "Bit counter reached bit count value"]
285pub mod events_bcmatch;
286#[doc = "EVENTS_CRCOK (rw) register accessor: an alias for `Reg<EVENTS_CRCOK_SPEC>`"]
287pub type EVENTS_CRCOK = crate::Reg<events_crcok::EVENTS_CRCOK_SPEC>;
288#[doc = "Packet received with CRC ok"]
289pub mod events_crcok;
290#[doc = "EVENTS_CRCERROR (rw) register accessor: an alias for `Reg<EVENTS_CRCERROR_SPEC>`"]
291pub type EVENTS_CRCERROR = crate::Reg<events_crcerror::EVENTS_CRCERROR_SPEC>;
292#[doc = "Packet received with CRC error"]
293pub mod events_crcerror;
294#[doc = "EVENTS_FRAMESTART (rw) register accessor: an alias for `Reg<EVENTS_FRAMESTART_SPEC>`"]
295pub type EVENTS_FRAMESTART = crate::Reg<events_framestart::EVENTS_FRAMESTART_SPEC>;
296#[doc = "IEEE 802.15.4 length field received"]
297pub mod events_framestart;
298#[doc = "EVENTS_EDEND (rw) register accessor: an alias for `Reg<EVENTS_EDEND_SPEC>`"]
299pub type EVENTS_EDEND = crate::Reg<events_edend::EVENTS_EDEND_SPEC>;
300#[doc = "Sampling of energy detection complete. A new ED sample is ready for readout from the RADIO.EDSAMPLE register"]
301pub mod events_edend;
302#[doc = "EVENTS_EDSTOPPED (rw) register accessor: an alias for `Reg<EVENTS_EDSTOPPED_SPEC>`"]
303pub type EVENTS_EDSTOPPED = crate::Reg<events_edstopped::EVENTS_EDSTOPPED_SPEC>;
304#[doc = "The sampling of energy detection has stopped"]
305pub mod events_edstopped;
306#[doc = "EVENTS_CCAIDLE (rw) register accessor: an alias for `Reg<EVENTS_CCAIDLE_SPEC>`"]
307pub type EVENTS_CCAIDLE = crate::Reg<events_ccaidle::EVENTS_CCAIDLE_SPEC>;
308#[doc = "Wireless medium in idle - clear to send"]
309pub mod events_ccaidle;
310#[doc = "EVENTS_CCABUSY (rw) register accessor: an alias for `Reg<EVENTS_CCABUSY_SPEC>`"]
311pub type EVENTS_CCABUSY = crate::Reg<events_ccabusy::EVENTS_CCABUSY_SPEC>;
312#[doc = "Wireless medium busy - do not send"]
313pub mod events_ccabusy;
314#[doc = "EVENTS_CCASTOPPED (rw) register accessor: an alias for `Reg<EVENTS_CCASTOPPED_SPEC>`"]
315pub type EVENTS_CCASTOPPED = crate::Reg<events_ccastopped::EVENTS_CCASTOPPED_SPEC>;
316#[doc = "The CCA has stopped"]
317pub mod events_ccastopped;
318#[doc = "EVENTS_RATEBOOST (rw) register accessor: an alias for `Reg<EVENTS_RATEBOOST_SPEC>`"]
319pub type EVENTS_RATEBOOST = crate::Reg<events_rateboost::EVENTS_RATEBOOST_SPEC>;
320#[doc = "Ble_LR CI field received, receive mode is changed from Ble_LR125Kbit to Ble_LR500Kbit."]
321pub mod events_rateboost;
322#[doc = "EVENTS_TXREADY (rw) register accessor: an alias for `Reg<EVENTS_TXREADY_SPEC>`"]
323pub type EVENTS_TXREADY = crate::Reg<events_txready::EVENTS_TXREADY_SPEC>;
324#[doc = "RADIO has ramped up and is ready to be started TX path"]
325pub mod events_txready;
326#[doc = "EVENTS_RXREADY (rw) register accessor: an alias for `Reg<EVENTS_RXREADY_SPEC>`"]
327pub type EVENTS_RXREADY = crate::Reg<events_rxready::EVENTS_RXREADY_SPEC>;
328#[doc = "RADIO has ramped up and is ready to be started RX path"]
329pub mod events_rxready;
330#[doc = "EVENTS_MHRMATCH (rw) register accessor: an alias for `Reg<EVENTS_MHRMATCH_SPEC>`"]
331pub type EVENTS_MHRMATCH = crate::Reg<events_mhrmatch::EVENTS_MHRMATCH_SPEC>;
332#[doc = "MAC header match found"]
333pub mod events_mhrmatch;
334#[doc = "EVENTS_SYNC (rw) register accessor: an alias for `Reg<EVENTS_SYNC_SPEC>`"]
335pub type EVENTS_SYNC = crate::Reg<events_sync::EVENTS_SYNC_SPEC>;
336#[doc = "Preamble indicator"]
337pub mod events_sync;
338#[doc = "EVENTS_PHYEND (rw) register accessor: an alias for `Reg<EVENTS_PHYEND_SPEC>`"]
339pub type EVENTS_PHYEND = crate::Reg<events_phyend::EVENTS_PHYEND_SPEC>;
340#[doc = "Generated when last bit is sent on air, or received from air"]
341pub mod events_phyend;
342#[doc = "EVENTS_CTEPRESENT (rw) register accessor: an alias for `Reg<EVENTS_CTEPRESENT_SPEC>`"]
343pub type EVENTS_CTEPRESENT = crate::Reg<events_ctepresent::EVENTS_CTEPRESENT_SPEC>;
344#[doc = "CTE is present (early warning right after receiving CTEInfo byte)"]
345pub mod events_ctepresent;
346#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
347pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
348#[doc = "Shortcuts between local events and tasks"]
349pub mod shorts;
350#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
351pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
352#[doc = "Enable interrupt"]
353pub mod intenset;
354#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
355pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
356#[doc = "Disable interrupt"]
357pub mod intenclr;
358#[doc = "CRCSTATUS (r) register accessor: an alias for `Reg<CRCSTATUS_SPEC>`"]
359pub type CRCSTATUS = crate::Reg<crcstatus::CRCSTATUS_SPEC>;
360#[doc = "CRC status"]
361pub mod crcstatus;
362#[doc = "RXMATCH (r) register accessor: an alias for `Reg<RXMATCH_SPEC>`"]
363pub type RXMATCH = crate::Reg<rxmatch::RXMATCH_SPEC>;
364#[doc = "Received address"]
365pub mod rxmatch;
366#[doc = "RXCRC (r) register accessor: an alias for `Reg<RXCRC_SPEC>`"]
367pub type RXCRC = crate::Reg<rxcrc::RXCRC_SPEC>;
368#[doc = "CRC field of previously received packet"]
369pub mod rxcrc;
370#[doc = "DAI (r) register accessor: an alias for `Reg<DAI_SPEC>`"]
371pub type DAI = crate::Reg<dai::DAI_SPEC>;
372#[doc = "Device address match index"]
373pub mod dai;
374#[doc = "PDUSTAT (r) register accessor: an alias for `Reg<PDUSTAT_SPEC>`"]
375pub type PDUSTAT = crate::Reg<pdustat::PDUSTAT_SPEC>;
376#[doc = "Payload status"]
377pub mod pdustat;
378#[doc = "CTESTATUS (r) register accessor: an alias for `Reg<CTESTATUS_SPEC>`"]
379pub type CTESTATUS = crate::Reg<ctestatus::CTESTATUS_SPEC>;
380#[doc = "CTEInfo parsed from received packet"]
381pub mod ctestatus;
382#[doc = "DFESTATUS (r) register accessor: an alias for `Reg<DFESTATUS_SPEC>`"]
383pub type DFESTATUS = crate::Reg<dfestatus::DFESTATUS_SPEC>;
384#[doc = "DFE status information"]
385pub mod dfestatus;
386#[doc = "PACKETPTR (rw) register accessor: an alias for `Reg<PACKETPTR_SPEC>`"]
387pub type PACKETPTR = crate::Reg<packetptr::PACKETPTR_SPEC>;
388#[doc = "Packet pointer"]
389pub mod packetptr;
390#[doc = "FREQUENCY (rw) register accessor: an alias for `Reg<FREQUENCY_SPEC>`"]
391pub type FREQUENCY = crate::Reg<frequency::FREQUENCY_SPEC>;
392#[doc = "Frequency"]
393pub mod frequency;
394#[doc = "TXPOWER (rw) register accessor: an alias for `Reg<TXPOWER_SPEC>`"]
395pub type TXPOWER = crate::Reg<txpower::TXPOWER_SPEC>;
396#[doc = "Output power"]
397pub mod txpower;
398#[doc = "MODE (rw) register accessor: an alias for `Reg<MODE_SPEC>`"]
399pub type MODE = crate::Reg<mode::MODE_SPEC>;
400#[doc = "Data rate and modulation"]
401pub mod mode;
402#[doc = "PCNF0 (rw) register accessor: an alias for `Reg<PCNF0_SPEC>`"]
403pub type PCNF0 = crate::Reg<pcnf0::PCNF0_SPEC>;
404#[doc = "Packet configuration register 0"]
405pub mod pcnf0;
406#[doc = "PCNF1 (rw) register accessor: an alias for `Reg<PCNF1_SPEC>`"]
407pub type PCNF1 = crate::Reg<pcnf1::PCNF1_SPEC>;
408#[doc = "Packet configuration register 1"]
409pub mod pcnf1;
410#[doc = "BASE0 (rw) register accessor: an alias for `Reg<BASE0_SPEC>`"]
411pub type BASE0 = crate::Reg<base0::BASE0_SPEC>;
412#[doc = "Base address 0"]
413pub mod base0;
414#[doc = "BASE1 (rw) register accessor: an alias for `Reg<BASE1_SPEC>`"]
415pub type BASE1 = crate::Reg<base1::BASE1_SPEC>;
416#[doc = "Base address 1"]
417pub mod base1;
418#[doc = "PREFIX0 (rw) register accessor: an alias for `Reg<PREFIX0_SPEC>`"]
419pub type PREFIX0 = crate::Reg<prefix0::PREFIX0_SPEC>;
420#[doc = "Prefixes bytes for logical addresses 0-3"]
421pub mod prefix0;
422#[doc = "PREFIX1 (rw) register accessor: an alias for `Reg<PREFIX1_SPEC>`"]
423pub type PREFIX1 = crate::Reg<prefix1::PREFIX1_SPEC>;
424#[doc = "Prefixes bytes for logical addresses 4-7"]
425pub mod prefix1;
426#[doc = "TXADDRESS (rw) register accessor: an alias for `Reg<TXADDRESS_SPEC>`"]
427pub type TXADDRESS = crate::Reg<txaddress::TXADDRESS_SPEC>;
428#[doc = "Transmit address select"]
429pub mod txaddress;
430#[doc = "RXADDRESSES (rw) register accessor: an alias for `Reg<RXADDRESSES_SPEC>`"]
431pub type RXADDRESSES = crate::Reg<rxaddresses::RXADDRESSES_SPEC>;
432#[doc = "Receive address select"]
433pub mod rxaddresses;
434#[doc = "CRCCNF (rw) register accessor: an alias for `Reg<CRCCNF_SPEC>`"]
435pub type CRCCNF = crate::Reg<crccnf::CRCCNF_SPEC>;
436#[doc = "CRC configuration"]
437pub mod crccnf;
438#[doc = "CRCPOLY (rw) register accessor: an alias for `Reg<CRCPOLY_SPEC>`"]
439pub type CRCPOLY = crate::Reg<crcpoly::CRCPOLY_SPEC>;
440#[doc = "CRC polynomial"]
441pub mod crcpoly;
442#[doc = "CRCINIT (rw) register accessor: an alias for `Reg<CRCINIT_SPEC>`"]
443pub type CRCINIT = crate::Reg<crcinit::CRCINIT_SPEC>;
444#[doc = "CRC initial value"]
445pub mod crcinit;
446#[doc = "TIFS (rw) register accessor: an alias for `Reg<TIFS_SPEC>`"]
447pub type TIFS = crate::Reg<tifs::TIFS_SPEC>;
448#[doc = "Interframe spacing in us"]
449pub mod tifs;
450#[doc = "RSSISAMPLE (r) register accessor: an alias for `Reg<RSSISAMPLE_SPEC>`"]
451pub type RSSISAMPLE = crate::Reg<rssisample::RSSISAMPLE_SPEC>;
452#[doc = "RSSI sample"]
453pub mod rssisample;
454#[doc = "STATE (r) register accessor: an alias for `Reg<STATE_SPEC>`"]
455pub type STATE = crate::Reg<state::STATE_SPEC>;
456#[doc = "Current radio state"]
457pub mod state;
458#[doc = "DATAWHITEIV (rw) register accessor: an alias for `Reg<DATAWHITEIV_SPEC>`"]
459pub type DATAWHITEIV = crate::Reg<datawhiteiv::DATAWHITEIV_SPEC>;
460#[doc = "Data whitening initial value"]
461pub mod datawhiteiv;
462#[doc = "BCC (rw) register accessor: an alias for `Reg<BCC_SPEC>`"]
463pub type BCC = crate::Reg<bcc::BCC_SPEC>;
464#[doc = "Bit counter compare"]
465pub mod bcc;
466#[doc = "DAB (rw) register accessor: an alias for `Reg<DAB_SPEC>`"]
467pub type DAB = crate::Reg<dab::DAB_SPEC>;
468#[doc = "Description collection: Device address base segment n"]
469pub mod dab;
470#[doc = "DAP (rw) register accessor: an alias for `Reg<DAP_SPEC>`"]
471pub type DAP = crate::Reg<dap::DAP_SPEC>;
472#[doc = "Description collection: Device address prefix n"]
473pub mod dap;
474#[doc = "DACNF (rw) register accessor: an alias for `Reg<DACNF_SPEC>`"]
475pub type DACNF = crate::Reg<dacnf::DACNF_SPEC>;
476#[doc = "Device address match configuration"]
477pub mod dacnf;
478#[doc = "MHRMATCHCONF (rw) register accessor: an alias for `Reg<MHRMATCHCONF_SPEC>`"]
479pub type MHRMATCHCONF = crate::Reg<mhrmatchconf::MHRMATCHCONF_SPEC>;
480#[doc = "Search pattern configuration"]
481pub mod mhrmatchconf;
482#[doc = "MHRMATCHMAS (rw) register accessor: an alias for `Reg<MHRMATCHMAS_SPEC>`"]
483pub type MHRMATCHMAS = crate::Reg<mhrmatchmas::MHRMATCHMAS_SPEC>;
484#[doc = "Pattern mask"]
485pub mod mhrmatchmas;
486#[doc = "MODECNF0 (rw) register accessor: an alias for `Reg<MODECNF0_SPEC>`"]
487pub type MODECNF0 = crate::Reg<modecnf0::MODECNF0_SPEC>;
488#[doc = "Radio mode configuration register 0"]
489pub mod modecnf0;
490#[doc = "SFD (rw) register accessor: an alias for `Reg<SFD_SPEC>`"]
491pub type SFD = crate::Reg<sfd::SFD_SPEC>;
492#[doc = "IEEE 802.15.4 start of frame delimiter"]
493pub mod sfd;
494#[doc = "EDCNT (rw) register accessor: an alias for `Reg<EDCNT_SPEC>`"]
495pub type EDCNT = crate::Reg<edcnt::EDCNT_SPEC>;
496#[doc = "IEEE 802.15.4 energy detect loop count"]
497pub mod edcnt;
498#[doc = "EDSAMPLE (r) register accessor: an alias for `Reg<EDSAMPLE_SPEC>`"]
499pub type EDSAMPLE = crate::Reg<edsample::EDSAMPLE_SPEC>;
500#[doc = "IEEE 802.15.4 energy detect level"]
501pub mod edsample;
502#[doc = "CCACTRL (rw) register accessor: an alias for `Reg<CCACTRL_SPEC>`"]
503pub type CCACTRL = crate::Reg<ccactrl::CCACTRL_SPEC>;
504#[doc = "IEEE 802.15.4 clear channel assessment control"]
505pub mod ccactrl;
506#[doc = "DFEMODE (rw) register accessor: an alias for `Reg<DFEMODE_SPEC>`"]
507pub type DFEMODE = crate::Reg<dfemode::DFEMODE_SPEC>;
508#[doc = "Whether to use Angle-of-Arrival (AOA) or Angle-of-Departure (AOD)"]
509pub mod dfemode;
510#[doc = "CTEINLINECONF (rw) register accessor: an alias for `Reg<CTEINLINECONF_SPEC>`"]
511pub type CTEINLINECONF = crate::Reg<cteinlineconf::CTEINLINECONF_SPEC>;
512#[doc = "Configuration for CTE inline mode"]
513pub mod cteinlineconf;
514#[doc = "DFECTRL1 (rw) register accessor: an alias for `Reg<DFECTRL1_SPEC>`"]
515pub type DFECTRL1 = crate::Reg<dfectrl1::DFECTRL1_SPEC>;
516#[doc = "Various configuration for Direction finding"]
517pub mod dfectrl1;
518#[doc = "DFECTRL2 (rw) register accessor: an alias for `Reg<DFECTRL2_SPEC>`"]
519pub type DFECTRL2 = crate::Reg<dfectrl2::DFECTRL2_SPEC>;
520#[doc = "Start offset for Direction finding"]
521pub mod dfectrl2;
522#[doc = "SWITCHPATTERN (rw) register accessor: an alias for `Reg<SWITCHPATTERN_SPEC>`"]
523pub type SWITCHPATTERN = crate::Reg<switchpattern::SWITCHPATTERN_SPEC>;
524#[doc = "GPIO patterns to be used for each antenna"]
525pub mod switchpattern;
526#[doc = "CLEARPATTERN (rw) register accessor: an alias for `Reg<CLEARPATTERN_SPEC>`"]
527pub type CLEARPATTERN = crate::Reg<clearpattern::CLEARPATTERN_SPEC>;
528#[doc = "Clear the GPIO pattern array for antenna control"]
529pub mod clearpattern;
530#[doc = "Unspecified"]
531pub use psel::PSEL;
532#[doc = r"Cluster"]
533#[doc = "Unspecified"]
534pub mod psel;
535#[doc = "DFE packet EasyDMA channel"]
536pub use dfepacket::DFEPACKET;
537#[doc = r"Cluster"]
538#[doc = "DFE packet EasyDMA channel"]
539pub mod dfepacket;
540#[doc = "POWER (rw) register accessor: an alias for `Reg<POWER_SPEC>`"]
541pub type POWER = crate::Reg<power::POWER_SPEC>;
542#[doc = "Peripheral power control"]
543pub mod power;