1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
#[doc = r"Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - Enable radio in TX mode."] pub tasks_txen: crate::Reg<tasks_txen::TASKS_TXEN_SPEC>, #[doc = "0x04 - Enable radio in RX mode."] pub tasks_rxen: crate::Reg<tasks_rxen::TASKS_RXEN_SPEC>, #[doc = "0x08 - Start radio."] pub tasks_start: crate::Reg<tasks_start::TASKS_START_SPEC>, #[doc = "0x0c - Stop radio."] pub tasks_stop: crate::Reg<tasks_stop::TASKS_STOP_SPEC>, #[doc = "0x10 - Disable radio."] pub tasks_disable: crate::Reg<tasks_disable::TASKS_DISABLE_SPEC>, #[doc = "0x14 - Start the RSSI and take one sample of the receive signal strength."] pub tasks_rssistart: crate::Reg<tasks_rssistart::TASKS_RSSISTART_SPEC>, #[doc = "0x18 - Stop the RSSI measurement."] pub tasks_rssistop: crate::Reg<tasks_rssistop::TASKS_RSSISTOP_SPEC>, #[doc = "0x1c - Start the bit counter."] pub tasks_bcstart: crate::Reg<tasks_bcstart::TASKS_BCSTART_SPEC>, #[doc = "0x20 - Stop the bit counter."] pub tasks_bcstop: crate::Reg<tasks_bcstop::TASKS_BCSTOP_SPEC>, _reserved9: [u8; 0xdc], #[doc = "0x100 - Ready event."] pub events_ready: crate::Reg<events_ready::EVENTS_READY_SPEC>, #[doc = "0x104 - Address event."] pub events_address: crate::Reg<events_address::EVENTS_ADDRESS_SPEC>, #[doc = "0x108 - Payload event."] pub events_payload: crate::Reg<events_payload::EVENTS_PAYLOAD_SPEC>, #[doc = "0x10c - End event."] pub events_end: crate::Reg<events_end::EVENTS_END_SPEC>, #[doc = "0x110 - Disable event."] pub events_disabled: crate::Reg<events_disabled::EVENTS_DISABLED_SPEC>, #[doc = "0x114 - A device address match occurred on the last received packet."] pub events_devmatch: crate::Reg<events_devmatch::EVENTS_DEVMATCH_SPEC>, #[doc = "0x118 - No device address match occurred on the last received packet."] pub events_devmiss: crate::Reg<events_devmiss::EVENTS_DEVMISS_SPEC>, #[doc = "0x11c - Sampling of the receive signal strength complete. A new RSSI sample is ready for readout at the RSSISAMPLE register."] pub events_rssiend: crate::Reg<events_rssiend::EVENTS_RSSIEND_SPEC>, _reserved17: [u8; 0x08], #[doc = "0x128 - Bit counter reached bit count value specified in BCC register."] pub events_bcmatch: crate::Reg<events_bcmatch::EVENTS_BCMATCH_SPEC>, _reserved18: [u8; 0xd4], #[doc = "0x200 - Shortcuts for the radio."] pub shorts: crate::Reg<shorts::SHORTS_SPEC>, _reserved19: [u8; 0x0100], #[doc = "0x304 - Interrupt enable set register."] pub intenset: crate::Reg<intenset::INTENSET_SPEC>, #[doc = "0x308 - Interrupt enable clear register."] pub intenclr: crate::Reg<intenclr::INTENCLR_SPEC>, _reserved21: [u8; 0xf4], #[doc = "0x400 - CRC status of received packet."] pub crcstatus: crate::Reg<crcstatus::CRCSTATUS_SPEC>, _reserved22: [u8; 0x04], #[doc = "0x408 - Received address."] pub rxmatch: crate::Reg<rxmatch::RXMATCH_SPEC>, #[doc = "0x40c - Received CRC."] pub rxcrc: crate::Reg<rxcrc::RXCRC_SPEC>, #[doc = "0x410 - Device address match index."] pub dai: crate::Reg<dai::DAI_SPEC>, _reserved25: [u8; 0xf0], #[doc = "0x504 - Packet pointer. Decision point: START task."] pub packetptr: crate::Reg<packetptr::PACKETPTR_SPEC>, #[doc = "0x508 - Frequency."] pub frequency: crate::Reg<frequency::FREQUENCY_SPEC>, #[doc = "0x50c - Output power."] pub txpower: crate::Reg<txpower::TXPOWER_SPEC>, #[doc = "0x510 - Data rate and modulation."] pub mode: crate::Reg<mode::MODE_SPEC>, #[doc = "0x514 - Packet configuration 0."] pub pcnf0: crate::Reg<pcnf0::PCNF0_SPEC>, #[doc = "0x518 - Packet configuration 1."] pub pcnf1: crate::Reg<pcnf1::PCNF1_SPEC>, #[doc = "0x51c - Radio base address 0. Decision point: START task."] pub base0: crate::Reg<base0::BASE0_SPEC>, #[doc = "0x520 - Radio base address 1. Decision point: START task."] pub base1: crate::Reg<base1::BASE1_SPEC>, #[doc = "0x524 - Prefixes bytes for logical addresses 0 to 3."] pub prefix0: crate::Reg<prefix0::PREFIX0_SPEC>, #[doc = "0x528 - Prefixes bytes for logical addresses 4 to 7."] pub prefix1: crate::Reg<prefix1::PREFIX1_SPEC>, #[doc = "0x52c - Transmit address select."] pub txaddress: crate::Reg<txaddress::TXADDRESS_SPEC>, #[doc = "0x530 - Receive address select."] pub rxaddresses: crate::Reg<rxaddresses::RXADDRESSES_SPEC>, #[doc = "0x534 - CRC configuration."] pub crccnf: crate::Reg<crccnf::CRCCNF_SPEC>, #[doc = "0x538 - CRC polynomial."] pub crcpoly: crate::Reg<crcpoly::CRCPOLY_SPEC>, #[doc = "0x53c - CRC initial value."] pub crcinit: crate::Reg<crcinit::CRCINIT_SPEC>, #[doc = "0x540 - Test features enable register."] pub test: crate::Reg<test::TEST_SPEC>, #[doc = "0x544 - Inter Frame Spacing in microseconds."] pub tifs: crate::Reg<tifs::TIFS_SPEC>, #[doc = "0x548 - RSSI sample."] pub rssisample: crate::Reg<rssisample::RSSISAMPLE_SPEC>, _reserved43: [u8; 0x04], #[doc = "0x550 - Current radio state."] pub state: crate::Reg<state::STATE_SPEC>, #[doc = "0x554 - Data whitening initial value."] pub datawhiteiv: crate::Reg<datawhiteiv::DATAWHITEIV_SPEC>, _reserved45: [u8; 0x08], #[doc = "0x560 - Bit counter compare."] pub bcc: crate::Reg<bcc::BCC_SPEC>, _reserved46: [u8; 0x9c], #[doc = "0x600..0x620 - Device address base segment."] pub dab: [crate::Reg<dab::DAB_SPEC>; 8], #[doc = "0x620..0x640 - Device address prefix."] pub dap: [crate::Reg<dap::DAP_SPEC>; 8], #[doc = "0x640 - Device address match configuration."] pub dacnf: crate::Reg<dacnf::DACNF_SPEC>, _reserved49: [u8; 0xe0], #[doc = "0x724 - Trim value override register 0."] pub override0: crate::Reg<override0::OVERRIDE0_SPEC>, #[doc = "0x728 - Trim value override register 1."] pub override1: crate::Reg<override1::OVERRIDE1_SPEC>, #[doc = "0x72c - Trim value override register 2."] pub override2: crate::Reg<override2::OVERRIDE2_SPEC>, #[doc = "0x730 - Trim value override register 3."] pub override3: crate::Reg<override3::OVERRIDE3_SPEC>, #[doc = "0x734 - Trim value override register 4."] pub override4: crate::Reg<override4::OVERRIDE4_SPEC>, _reserved54: [u8; 0x08c4], #[doc = "0xffc - Peripheral power control."] pub power: crate::Reg<power::POWER_SPEC>, } #[doc = "TASKS_TXEN register accessor: an alias for `Reg<TASKS_TXEN_SPEC>`"] pub type TASKS_TXEN = crate::Reg<tasks_txen::TASKS_TXEN_SPEC>; #[doc = "Enable radio in TX mode."] pub mod tasks_txen; #[doc = "TASKS_RXEN register accessor: an alias for `Reg<TASKS_RXEN_SPEC>`"] pub type TASKS_RXEN = crate::Reg<tasks_rxen::TASKS_RXEN_SPEC>; #[doc = "Enable radio in RX mode."] pub mod tasks_rxen; #[doc = "TASKS_START register accessor: an alias for `Reg<TASKS_START_SPEC>`"] pub type TASKS_START = crate::Reg<tasks_start::TASKS_START_SPEC>; #[doc = "Start radio."] pub mod tasks_start; #[doc = "TASKS_STOP register accessor: an alias for `Reg<TASKS_STOP_SPEC>`"] pub type TASKS_STOP = crate::Reg<tasks_stop::TASKS_STOP_SPEC>; #[doc = "Stop radio."] pub mod tasks_stop; #[doc = "TASKS_DISABLE register accessor: an alias for `Reg<TASKS_DISABLE_SPEC>`"] pub type TASKS_DISABLE = crate::Reg<tasks_disable::TASKS_DISABLE_SPEC>; #[doc = "Disable radio."] pub mod tasks_disable; #[doc = "TASKS_RSSISTART register accessor: an alias for `Reg<TASKS_RSSISTART_SPEC>`"] pub type TASKS_RSSISTART = crate::Reg<tasks_rssistart::TASKS_RSSISTART_SPEC>; #[doc = "Start the RSSI and take one sample of the receive signal strength."] pub mod tasks_rssistart; #[doc = "TASKS_RSSISTOP register accessor: an alias for `Reg<TASKS_RSSISTOP_SPEC>`"] pub type TASKS_RSSISTOP = crate::Reg<tasks_rssistop::TASKS_RSSISTOP_SPEC>; #[doc = "Stop the RSSI measurement."] pub mod tasks_rssistop; #[doc = "TASKS_BCSTART register accessor: an alias for `Reg<TASKS_BCSTART_SPEC>`"] pub type TASKS_BCSTART = crate::Reg<tasks_bcstart::TASKS_BCSTART_SPEC>; #[doc = "Start the bit counter."] pub mod tasks_bcstart; #[doc = "TASKS_BCSTOP register accessor: an alias for `Reg<TASKS_BCSTOP_SPEC>`"] pub type TASKS_BCSTOP = crate::Reg<tasks_bcstop::TASKS_BCSTOP_SPEC>; #[doc = "Stop the bit counter."] pub mod tasks_bcstop; #[doc = "EVENTS_READY register accessor: an alias for `Reg<EVENTS_READY_SPEC>`"] pub type EVENTS_READY = crate::Reg<events_ready::EVENTS_READY_SPEC>; #[doc = "Ready event."] pub mod events_ready; #[doc = "EVENTS_ADDRESS register accessor: an alias for `Reg<EVENTS_ADDRESS_SPEC>`"] pub type EVENTS_ADDRESS = crate::Reg<events_address::EVENTS_ADDRESS_SPEC>; #[doc = "Address event."] pub mod events_address; #[doc = "EVENTS_PAYLOAD register accessor: an alias for `Reg<EVENTS_PAYLOAD_SPEC>`"] pub type EVENTS_PAYLOAD = crate::Reg<events_payload::EVENTS_PAYLOAD_SPEC>; #[doc = "Payload event."] pub mod events_payload; #[doc = "EVENTS_END register accessor: an alias for `Reg<EVENTS_END_SPEC>`"] pub type EVENTS_END = crate::Reg<events_end::EVENTS_END_SPEC>; #[doc = "End event."] pub mod events_end; #[doc = "EVENTS_DISABLED register accessor: an alias for `Reg<EVENTS_DISABLED_SPEC>`"] pub type EVENTS_DISABLED = crate::Reg<events_disabled::EVENTS_DISABLED_SPEC>; #[doc = "Disable event."] pub mod events_disabled; #[doc = "EVENTS_DEVMATCH register accessor: an alias for `Reg<EVENTS_DEVMATCH_SPEC>`"] pub type EVENTS_DEVMATCH = crate::Reg<events_devmatch::EVENTS_DEVMATCH_SPEC>; #[doc = "A device address match occurred on the last received packet."] pub mod events_devmatch; #[doc = "EVENTS_DEVMISS register accessor: an alias for `Reg<EVENTS_DEVMISS_SPEC>`"] pub type EVENTS_DEVMISS = crate::Reg<events_devmiss::EVENTS_DEVMISS_SPEC>; #[doc = "No device address match occurred on the last received packet."] pub mod events_devmiss; #[doc = "EVENTS_RSSIEND register accessor: an alias for `Reg<EVENTS_RSSIEND_SPEC>`"] pub type EVENTS_RSSIEND = crate::Reg<events_rssiend::EVENTS_RSSIEND_SPEC>; #[doc = "Sampling of the receive signal strength complete. A new RSSI sample is ready for readout at the RSSISAMPLE register."] pub mod events_rssiend; #[doc = "EVENTS_BCMATCH register accessor: an alias for `Reg<EVENTS_BCMATCH_SPEC>`"] pub type EVENTS_BCMATCH = crate::Reg<events_bcmatch::EVENTS_BCMATCH_SPEC>; #[doc = "Bit counter reached bit count value specified in BCC register."] pub mod events_bcmatch; #[doc = "SHORTS register accessor: an alias for `Reg<SHORTS_SPEC>`"] pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>; #[doc = "Shortcuts for the radio."] pub mod shorts; #[doc = "INTENSET register accessor: an alias for `Reg<INTENSET_SPEC>`"] pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>; #[doc = "Interrupt enable set register."] pub mod intenset; #[doc = "INTENCLR register accessor: an alias for `Reg<INTENCLR_SPEC>`"] pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>; #[doc = "Interrupt enable clear register."] pub mod intenclr; #[doc = "CRCSTATUS register accessor: an alias for `Reg<CRCSTATUS_SPEC>`"] pub type CRCSTATUS = crate::Reg<crcstatus::CRCSTATUS_SPEC>; #[doc = "CRC status of received packet."] pub mod crcstatus; #[doc = "RXMATCH register accessor: an alias for `Reg<RXMATCH_SPEC>`"] pub type RXMATCH = crate::Reg<rxmatch::RXMATCH_SPEC>; #[doc = "Received address."] pub mod rxmatch; #[doc = "RXCRC register accessor: an alias for `Reg<RXCRC_SPEC>`"] pub type RXCRC = crate::Reg<rxcrc::RXCRC_SPEC>; #[doc = "Received CRC."] pub mod rxcrc; #[doc = "DAI register accessor: an alias for `Reg<DAI_SPEC>`"] pub type DAI = crate::Reg<dai::DAI_SPEC>; #[doc = "Device address match index."] pub mod dai; #[doc = "PACKETPTR register accessor: an alias for `Reg<PACKETPTR_SPEC>`"] pub type PACKETPTR = crate::Reg<packetptr::PACKETPTR_SPEC>; #[doc = "Packet pointer. Decision point: START task."] pub mod packetptr; #[doc = "FREQUENCY register accessor: an alias for `Reg<FREQUENCY_SPEC>`"] pub type FREQUENCY = crate::Reg<frequency::FREQUENCY_SPEC>; #[doc = "Frequency."] pub mod frequency; #[doc = "TXPOWER register accessor: an alias for `Reg<TXPOWER_SPEC>`"] pub type TXPOWER = crate::Reg<txpower::TXPOWER_SPEC>; #[doc = "Output power."] pub mod txpower; #[doc = "MODE register accessor: an alias for `Reg<MODE_SPEC>`"] pub type MODE = crate::Reg<mode::MODE_SPEC>; #[doc = "Data rate and modulation."] pub mod mode; #[doc = "PCNF0 register accessor: an alias for `Reg<PCNF0_SPEC>`"] pub type PCNF0 = crate::Reg<pcnf0::PCNF0_SPEC>; #[doc = "Packet configuration 0."] pub mod pcnf0; #[doc = "PCNF1 register accessor: an alias for `Reg<PCNF1_SPEC>`"] pub type PCNF1 = crate::Reg<pcnf1::PCNF1_SPEC>; #[doc = "Packet configuration 1."] pub mod pcnf1; #[doc = "BASE0 register accessor: an alias for `Reg<BASE0_SPEC>`"] pub type BASE0 = crate::Reg<base0::BASE0_SPEC>; #[doc = "Radio base address 0. Decision point: START task."] pub mod base0; #[doc = "BASE1 register accessor: an alias for `Reg<BASE1_SPEC>`"] pub type BASE1 = crate::Reg<base1::BASE1_SPEC>; #[doc = "Radio base address 1. Decision point: START task."] pub mod base1; #[doc = "PREFIX0 register accessor: an alias for `Reg<PREFIX0_SPEC>`"] pub type PREFIX0 = crate::Reg<prefix0::PREFIX0_SPEC>; #[doc = "Prefixes bytes for logical addresses 0 to 3."] pub mod prefix0; #[doc = "PREFIX1 register accessor: an alias for `Reg<PREFIX1_SPEC>`"] pub type PREFIX1 = crate::Reg<prefix1::PREFIX1_SPEC>; #[doc = "Prefixes bytes for logical addresses 4 to 7."] pub mod prefix1; #[doc = "TXADDRESS register accessor: an alias for `Reg<TXADDRESS_SPEC>`"] pub type TXADDRESS = crate::Reg<txaddress::TXADDRESS_SPEC>; #[doc = "Transmit address select."] pub mod txaddress; #[doc = "RXADDRESSES register accessor: an alias for `Reg<RXADDRESSES_SPEC>`"] pub type RXADDRESSES = crate::Reg<rxaddresses::RXADDRESSES_SPEC>; #[doc = "Receive address select."] pub mod rxaddresses; #[doc = "CRCCNF register accessor: an alias for `Reg<CRCCNF_SPEC>`"] pub type CRCCNF = crate::Reg<crccnf::CRCCNF_SPEC>; #[doc = "CRC configuration."] pub mod crccnf; #[doc = "CRCPOLY register accessor: an alias for `Reg<CRCPOLY_SPEC>`"] pub type CRCPOLY = crate::Reg<crcpoly::CRCPOLY_SPEC>; #[doc = "CRC polynomial."] pub mod crcpoly; #[doc = "CRCINIT register accessor: an alias for `Reg<CRCINIT_SPEC>`"] pub type CRCINIT = crate::Reg<crcinit::CRCINIT_SPEC>; #[doc = "CRC initial value."] pub mod crcinit; #[doc = "TEST register accessor: an alias for `Reg<TEST_SPEC>`"] pub type TEST = crate::Reg<test::TEST_SPEC>; #[doc = "Test features enable register."] pub mod test; #[doc = "TIFS register accessor: an alias for `Reg<TIFS_SPEC>`"] pub type TIFS = crate::Reg<tifs::TIFS_SPEC>; #[doc = "Inter Frame Spacing in microseconds."] pub mod tifs; #[doc = "RSSISAMPLE register accessor: an alias for `Reg<RSSISAMPLE_SPEC>`"] pub type RSSISAMPLE = crate::Reg<rssisample::RSSISAMPLE_SPEC>; #[doc = "RSSI sample."] pub mod rssisample; #[doc = "STATE register accessor: an alias for `Reg<STATE_SPEC>`"] pub type STATE = crate::Reg<state::STATE_SPEC>; #[doc = "Current radio state."] pub mod state; #[doc = "DATAWHITEIV register accessor: an alias for `Reg<DATAWHITEIV_SPEC>`"] pub type DATAWHITEIV = crate::Reg<datawhiteiv::DATAWHITEIV_SPEC>; #[doc = "Data whitening initial value."] pub mod datawhiteiv; #[doc = "BCC register accessor: an alias for `Reg<BCC_SPEC>`"] pub type BCC = crate::Reg<bcc::BCC_SPEC>; #[doc = "Bit counter compare."] pub mod bcc; #[doc = "DAB register accessor: an alias for `Reg<DAB_SPEC>`"] pub type DAB = crate::Reg<dab::DAB_SPEC>; #[doc = "Device address base segment."] pub mod dab; #[doc = "DAP register accessor: an alias for `Reg<DAP_SPEC>`"] pub type DAP = crate::Reg<dap::DAP_SPEC>; #[doc = "Device address prefix."] pub mod dap; #[doc = "DACNF register accessor: an alias for `Reg<DACNF_SPEC>`"] pub type DACNF = crate::Reg<dacnf::DACNF_SPEC>; #[doc = "Device address match configuration."] pub mod dacnf; #[doc = "OVERRIDE0 register accessor: an alias for `Reg<OVERRIDE0_SPEC>`"] pub type OVERRIDE0 = crate::Reg<override0::OVERRIDE0_SPEC>; #[doc = "Trim value override register 0."] pub mod override0; #[doc = "OVERRIDE1 register accessor: an alias for `Reg<OVERRIDE1_SPEC>`"] pub type OVERRIDE1 = crate::Reg<override1::OVERRIDE1_SPEC>; #[doc = "Trim value override register 1."] pub mod override1; #[doc = "OVERRIDE2 register accessor: an alias for `Reg<OVERRIDE2_SPEC>`"] pub type OVERRIDE2 = crate::Reg<override2::OVERRIDE2_SPEC>; #[doc = "Trim value override register 2."] pub mod override2; #[doc = "OVERRIDE3 register accessor: an alias for `Reg<OVERRIDE3_SPEC>`"] pub type OVERRIDE3 = crate::Reg<override3::OVERRIDE3_SPEC>; #[doc = "Trim value override register 3."] pub mod override3; #[doc = "OVERRIDE4 register accessor: an alias for `Reg<OVERRIDE4_SPEC>`"] pub type OVERRIDE4 = crate::Reg<override4::OVERRIDE4_SPEC>; #[doc = "Trim value override register 4."] pub mod override4; #[doc = "POWER register accessor: an alias for `Reg<POWER_SPEC>`"] pub type POWER = crate::Reg<power::POWER_SPEC>; #[doc = "Peripheral power control."] pub mod power;