nrf-pac

Crates

git

Versions

nrf52820

Flavors

nrf_pac::radio

Struct Radio

Source
pub struct Radio { /* private fields */ }
Expand description

2.4 GHz radio

Implementations§

Source§

impl Radio

Source

pub const unsafe fn from_ptr(ptr: *mut ()) -> Self

Source

pub const fn as_ptr(&self) -> *mut ()

Source

pub const fn tasks_txen(self) -> Reg<u32, W>

Enable RADIO in TX mode

Source

pub const fn tasks_rxen(self) -> Reg<u32, W>

Enable RADIO in RX mode

Source

pub const fn tasks_start(self) -> Reg<u32, W>

Start RADIO

Source

pub const fn tasks_stop(self) -> Reg<u32, W>

Stop RADIO

Source

pub const fn tasks_disable(self) -> Reg<u32, W>

Disable RADIO

Source

pub const fn tasks_rssistart(self) -> Reg<u32, W>

Start the RSSI and take one single sample of the receive signal strength

Source

pub const fn tasks_rssistop(self) -> Reg<u32, W>

Stop the RSSI measurement

Source

pub const fn tasks_bcstart(self) -> Reg<u32, W>

Start the bit counter

Source

pub const fn tasks_bcstop(self) -> Reg<u32, W>

Stop the bit counter

Source

pub const fn tasks_edstart(self) -> Reg<u32, W>

Start the energy detect measurement used in IEEE 802.15.4 mode

Source

pub const fn tasks_edstop(self) -> Reg<u32, W>

Stop the energy detect measurement

Source

pub const fn tasks_ccastart(self) -> Reg<u32, W>

Start the clear channel assessment used in IEEE 802.15.4 mode

Source

pub const fn tasks_ccastop(self) -> Reg<u32, W>

Stop the clear channel assessment

Source

pub const fn events_ready(self) -> Reg<u32, RW>

RADIO has ramped up and is ready to be started

Source

pub const fn events_address(self) -> Reg<u32, RW>

Address sent or received

Source

pub const fn events_payload(self) -> Reg<u32, RW>

Packet payload sent or received

Source

pub const fn events_end(self) -> Reg<u32, RW>

Packet sent or received

Source

pub const fn events_disabled(self) -> Reg<u32, RW>

RADIO has been disabled

Source

pub const fn events_devmatch(self) -> Reg<u32, RW>

A device address match occurred on the last received packet

Source

pub const fn events_devmiss(self) -> Reg<u32, RW>

No device address match occurred on the last received packet

Source

pub const fn events_rssiend(self) -> Reg<u32, RW>

Sampling of receive signal strength complete

Source

pub const fn events_bcmatch(self) -> Reg<u32, RW>

Bit counter reached bit count value

Source

pub const fn events_crcok(self) -> Reg<u32, RW>

Packet received with CRC ok

Source

pub const fn events_crcerror(self) -> Reg<u32, RW>

Packet received with CRC error

Source

pub const fn events_framestart(self) -> Reg<u32, RW>

IEEE 802.15.4 length field received

Source

pub const fn events_edend(self) -> Reg<u32, RW>

Sampling of energy detection complete. A new ED sample is ready for readout from the RADIO.EDSAMPLE register.

Source

pub const fn events_edstopped(self) -> Reg<u32, RW>

The sampling of energy detection has stopped

Source

pub const fn events_ccaidle(self) -> Reg<u32, RW>

Wireless medium in idle - clear to send

Source

pub const fn events_ccabusy(self) -> Reg<u32, RW>

Wireless medium busy - do not send

Source

pub const fn events_ccastopped(self) -> Reg<u32, RW>

The CCA has stopped

Source

pub const fn events_rateboost(self) -> Reg<u32, RW>

Ble_LR CI field received, receive mode is changed from Ble_LR125Kbit to Ble_LR500Kbit.

Source

pub const fn events_txready(self) -> Reg<u32, RW>

RADIO has ramped up and is ready to be started TX path

Source

pub const fn events_rxready(self) -> Reg<u32, RW>

RADIO has ramped up and is ready to be started RX path

Source

pub const fn events_mhrmatch(self) -> Reg<u32, RW>

MAC header match found

Source

pub const fn events_sync(self) -> Reg<u32, RW>

Preamble indicator

Source

pub const fn events_phyend(self) -> Reg<u32, RW>

Generated when last bit is sent on air, or received from air

Source

pub const fn events_ctepresent(self) -> Reg<u32, RW>

CTE is present (early warning right after receiving CTEInfo byte)

Source

pub const fn shorts(self) -> Reg<Shorts, RW>

Shortcuts between local events and tasks

Source

pub const fn intenset(self) -> Reg<Int, RW>

Enable interrupt

Source

pub const fn intenclr(self) -> Reg<Int, RW>

Disable interrupt

Source

pub const fn crcstatus(self) -> Reg<Crcstatus, R>

CRC status

Source

pub const fn rxmatch(self) -> Reg<Rxmatch, R>

Received address

Source

pub const fn rxcrc(self) -> Reg<Rxcrc, R>

CRC field of previously received packet

Source

pub const fn dai(self) -> Reg<Dai, R>

Device address match index

Source

pub const fn pdustat(self) -> Reg<Pdustat, R>

Payload status

Source

pub const fn ctestatus(self) -> Reg<Ctestatus, R>

CTEInfo parsed from received packet

Source

pub const fn dfestatus(self) -> Reg<Dfestatus, R>

DFE status information

Source

pub const fn packetptr(self) -> Reg<u32, RW>

Packet pointer

Source

pub const fn frequency(self) -> Reg<Frequency, RW>

Frequency

Source

pub const fn txpower(self) -> Reg<Txpower, RW>

Output power

Source

pub const fn mode(self) -> Reg<Mode, RW>

Data rate and modulation

Source

pub const fn pcnf0(self) -> Reg<Pcnf0, RW>

Packet configuration register 0

Source

pub const fn pcnf1(self) -> Reg<Pcnf1, RW>

Packet configuration register 1

Source

pub const fn base0(self) -> Reg<u32, RW>

Base address 0

Source

pub const fn base1(self) -> Reg<u32, RW>

Base address 1

Source

pub const fn prefix0(self) -> Reg<Prefix0, RW>

Prefixes bytes for logical addresses 0-3

Source

pub const fn prefix1(self) -> Reg<Prefix1, RW>

Prefixes bytes for logical addresses 4-7

Source

pub const fn txaddress(self) -> Reg<Txaddress, RW>

Transmit address select

Source

pub const fn rxaddresses(self) -> Reg<Rxaddresses, RW>

Receive address select

Source

pub const fn crccnf(self) -> Reg<Crccnf, RW>

CRC configuration

Source

pub const fn crcpoly(self) -> Reg<Crcpoly, RW>

CRC polynomial

Source

pub const fn crcinit(self) -> Reg<Crcinit, RW>

CRC initial value

Source

pub const fn tifs(self) -> Reg<Tifs, RW>

Interframe spacing in us

Source

pub const fn rssisample(self) -> Reg<Rssisample, R>

RSSI sample

Source

pub const fn state(self) -> Reg<State, R>

Current radio state

Source

pub const fn datawhiteiv(self) -> Reg<Datawhiteiv, RW>

Data whitening initial value

Source

pub const fn bcc(self) -> Reg<u32, RW>

Bit counter compare

Source

pub const fn dab(self, n: usize) -> Reg<u32, RW>

Description collection: Device address base segment n

Source

pub const fn dap(self, n: usize) -> Reg<Dap, RW>

Description collection: Device address prefix n

Source

pub const fn dacnf(self) -> Reg<Dacnf, RW>

Device address match configuration

Source

pub const fn mhrmatchconf(self) -> Reg<u32, RW>

Search pattern configuration

Source

pub const fn mhrmatchmas(self) -> Reg<u32, RW>

Pattern mask

Source

pub const fn modecnf0(self) -> Reg<Modecnf0, RW>

Radio mode configuration register 0

Source

pub const fn sfd(self) -> Reg<Sfd, RW>

IEEE 802.15.4 start of frame delimiter

Source

pub const fn edcnt(self) -> Reg<Edcnt, RW>

IEEE 802.15.4 energy detect loop count

Source

pub const fn edsample(self) -> Reg<Edsample, R>

IEEE 802.15.4 energy detect level

Source

pub const fn ccactrl(self) -> Reg<Ccactrl, RW>

IEEE 802.15.4 clear channel assessment control

Source

pub const fn dfemode(self) -> Reg<Dfemode, RW>

Whether to use Angle-of-Arrival (AOA) or Angle-of-Departure (AOD)

Source

pub const fn cteinlineconf(self) -> Reg<Cteinlineconf, RW>

Configuration for CTE inline mode

Source

pub const fn dfectrl1(self) -> Reg<Dfectrl1, RW>

Various configuration for Direction finding

Source

pub const fn dfectrl2(self) -> Reg<Dfectrl2, RW>

Start offset for Direction finding

Source

pub const fn switchpattern(self) -> Reg<Switchpattern, RW>

GPIO patterns to be used for each antenna

Source

pub const fn clearpattern(self) -> Reg<Clearpattern, RW>

Clear the GPIO pattern array for antenna control

Source

pub const fn psel(self) -> Psel

Unspecified

Source

pub const fn dfepacket(self) -> Dfepacket

DFE packet EasyDMA channel

Source

pub const fn power(self) -> Reg<Power, RW>

Peripheral power control

Trait Implementations§

Source§

impl Clone for Radio

Source§

fn clone(&self) -> Radio

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl PartialEq for Radio

Source§

fn eq(&self, other: &Radio) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Radio

Source§

impl Eq for Radio

Source§

impl Send for Radio

Source§

impl StructuralPartialEq for Radio

Source§

impl Sync for Radio

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.