nrfx 2.5
Data Structures | Enumerations | Functions
RADIO HAL

Hardware access layer for managing the RADIO peripheral. More...

Data Structures

struct  nrf_radio_packet_conf_t
 Packet configuration. More...
 
struct  nrf_radio_cteinline_conf_t
 Configuration for CTE inline mode. More...
 
struct  nrf_radio_dfectrl_conf_t
 Direction finding configuration. More...
 

Enumerations

enum  nrf_radio_task_t {
  NRF_RADIO_TASK_TXEN = offsetof(NRF_RADIO_Type, TASKS_TXEN),
  NRF_RADIO_TASK_RXEN = offsetof(NRF_RADIO_Type, TASKS_RXEN),
  NRF_RADIO_TASK_START = offsetof(NRF_RADIO_Type, TASKS_START),
  NRF_RADIO_TASK_STOP = offsetof(NRF_RADIO_Type, TASKS_STOP),
  NRF_RADIO_TASK_DISABLE = offsetof(NRF_RADIO_Type, TASKS_DISABLE),
  NRF_RADIO_TASK_RSSISTART = offsetof(NRF_RADIO_Type, TASKS_RSSISTART),
  NRF_RADIO_TASK_RSSISTOP = offsetof(NRF_RADIO_Type, TASKS_RSSISTOP),
  NRF_RADIO_TASK_BCSTART = offsetof(NRF_RADIO_Type, TASKS_BCSTART),
  NRF_RADIO_TASK_BCSTOP = offsetof(NRF_RADIO_Type, TASKS_BCSTOP),
  NRF_RADIO_TASK_EDSTART = offsetof(NRF_RADIO_Type, TASKS_EDSTART),
  NRF_RADIO_TASK_EDSTOP = offsetof(NRF_RADIO_Type, TASKS_EDSTOP),
  NRF_RADIO_TASK_CCASTART = offsetof(NRF_RADIO_Type, TASKS_CCASTART),
  NRF_RADIO_TASK_CCASTOP = offsetof(NRF_RADIO_Type, TASKS_CCASTOP)
}
 RADIO tasks. More...
 
enum  nrf_radio_event_t {
  NRF_RADIO_EVENT_READY = offsetof(NRF_RADIO_Type, EVENTS_READY),
  NRF_RADIO_EVENT_ADDRESS = offsetof(NRF_RADIO_Type, EVENTS_ADDRESS),
  NRF_RADIO_EVENT_PAYLOAD = offsetof(NRF_RADIO_Type, EVENTS_PAYLOAD),
  NRF_RADIO_EVENT_END = offsetof(NRF_RADIO_Type, EVENTS_END),
  NRF_RADIO_EVENT_DISABLED = offsetof(NRF_RADIO_Type, EVENTS_DISABLED),
  NRF_RADIO_EVENT_DEVMATCH = offsetof(NRF_RADIO_Type, EVENTS_DEVMATCH),
  NRF_RADIO_EVENT_DEVMISS = offsetof(NRF_RADIO_Type, EVENTS_DEVMISS),
  NRF_RADIO_EVENT_RSSIEND = offsetof(NRF_RADIO_Type, EVENTS_RSSIEND),
  NRF_RADIO_EVENT_BCMATCH = offsetof(NRF_RADIO_Type, EVENTS_BCMATCH),
  NRF_RADIO_EVENT_CRCOK = offsetof(NRF_RADIO_Type, EVENTS_CRCOK),
  NRF_RADIO_EVENT_CRCERROR = offsetof(NRF_RADIO_Type, EVENTS_CRCERROR),
  NRF_RADIO_EVENT_FRAMESTART = offsetof(NRF_RADIO_Type, EVENTS_FRAMESTART),
  NRF_RADIO_EVENT_EDEND = offsetof(NRF_RADIO_Type, EVENTS_EDEND),
  NRF_RADIO_EVENT_EDSTOPPED = offsetof(NRF_RADIO_Type, EVENTS_EDSTOPPED),
  NRF_RADIO_EVENT_CCAIDLE = offsetof(NRF_RADIO_Type, EVENTS_CCAIDLE),
  NRF_RADIO_EVENT_CCABUSY = offsetof(NRF_RADIO_Type, EVENTS_CCABUSY),
  NRF_RADIO_EVENT_CCASTOPPED = offsetof(NRF_RADIO_Type, EVENTS_CCASTOPPED),
  NRF_RADIO_EVENT_RATEBOOST = offsetof(NRF_RADIO_Type, EVENTS_RATEBOOST),
  NRF_RADIO_EVENT_TXREADY = offsetof(NRF_RADIO_Type, EVENTS_TXREADY),
  NRF_RADIO_EVENT_RXREADY = offsetof(NRF_RADIO_Type, EVENTS_RXREADY),
  NRF_RADIO_EVENT_MHRMATCH = offsetof(NRF_RADIO_Type, EVENTS_MHRMATCH),
  NRF_RADIO_EVENT_PHYEND = offsetof(NRF_RADIO_Type, EVENTS_PHYEND),
  NRF_RADIO_EVENT_SYNC = offsetof(NRF_RADIO_Type, EVENTS_SYNC),
  NRF_RADIO_EVENT_CTEPRESENT = offsetof(NRF_RADIO_Type, EVENTS_CTEPRESENT)
}
 RADIO events. More...
 
enum  nrf_radio_int_mask_t {
  NRF_RADIO_INT_READY_MASK = RADIO_INTENSET_READY_Msk,
  NRF_RADIO_INT_ADDRESS_MASK = RADIO_INTENSET_ADDRESS_Msk,
  NRF_RADIO_INT_PAYLOAD_MASK = RADIO_INTENSET_PAYLOAD_Msk,
  NRF_RADIO_INT_END_MASK = RADIO_INTENSET_END_Msk,
  NRF_RADIO_INT_DISABLED_MASK = RADIO_INTENSET_DISABLED_Msk,
  NRF_RADIO_INT_DEVMATCH_MASK = RADIO_INTENSET_DEVMATCH_Msk,
  NRF_RADIO_INT_DEVMISS_MASK = RADIO_INTENSET_DEVMISS_Msk,
  NRF_RADIO_INT_RSSIEND_MASK = RADIO_INTENSET_RSSIEND_Msk,
  NRF_RADIO_INT_BCMATCH_MASK = RADIO_INTENSET_BCMATCH_Msk,
  NRF_RADIO_INT_CRCOK_MASK = RADIO_INTENSET_CRCOK_Msk,
  NRF_RADIO_INT_CRCERROR_MASK = RADIO_INTENSET_CRCERROR_Msk,
  NRF_RADIO_INT_FRAMESTART_MASK = RADIO_INTENSET_FRAMESTART_Msk,
  NRF_RADIO_INT_EDEND_MASK = RADIO_INTENSET_EDEND_Msk,
  NRF_RADIO_INT_EDSTOPPED_MASK = RADIO_INTENSET_EDSTOPPED_Msk,
  NRF_RADIO_INT_CCAIDLE_MASK = RADIO_INTENSET_CCAIDLE_Msk,
  NRF_RADIO_INT_CCABUSY_MASK = RADIO_INTENSET_CCABUSY_Msk,
  NRF_RADIO_INT_CCASTOPPED_MASK = RADIO_INTENSET_CCASTOPPED_Msk,
  NRF_RADIO_INT_RATEBOOST_MASK = RADIO_INTENSET_RATEBOOST_Msk,
  NRF_RADIO_INT_TXREADY_MASK = RADIO_INTENSET_TXREADY_Msk,
  NRF_RADIO_INT_RXREADY_MASK = RADIO_INTENSET_RXREADY_Msk,
  NRF_RADIO_INT_MHRMATCH_MASK = RADIO_INTENSET_MHRMATCH_Msk,
  NRF_RADIO_INT_PHYEND_MASK = RADIO_INTENSET_PHYEND_Msk,
  NRF_RADIO_INT_SYNC_MASK = RADIO_INTENSET_SYNC_Msk,
  NRF_RADIO_INT_CTEPRESENT_MASK = RADIO_INTENSET_CTEPRESENT_Msk
}
 RADIO interrupts. More...
 
enum  nrf_radio_short_mask_t {
  NRF_RADIO_SHORT_READY_START_MASK = RADIO_SHORTS_READY_START_Msk,
  NRF_RADIO_SHORT_END_DISABLE_MASK = RADIO_SHORTS_END_DISABLE_Msk,
  NRF_RADIO_SHORT_DISABLED_TXEN_MASK = RADIO_SHORTS_DISABLED_TXEN_Msk,
  NRF_RADIO_SHORT_DISABLED_RXEN_MASK = RADIO_SHORTS_DISABLED_RXEN_Msk,
  NRF_RADIO_SHORT_ADDRESS_RSSISTART_MASK = RADIO_SHORTS_ADDRESS_RSSISTART_Msk,
  NRF_RADIO_SHORT_END_START_MASK = RADIO_SHORTS_END_START_Msk,
  NRF_RADIO_SHORT_ADDRESS_BCSTART_MASK = RADIO_SHORTS_ADDRESS_BCSTART_Msk,
  NRF_RADIO_SHORT_DISABLED_RSSISTOP_MASK = RADIO_SHORTS_DISABLED_RSSISTOP_Msk,
  NRF_RADIO_SHORT_RXREADY_CCASTART_MASK = RADIO_SHORTS_RXREADY_CCASTART_Msk,
  NRF_RADIO_SHORT_CCAIDLE_TXEN_MASK = RADIO_SHORTS_CCAIDLE_TXEN_Msk,
  NRF_RADIO_SHORT_CCABUSY_DISABLE_MASK = RADIO_SHORTS_CCABUSY_DISABLE_Msk,
  NRF_RADIO_SHORT_FRAMESTART_BCSTART_MASK = RADIO_SHORTS_FRAMESTART_BCSTART_Msk,
  NRF_RADIO_SHORT_READY_EDSTART_MASK = RADIO_SHORTS_READY_EDSTART_Msk,
  NRF_RADIO_SHORT_EDEND_DISABLE_MASK = RADIO_SHORTS_EDEND_DISABLE_Msk,
  NRF_RADIO_SHORT_CCAIDLE_STOP_MASK = RADIO_SHORTS_CCAIDLE_STOP_Msk,
  NRF_RADIO_SHORT_TXREADY_START_MASK = RADIO_SHORTS_TXREADY_START_Msk,
  NRF_RADIO_SHORT_RXREADY_START_MASK = RADIO_SHORTS_RXREADY_START_Msk,
  NRF_RADIO_SHORT_PHYEND_DISABLE_MASK = RADIO_SHORTS_PHYEND_DISABLE_Msk,
  NRF_RADIO_SHORT_PHYEND_START_MASK = RADIO_SHORTS_PHYEND_START_Msk
}
 RADIO shortcuts. More...
 
enum  nrf_radio_cca_mode_t {
  NRF_RADIO_CCA_MODE_ED = RADIO_CCACTRL_CCAMODE_EdMode,
  NRF_RADIO_CCA_MODE_CARRIER = RADIO_CCACTRL_CCAMODE_CarrierMode,
  NRF_RADIO_CCA_MODE_CARRIER_AND_ED = RADIO_CCACTRL_CCAMODE_CarrierAndEdMode,
  NRF_RADIO_CCA_MODE_CARRIER_OR_ED = RADIO_CCACTRL_CCAMODE_CarrierOrEdMode,
  NRF_RADIO_CCA_MODE_ED_TEST1 = RADIO_CCACTRL_CCAMODE_EdModeTest1
}
 RADIO Clear Channel Assessment modes. More...
 
enum  nrf_radio_state_t {
  NRF_RADIO_STATE_DISABLED = RADIO_STATE_STATE_Disabled,
  NRF_RADIO_STATE_RXRU = RADIO_STATE_STATE_RxRu,
  NRF_RADIO_STATE_RXIDLE = RADIO_STATE_STATE_RxIdle,
  NRF_RADIO_STATE_RX = RADIO_STATE_STATE_Rx,
  NRF_RADIO_STATE_RXDISABLE = RADIO_STATE_STATE_RxDisable,
  NRF_RADIO_STATE_TXRU = RADIO_STATE_STATE_TxRu,
  NRF_RADIO_STATE_TXIDLE = RADIO_STATE_STATE_TxIdle,
  NRF_RADIO_STATE_TX = RADIO_STATE_STATE_Tx,
  NRF_RADIO_STATE_TXDISABLE = RADIO_STATE_STATE_TxDisable
}
 Types of RADIO states. More...
 
enum  nrf_radio_txpower_t {
  NRF_RADIO_TXPOWER_POS8DBM = RADIO_TXPOWER_TXPOWER_Pos8dBm,
  NRF_RADIO_TXPOWER_POS7DBM = RADIO_TXPOWER_TXPOWER_Pos7dBm,
  NRF_RADIO_TXPOWER_POS6DBM = RADIO_TXPOWER_TXPOWER_Pos6dBm,
  NRF_RADIO_TXPOWER_POS5DBM = RADIO_TXPOWER_TXPOWER_Pos5dBm,
  NRF_RADIO_TXPOWER_POS4DBM = RADIO_TXPOWER_TXPOWER_Pos4dBm,
  NRF_RADIO_TXPOWER_POS3DBM = RADIO_TXPOWER_TXPOWER_Pos3dBm,
  NRF_RADIO_TXPOWER_POS2DBM = RADIO_TXPOWER_TXPOWER_Pos2dBm,
  NRF_RADIO_TXPOWER_0DBM = RADIO_TXPOWER_TXPOWER_0dBm,
  NRF_RADIO_TXPOWER_NEG1DBM = RADIO_TXPOWER_TXPOWER_Neg1dBm,
  NRF_RADIO_TXPOWER_NEG2DBM = RADIO_TXPOWER_TXPOWER_Neg2dBm,
  NRF_RADIO_TXPOWER_NEG3DBM = RADIO_TXPOWER_TXPOWER_Neg3dBm,
  NRF_RADIO_TXPOWER_NEG4DBM = RADIO_TXPOWER_TXPOWER_Neg4dBm,
  NRF_RADIO_TXPOWER_NEG5DBM = RADIO_TXPOWER_TXPOWER_Neg5dBm,
  NRF_RADIO_TXPOWER_NEG6DBM = RADIO_TXPOWER_TXPOWER_Neg6dBm,
  NRF_RADIO_TXPOWER_NEG7DBM = RADIO_TXPOWER_TXPOWER_Neg7dBm,
  NRF_RADIO_TXPOWER_NEG8DBM = RADIO_TXPOWER_TXPOWER_Neg8dBm,
  NRF_RADIO_TXPOWER_NEG12DBM = RADIO_TXPOWER_TXPOWER_Neg12dBm,
  NRF_RADIO_TXPOWER_NEG16DBM = RADIO_TXPOWER_TXPOWER_Neg16dBm,
  NRF_RADIO_TXPOWER_NEG20DBM = RADIO_TXPOWER_TXPOWER_Neg20dBm,
  NRF_RADIO_TXPOWER_NEG30DBM = RADIO_TXPOWER_TXPOWER_Neg30dBm,
  NRF_RADIO_TXPOWER_NEG40DBM = RADIO_TXPOWER_TXPOWER_Neg40dBm
}
 Types of RADIO TX power. More...
 
enum  nrf_radio_mode_t {
  NRF_RADIO_MODE_NRF_1MBIT = RADIO_MODE_MODE_Nrf_1Mbit,
  NRF_RADIO_MODE_NRF_2MBIT = RADIO_MODE_MODE_Nrf_2Mbit,
  NRF_RADIO_MODE_NRF_250KBIT = RADIO_MODE_MODE_Nrf_250Kbit,
  NRF_RADIO_MODE_BLE_1MBIT = RADIO_MODE_MODE_Ble_1Mbit,
  NRF_RADIO_MODE_BLE_2MBIT = RADIO_MODE_MODE_Ble_2Mbit,
  NRF_RADIO_MODE_BLE_LR125KBIT = RADIO_MODE_MODE_Ble_LR125Kbit,
  NRF_RADIO_MODE_BLE_LR500KBIT = RADIO_MODE_MODE_Ble_LR500Kbit,
  NRF_RADIO_MODE_IEEE802154_250KBIT = RADIO_MODE_MODE_Ieee802154_250Kbit
}
 Types of RADIO modes (data rate and modulation). More...
 
enum  nrf_radio_preamble_length_t {
  NRF_RADIO_PREAMBLE_LENGTH_8BIT = RADIO_PCNF0_PLEN_8bit,
  NRF_RADIO_PREAMBLE_LENGTH_16BIT = RADIO_PCNF0_PLEN_16bit,
  NRF_RADIO_PREAMBLE_LENGTH_32BIT_ZERO = RADIO_PCNF0_PLEN_32bitZero,
  NRF_RADIO_PREAMBLE_LENGTH_LONG_RANGE = RADIO_PCNF0_PLEN_LongRange
}
 Types of preamble length. More...
 
enum  nrf_radio_crc_addr_t {
  NRF_RADIO_CRC_ADDR_INCLUDE = RADIO_CRCCNF_SKIPADDR_Include,
  NRF_RADIO_CRC_ADDR_SKIP = RADIO_CRCCNF_SKIPADDR_Skip,
  NRF_RADIO_CRC_ADDR_IEEE802154 = RADIO_CRCCNF_SKIPADDR_Ieee802154
}
 Types of CRC calculatons regarding address. More...
 
enum  nrf_radio_dfe_op_mode_t {
  NRF_RADIO_DFE_OP_MODE_AOD = RADIO_DFEMODE_DFEOPMODE_AoD,
  NRF_RADIO_DFE_OP_MODE_AOA = RADIO_DFEMODE_DFEOPMODE_AoA
}
 Direction Finding operation modes. More...
 
enum  nrf_radio_dfe_switch_state_t {
  NRF_RADIO_DFE_SWITCH_STATE_IDLE = RADIO_DFESTATUS_SWITCHINGSTATE_Idle,
  NRF_RADIO_DFE_SWITCH_STATE_OFFSET = RADIO_DFESTATUS_SWITCHINGSTATE_Offset,
  NRF_RADIO_DFE_SWITCH_STATE_GUARD = RADIO_DFESTATUS_SWITCHINGSTATE_Guard,
  NRF_RADIO_DFE_SWITCH_STATE_REF = RADIO_DFESTATUS_SWITCHINGSTATE_Ref,
  NRF_RADIO_DFE_SWITCH_STATE_SWITCHING = RADIO_DFESTATUS_SWITCHINGSTATE_Switching,
  NRF_RADIO_DFE_SWITCH_STATE_ENDING = RADIO_DFESTATUS_SWITCHINGSTATE_Ending
}
 States of Direction Finding switching state machine. More...
 
enum  nrf_radio_dfe_sample_state_t {
  NRF_RADIO_DFE_SAMPLE_STATE_IDLE = RADIO_DFESTATUS_SAMPLINGSTATE_Idle,
  NRF_RADIO_DFE_SAMPLE_STATE_SAMPLING = RADIO_DFESTATUS_SAMPLINGSTATE_Sampling
}
 States of Direction Finding sampling state machine. More...
 
enum  nrf_radio_cteinline_time_range_t {
  NRF_RADIO_CTEINLINE_TIME_RANGE_20 = RADIO_CTEINLINECONF_CTETIMEVALIDRANGE_20,
  NRF_RADIO_CTEINLINE_TIME_RANGE_31 = RADIO_CTEINLINECONF_CTETIMEVALIDRANGE_31,
  NRF_RADIO_CTEINLINE_TIME_RANGE_63 = RADIO_CTEINLINECONF_CTETIMEVALIDRANGE_63
}
 Valid ranges of CTE time, expressed in 8 us units. More...
 
enum  nrf_radio_cteinline_rx_mode_t {
  NRF_RADIO_CTEINLINE_RX_MODE_125NS = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_125ns,
  NRF_RADIO_CTEINLINE_RX_MODE_250NS = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_250ns,
  NRF_RADIO_CTEINLINE_RX_MODE_500NS = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_500ns,
  NRF_RADIO_CTEINLINE_RX_MODE_1US = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_1us,
  NRF_RADIO_CTEINLINE_RX_MODE_2US = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_2us,
  NRF_RADIO_CTEINLINE_RX_MODE_4US = RADIO_CTEINLINECONF_CTEINLINERXMODE1US_4us
}
 Spacing between samples for the samples in the switching period. More...
 
enum  nrf_radio_dfectrl_extension_t {
  NRF_RADIO_DFECTRL_EXTENSION_CRC = RADIO_DFECTRL1_DFEINEXTENSION_CRC,
  NRF_RADIO_DFECTRL_EXTENSION_PAYLOAD = RADIO_DFECTRL1_DFEINEXTENSION_Payload
}
 State when CTE extension is added and antenna switching/sampling is done. More...
 
enum  nrf_radio_dfectrl_switch_spacing_t {
  NRF_RADIO_DFECTRL_SWITCH_SPACING_1US = RADIO_DFECTRL1_TSWITCHSPACING_1us,
  NRF_RADIO_DFECTRL_SWITCH_SPACING_2US = RADIO_DFECTRL1_TSWITCHSPACING_2us,
  NRF_RADIO_DFECTRL_SWITCH_SPACING_4US = RADIO_DFECTRL1_TSWITCHSPACING_4us
}
 Interval between antenna changes in the switching state. More...
 
enum  nrf_radio_dfectrl_sample_spacing_t {
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_125NS = RADIO_DFECTRL1_TSAMPLESPACING_125ns,
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_250NS = RADIO_DFECTRL1_TSAMPLESPACING_250ns,
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_500NS = RADIO_DFECTRL1_TSAMPLESPACING_500ns,
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_1US = RADIO_DFECTRL1_TSAMPLESPACING_1us,
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_2US = RADIO_DFECTRL1_TSAMPLESPACING_2us,
  NRF_RADIO_DFECTRL_SAMPLE_SPACING_4US = RADIO_DFECTRL1_TSAMPLESPACING_4us
}
 Interval between samples. More...
 
enum  nrf_radio_dfectrl_sample_type_t {
  NRF_RADIO_DFECTRL_SAMPLE_TYPE_IQ = RADIO_DFECTRL1_SAMPLETYPE_IQ,
  NRF_RADIO_DFECTRL_SAMPLE_TYPE_MAGPHASE = RADIO_DFECTRL1_SAMPLETYPE_MagPhase
}
 Direction finding sample type. More...
 

Functions

NRF_STATIC_INLINE void nrf_radio_task_trigger (NRF_RADIO_Type *p_reg, nrf_radio_task_t task)
 Function for activating a specific RADIO task. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_task_address_get (NRF_RADIO_Type const *p_reg, nrf_radio_task_t task)
 Function for getting the address of a specific RADIO task register. More...
 
NRF_STATIC_INLINE void nrf_radio_event_clear (NRF_RADIO_Type *p_reg, nrf_radio_event_t event)
 Function for clearing a specific RADIO event. More...
 
NRF_STATIC_INLINE bool nrf_radio_event_check (NRF_RADIO_Type const *p_reg, nrf_radio_event_t event)
 Function for retrieving the state of the RADIO event. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_event_address_get (NRF_RADIO_Type const *p_reg, nrf_radio_event_t event)
 Function for getting the address of a specific RADIO event register. More...
 
NRF_STATIC_INLINE void nrf_radio_shorts_enable (NRF_RADIO_Type *p_reg, uint32_t shorts_mask)
 Function for enabling specified RADIO shortcuts. More...
 
NRF_STATIC_INLINE void nrf_radio_shorts_disable (NRF_RADIO_Type *p_reg, uint32_t shorts_mask)
 Function for disabling specified RADIO shortcuts. More...
 
NRF_STATIC_INLINE void nrf_radio_shorts_set (NRF_RADIO_Type *p_reg, uint32_t shorts_mask)
 Function for setting the configuration of RADIO shortcuts. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_shorts_get (NRF_RADIO_Type const *p_reg)
 Function for getting the configuration of RADIO shortcuts. More...
 
NRF_STATIC_INLINE void nrf_radio_int_enable (NRF_RADIO_Type *p_reg, uint32_t mask)
 Function for enabling specified RADIO interrupts. More...
 
NRF_STATIC_INLINE void nrf_radio_int_disable (NRF_RADIO_Type *p_reg, uint32_t mask)
 Function for disabling specified RADIO interrupts. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_int_enable_check (NRF_RADIO_Type const *p_reg, uint32_t mask)
 Function for checking if the specified interrupts are enabled. More...
 
NRF_STATIC_INLINE void nrf_radio_subscribe_set (NRF_RADIO_Type *p_reg, nrf_radio_task_t task, uint8_t channel)
 Function for setting the subscribe configuration for a given RADIO task. More...
 
NRF_STATIC_INLINE void nrf_radio_subscribe_clear (NRF_RADIO_Type *p_reg, nrf_radio_task_t task)
 Function for clearing the subscribe configuration for a given RADIO task. More...
 
NRF_STATIC_INLINE void nrf_radio_publish_set (NRF_RADIO_Type *p_reg, nrf_radio_event_t event, uint8_t channel)
 Function for setting the publish configuration for a given RADIO event. More...
 
NRF_STATIC_INLINE void nrf_radio_publish_clear (NRF_RADIO_Type *p_reg, nrf_radio_event_t event)
 Function for clearing the publish configuration for a given RADIO event. More...
 
NRF_STATIC_INLINE bool nrf_radio_crc_status_check (NRF_RADIO_Type const *p_reg)
 Function for getting CRC status of last received packet. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_rxmatch_get (NRF_RADIO_Type const *p_reg)
 Function for getting the received address. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_rxcrc_get (NRF_RADIO_Type const *p_reg)
 Function for getting CRC field of the last received packet. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_dai_get (NRF_RADIO_Type const *p_reg)
 Function for getting the device address match index. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_pdustat_get (NRF_RADIO_Type const *p_reg)
 Function for getting status on payload length. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_cistat_get (NRF_RADIO_Type const *p_reg)
 Function for getting status on what rate packet is received with in Long Range. More...
 
NRF_STATIC_INLINE void nrf_radio_packetptr_set (NRF_RADIO_Type *p_reg, void const *p_packet)
 Function for setting packet pointer to given location in memory. More...
 
NRF_STATIC_INLINE void * nrf_radio_packetptr_get (NRF_RADIO_Type const *p_reg)
 Function for getting packet pointer. More...
 
NRF_STATIC_INLINE void nrf_radio_frequency_set (NRF_RADIO_Type *p_reg, uint16_t radio_frequency)
 Function for setting the radio frequency. More...
 
NRF_STATIC_INLINE uint16_t nrf_radio_frequency_get (NRF_RADIO_Type const *p_reg)
 Function for getting the radio frequency. More...
 
NRF_STATIC_INLINE void nrf_radio_txpower_set (NRF_RADIO_Type *p_reg, nrf_radio_txpower_t tx_power)
 Function for setting the radio transmit power. More...
 
NRF_STATIC_INLINE nrf_radio_txpower_t nrf_radio_txpower_get (NRF_RADIO_Type const *p_reg)
 Function for getting the radio transmit power. More...
 
NRF_STATIC_INLINE void nrf_radio_mode_set (NRF_RADIO_Type *p_reg, nrf_radio_mode_t radio_mode)
 Function for setting the radio data rate and modulation settings. More...
 
NRF_STATIC_INLINE nrf_radio_mode_t nrf_radio_mode_get (NRF_RADIO_Type const *p_reg)
 Function for getting Radio data rate and modulation settings. More...
 
NRF_STATIC_INLINE void nrf_radio_packet_configure (NRF_RADIO_Type *p_reg, nrf_radio_packet_conf_t const *p_config)
 Function for setting the packet configuration. More...
 
NRF_STATIC_INLINE void nrf_radio_base0_set (NRF_RADIO_Type *p_reg, uint32_t address)
 Function for setting the base address 0. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_base0_get (NRF_RADIO_Type const *p_reg)
 Function for getting the base address 0. More...
 
NRF_STATIC_INLINE void nrf_radio_base1_set (NRF_RADIO_Type *p_reg, uint32_t address)
 Function for setting Base address 1. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_base1_get (NRF_RADIO_Type const *p_reg)
 Function for getting base address 1. More...
 
NRF_STATIC_INLINE void nrf_radio_prefix0_set (NRF_RADIO_Type *p_reg, uint32_t prefixes)
 Function for setting prefixes bytes for logical addresses 0-3. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_prefix0_get (NRF_RADIO_Type const *p_reg)
 Function for getting prefixes bytes for logical addresses 0-3. More...
 
NRF_STATIC_INLINE void nrf_radio_prefix1_set (NRF_RADIO_Type *p_reg, uint32_t prefixes)
 Function for setting prefixes bytes for logical addresses 4-7. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_prefix1_get (NRF_RADIO_Type const *p_reg)
 Function for getting prefixes bytes for logical addresses 4-7. More...
 
NRF_STATIC_INLINE void nrf_radio_txaddress_set (NRF_RADIO_Type *p_reg, uint8_t txaddress)
 Function for setting the transmit address. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_txaddress_get (NRF_RADIO_Type const *p_reg)
 Function for getting the transmit address select. More...
 
NRF_STATIC_INLINE void nrf_radio_rxaddresses_set (NRF_RADIO_Type *p_reg, uint8_t rxaddresses)
 Function for for selecting the receive addresses. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_rxaddresses_get (NRF_RADIO_Type const *p_reg)
 Function for getting receive address select. More...
 
NRF_STATIC_INLINE void nrf_radio_crc_configure (NRF_RADIO_Type *p_reg, uint8_t crc_length, nrf_radio_crc_addr_t crc_address, uint32_t crc_polynominal)
 Function for configure CRC. More...
 
NRF_STATIC_INLINE void nrf_radio_crcinit_set (NRF_RADIO_Type *p_reg, uint32_t crc_init_value)
 Function for setting CRC initial value. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_crcinit_get (NRF_RADIO_Type const *p_reg)
 Function for getting CRC initial value. More...
 
NRF_STATIC_INLINE void nrf_radio_ifs_set (NRF_RADIO_Type *p_reg, uint32_t radio_ifs)
 Function for setting Inter Frame Spacing interval. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_ifs_get (NRF_RADIO_Type const *p_reg)
 Function for getting Inter Frame Spacing interval. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_rssi_sample_get (NRF_RADIO_Type const *p_reg)
 Function for getting RSSI sample result. More...
 
NRF_STATIC_INLINE nrf_radio_state_t nrf_radio_state_get (NRF_RADIO_Type const *p_reg)
 Function for getting the current state of the radio module. More...
 
NRF_STATIC_INLINE void nrf_radio_datawhiteiv_set (NRF_RADIO_Type *p_reg, uint8_t datawhiteiv)
 Function for setting the data whitening initial value. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_datawhiteiv_get (NRF_RADIO_Type const *p_reg)
 Function for getting the data whitening initial value. More...
 
NRF_STATIC_INLINE void nrf_radio_bcc_set (NRF_RADIO_Type *p_reg, uint32_t radio_bcc)
 Function for setting Bit counter compare. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_bcc_get (NRF_RADIO_Type const *p_reg)
 Function for getting Bit counter compare. More...
 
NRF_STATIC_INLINE void nrf_radio_dab_set (NRF_RADIO_Type *p_reg, uint32_t dab_value, uint8_t segment)
 Function for setting Device address base segment. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_dab_get (NRF_RADIO_Type const *p_reg, uint8_t segment)
 Function for getting Device address base segment. More...
 
NRF_STATIC_INLINE void nrf_radio_dap_set (NRF_RADIO_Type *p_reg, uint16_t dap_value, uint8_t prefix_index)
 Function for setting device address prefix. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_dap_get (NRF_RADIO_Type const *p_reg, uint8_t prefix_index)
 Function for getting Device address prefix. More...
 
NRF_STATIC_INLINE void nrf_radio_dacnf_set (NRF_RADIO_Type *p_reg, uint8_t ena, uint8_t txadd)
 Function for setting device address match configuration. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_dacnf_ena_get (NRF_RADIO_Type const *p_reg)
 Function for getting ENA field of the Device address match configuration register. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_dacnf_txadd_get (NRF_RADIO_Type const *p_reg)
 Function for getting TXADD field of the Device address match configuration register. More...
 
NRF_STATIC_INLINE void nrf_radio_mhmu_search_pattern_set (NRF_RADIO_Type *p_reg, uint32_t radio_mhmu_search_pattern)
 Function for setting MAC Header Match Unit search pattern configuration. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_mhmu_search_pattern_get (NRF_RADIO_Type const *p_reg)
 Function for getting MAC Header Match Unit search pattern configuration. More...
 
NRF_STATIC_INLINE void nrf_radio_mhmu_pattern_mask_set (NRF_RADIO_Type *p_reg, uint32_t radio_mhmu_pattern_mask)
 Function for setting MAC Header Match Unit pattern mask configuration. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_mhmu_pattern_mask_get (NRF_RADIO_Type const *p_reg)
 Function for getting MAC Header Match Unit pattern mask configuration. More...
 
NRF_STATIC_INLINE void nrf_radio_modecnf0_set (NRF_RADIO_Type *p_reg, bool fast_ramp_up, uint8_t default_tx)
 Function for setting Radio mode configuration register 0. More...
 
NRF_STATIC_INLINE bool nrf_radio_modecnf0_ru_get (NRF_RADIO_Type const *p_reg)
 Function for getting ramp-up time configuration of the Radio mode configuration register 0. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_modecnf0_dtx_get (NRF_RADIO_Type const *p_reg)
 Function for getting default TX value of the Radio mode configuration register 0. More...
 
NRF_STATIC_INLINE void nrf_radio_sfd_set (NRF_RADIO_Type *p_reg, uint8_t sfd)
 Function for setting IEEE 802.15.4 start of frame delimiter. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_sfd_get (NRF_RADIO_Type const *p_reg)
 Function for getting IEEE 802.15.4 start of frame delimiter. More...
 
NRF_STATIC_INLINE void nrf_radio_ed_loop_count_set (NRF_RADIO_Type *p_reg, uint32_t ed_loop_count)
 Function for setting number of iterations to perform ED scan. More...
 
NRF_STATIC_INLINE uint8_t nrf_radio_ed_sample_get (NRF_RADIO_Type const *p_reg)
 Function for getting Energy Detection level. More...
 
NRF_STATIC_INLINE void nrf_radio_cca_configure (NRF_RADIO_Type *p_reg, nrf_radio_cca_mode_t cca_mode, uint8_t cca_ed_threshold, uint8_t cca_corr_threshold, uint8_t cca_corr_cnt)
 Function for configuring the IEEE 802.15.4 clear channel assessment. More...
 
NRF_STATIC_INLINE void nrf_radio_power_set (NRF_RADIO_Type *p_reg, bool radio_power)
 Function for setting power mode of the radio peripheral. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_cte_time_get (NRF_RADIO_Type const *p_reg)
 Function for getting the CTE time parsed from received packet. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_cte_type_get (NRF_RADIO_Type const *p_reg)
 Function for getting the CTE type parsed from received packet. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_cte_rfu_get (NRF_RADIO_Type const *p_reg)
 Function for getting the CTE RFU parsed from received packet. More...
 
NRF_STATIC_INLINE nrf_radio_dfe_switch_state_t nrf_radio_dfe_switch_state_get (NRF_RADIO_Type const *p_reg)
 Function for getting the current state of DFE switching state machine. More...
 
NRF_STATIC_INLINE nrf_radio_dfe_sample_state_t nrf_radio_dfe_sample_state_get (NRF_RADIO_Type const *p_reg)
 Function for getting the current state of DFE sampling state machine. More...
 
NRF_STATIC_INLINE void nrf_radio_cteinline_configure (NRF_RADIO_Type *p_reg, nrf_radio_cteinline_conf_t const *p_config)
 Function for setting the configuration of CTE inline mode. More...
 
NRF_STATIC_INLINE void nrf_radio_dfectrl_configure (NRF_RADIO_Type *p_reg, nrf_radio_dfectrl_conf_t const *p_config)
 Function for setting the direction finding configuration. More...
 
NRF_STATIC_INLINE void nrf_radio_dfe_pattern_pin_set (NRF_RADIO_Type *p_reg, uint32_t pin, uint8_t pos)
 Function for configuring the specified GPIO pin for antenna control. More...
 
NRF_STATIC_INLINE void nrf_radio_dfe_pattern_add (NRF_RADIO_Type *p_reg, uint8_t pin_mask)
 Function for adding single pattern to the array of GPIO patterns for antenna control. More...
 
NRF_STATIC_INLINE void nrf_radio_dfe_patterns_add (NRF_RADIO_Type *p_reg, uint8_t const *p_pin_masks, size_t length)
 Function for adding multiple patterns to the array of GPIO patterns for antenna control. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_dfe_pattern_cnt_get (NRF_RADIO_Type const *p_reg)
 Function for getting number of currently configured GPIO patterns for antenna control. More...
 
NRF_STATIC_INLINE void nrf_radio_dfe_pattern_clear (NRF_RADIO_Type *p_reg)
 Function for clearing all of the currently configured GPIO patterns for antenna control. More...
 
NRF_STATIC_INLINE void nrf_radio_dfe_buffer_set (NRF_RADIO_Type *p_reg, uint32_t *p_buffer, size_t length)
 Function for setting the buffer for storing IQ samples or magnitude and phase pairs of the samples. More...
 
NRF_STATIC_INLINE uint32_t nrf_radio_dfe_amount_get (NRF_RADIO_Type const *p_reg)
 Function for getting the number of stored IQ samples or magnitude and phase pairs of the samples during last transaction. More...
 

Detailed Description

Hardware access layer for managing the RADIO peripheral.

Enumeration Type Documentation

◆ nrf_radio_cca_mode_t

RADIO Clear Channel Assessment modes.

Enumerator
NRF_RADIO_CCA_MODE_ED 

Energy Above Threshold. Will report busy whenever energy is detected above set threshold.

NRF_RADIO_CCA_MODE_CARRIER 

Carrier Seen. Will report busy whenever compliant IEEE 802.15.4 signal is seen.

NRF_RADIO_CCA_MODE_CARRIER_AND_ED 

Energy Above Threshold AND Carrier Seen.

NRF_RADIO_CCA_MODE_CARRIER_OR_ED 

Energy Above Threshold OR Carrier Seen.

NRF_RADIO_CCA_MODE_ED_TEST1 

Energy Above Threshold test mode that will abort when first ED measurement over threshold is seen. No averaging.

◆ nrf_radio_crc_addr_t

Types of CRC calculatons regarding address.

Enumerator
NRF_RADIO_CRC_ADDR_INCLUDE 

CRC calculation includes address field.

NRF_RADIO_CRC_ADDR_SKIP 

CRC calculation does not include address field.

NRF_RADIO_CRC_ADDR_IEEE802154 

CRC calculation as per 802.15.4 standard.

◆ nrf_radio_cteinline_rx_mode_t

Spacing between samples for the samples in the switching period.

Enumerator
NRF_RADIO_CTEINLINE_RX_MODE_125NS 

125 ns spacing.

NRF_RADIO_CTEINLINE_RX_MODE_250NS 

250 ns spacing.

NRF_RADIO_CTEINLINE_RX_MODE_500NS 

500 ns spacing.

NRF_RADIO_CTEINLINE_RX_MODE_1US 

1 us spacing.

NRF_RADIO_CTEINLINE_RX_MODE_2US 

2 us spacing.

NRF_RADIO_CTEINLINE_RX_MODE_4US 

4 us spacing.

◆ nrf_radio_cteinline_time_range_t

Valid ranges of CTE time, expressed in 8 us units.

Enumerator
NRF_RADIO_CTEINLINE_TIME_RANGE_20 

20 units time range.

NRF_RADIO_CTEINLINE_TIME_RANGE_31 

31 units time range.

NRF_RADIO_CTEINLINE_TIME_RANGE_63 

63 units time range.

◆ nrf_radio_dfe_op_mode_t

Direction Finding operation modes.

Enumerator
NRF_RADIO_DFE_OP_MODE_AOD 

Angle-of-Departure mode.

NRF_RADIO_DFE_OP_MODE_AOA 

Angle-of-Arrival mode.

◆ nrf_radio_dfe_sample_state_t

States of Direction Finding sampling state machine.

Enumerator
NRF_RADIO_DFE_SAMPLE_STATE_IDLE 

Sampling state Idle.

NRF_RADIO_DFE_SAMPLE_STATE_SAMPLING 

Sampling state Sampling.

◆ nrf_radio_dfe_switch_state_t

States of Direction Finding switching state machine.

Enumerator
NRF_RADIO_DFE_SWITCH_STATE_IDLE 

Switching state Idle.

NRF_RADIO_DFE_SWITCH_STATE_OFFSET 

Switching state Offset.

NRF_RADIO_DFE_SWITCH_STATE_GUARD 

Switching state Guard.

NRF_RADIO_DFE_SWITCH_STATE_REF 

Switching state Ref.

NRF_RADIO_DFE_SWITCH_STATE_SWITCHING 

Switching state Switching.

NRF_RADIO_DFE_SWITCH_STATE_ENDING 

Switching state Ending.

◆ nrf_radio_dfectrl_extension_t

State when CTE extension is added and antenna switching/sampling is done.

Enumerator
NRF_RADIO_DFECTRL_EXTENSION_CRC 

AoA/AoD procedure triggered at end of CRC.

NRF_RADIO_DFECTRL_EXTENSION_PAYLOAD 

Antenna switching/sampling done in the packet payload.

◆ nrf_radio_dfectrl_sample_spacing_t

Interval between samples.

Enumerator
NRF_RADIO_DFECTRL_SAMPLE_SPACING_125NS 

125 ns interval between samples.

NRF_RADIO_DFECTRL_SAMPLE_SPACING_250NS 

250 ns interval between samples.

NRF_RADIO_DFECTRL_SAMPLE_SPACING_500NS 

500 ns interval between samples.

NRF_RADIO_DFECTRL_SAMPLE_SPACING_1US 

1 us interval between samples.

NRF_RADIO_DFECTRL_SAMPLE_SPACING_2US 

2 us interval between samples.

NRF_RADIO_DFECTRL_SAMPLE_SPACING_4US 

4 us interval between samples.

◆ nrf_radio_dfectrl_sample_type_t

Direction finding sample type.

Enumerator
NRF_RADIO_DFECTRL_SAMPLE_TYPE_IQ 

Complex samples in I and Q.

NRF_RADIO_DFECTRL_SAMPLE_TYPE_MAGPHASE 

Complex samples as magnitude and phase.

◆ nrf_radio_dfectrl_switch_spacing_t

Interval between antenna changes in the switching state.

Enumerator
NRF_RADIO_DFECTRL_SWITCH_SPACING_1US 

1 us interval between antenna change.

NRF_RADIO_DFECTRL_SWITCH_SPACING_2US 

2 us interval between antenna change.

NRF_RADIO_DFECTRL_SWITCH_SPACING_4US 

4 us interval between antenna change.

◆ nrf_radio_event_t

RADIO events.

Enumerator
NRF_RADIO_EVENT_READY 

Radio has ramped up and is ready to be started.

NRF_RADIO_EVENT_ADDRESS 

Address sent or received.

NRF_RADIO_EVENT_PAYLOAD 

Packet payload sent or received.

NRF_RADIO_EVENT_END 

Packet transmitted or received.

NRF_RADIO_EVENT_DISABLED 

RADIO has been disabled.

NRF_RADIO_EVENT_DEVMATCH 

A device address match occurred on the last received packet.

NRF_RADIO_EVENT_DEVMISS 

No device address match occurred on the last received packet.

NRF_RADIO_EVENT_RSSIEND 

Sampling of receive signal strength complete.

NRF_RADIO_EVENT_BCMATCH 

Bit counter reached bit count value.

NRF_RADIO_EVENT_CRCOK 

Packet received with correct CRC.

NRF_RADIO_EVENT_CRCERROR 

Packet received with incorrect CRC.

NRF_RADIO_EVENT_FRAMESTART 

IEEE 802.15.4 length field received.

NRF_RADIO_EVENT_EDEND 

Energy Detection procedure ended.

NRF_RADIO_EVENT_EDSTOPPED 

The sampling of Energy Detection has stopped.

NRF_RADIO_EVENT_CCAIDLE 

Wireless medium in idle - clear to send.

NRF_RADIO_EVENT_CCABUSY 

Wireless medium busy - do not send.

NRF_RADIO_EVENT_CCASTOPPED 

The CCA has stopped.

NRF_RADIO_EVENT_RATEBOOST 

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

NRF_RADIO_EVENT_TXREADY 

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

NRF_RADIO_EVENT_RXREADY 

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

NRF_RADIO_EVENT_MHRMATCH 

MAC Header match found.

NRF_RADIO_EVENT_PHYEND 

Generated in Ble_LR125Kbit, Ble_LR500Kbit and BleIeee802154_250Kbit modes when last bit is sent on the air.

NRF_RADIO_EVENT_SYNC 

Generated in Ble_LR125Kbit, Ble_LR500Kbit and BleIeee802154_250Kbit modes when possible preamble has been received.

NRF_RADIO_EVENT_CTEPRESENT 

CTE is present.

◆ nrf_radio_int_mask_t

RADIO interrupts.

Enumerator
NRF_RADIO_INT_READY_MASK 

Interrupt on READY event.

NRF_RADIO_INT_ADDRESS_MASK 

Interrupt on ADDRESS event.

NRF_RADIO_INT_PAYLOAD_MASK 

Interrupt on PAYLOAD event.

NRF_RADIO_INT_END_MASK 

Interrupt on END event.

NRF_RADIO_INT_DISABLED_MASK 

Interrupt on DISABLED event.

NRF_RADIO_INT_DEVMATCH_MASK 

Interrupt on DEVMATCH event.

NRF_RADIO_INT_DEVMISS_MASK 

Interrupt on DEVMISS event.

NRF_RADIO_INT_RSSIEND_MASK 

Interrupt on RSSIEND event.

NRF_RADIO_INT_BCMATCH_MASK 

Interrupt on BCMATCH event.

NRF_RADIO_INT_CRCOK_MASK 

Interrupt on CRCOK event.

NRF_RADIO_INT_CRCERROR_MASK 

Interrupt on CRCERROR event.

NRF_RADIO_INT_FRAMESTART_MASK 

Interrupt on FRAMESTART event.

NRF_RADIO_INT_EDEND_MASK 

Interrupt on EDEND event.

NRF_RADIO_INT_EDSTOPPED_MASK 

Interrupt on EDSTOPPED event.

NRF_RADIO_INT_CCAIDLE_MASK 

Interrupt on CCAIDLE event.

NRF_RADIO_INT_CCABUSY_MASK 

Interrupt on CCABUSY event.

NRF_RADIO_INT_CCASTOPPED_MASK 

Interrupt on CCASTOPPED event.

NRF_RADIO_INT_RATEBOOST_MASK 

Interrupt on RATEBOOST event.

NRF_RADIO_INT_TXREADY_MASK 

Interrupt on TXREADY event.

NRF_RADIO_INT_RXREADY_MASK 

Interrupt on RXREADY event.

NRF_RADIO_INT_MHRMATCH_MASK 

Interrupt on MHRMATCH event.

NRF_RADIO_INT_PHYEND_MASK 

Interrupt on PHYEND event.

NRF_RADIO_INT_SYNC_MASK 

Interrupt on SYNC event.

NRF_RADIO_INT_CTEPRESENT_MASK 

Interrupt on CTEPRESENT event.

◆ nrf_radio_mode_t

Types of RADIO modes (data rate and modulation).

Enumerator
NRF_RADIO_MODE_NRF_1MBIT 

1Mbit/s Nordic proprietary radio mode.

NRF_RADIO_MODE_NRF_2MBIT 

2Mbit/s Nordic proprietary radio mode.

NRF_RADIO_MODE_NRF_250KBIT 

250Kbit/s Nordic proprietary radio mode.

NRF_RADIO_MODE_BLE_1MBIT 

1 Mbit/s Bluetooth Low Energy.

NRF_RADIO_MODE_BLE_2MBIT 

2 Mbit/s Bluetooth Low Energy.

NRF_RADIO_MODE_BLE_LR125KBIT 

Bluetooth Low Energy Long range 125 kbit/s TX, 125 kbit/s and 500 kbit/s RX

NRF_RADIO_MODE_BLE_LR500KBIT 

Bluetooth Low Energy Long range 500 kbit/s TX, 125 kbit/s and 500 kbit/s RX

NRF_RADIO_MODE_IEEE802154_250KBIT 

IEEE 802.15.4-2006 250 kbit/s.

◆ nrf_radio_preamble_length_t

Types of preamble length.

Enumerator
NRF_RADIO_PREAMBLE_LENGTH_8BIT 

8-bit preamble.

NRF_RADIO_PREAMBLE_LENGTH_16BIT 

16-bit preamble.

NRF_RADIO_PREAMBLE_LENGTH_32BIT_ZERO 

32-bit zero preamble used for IEEE 802.15.4.

NRF_RADIO_PREAMBLE_LENGTH_LONG_RANGE 

Preamble - used for BTLE Long Range.

◆ nrf_radio_short_mask_t

RADIO shortcuts.

Enumerator
NRF_RADIO_SHORT_READY_START_MASK 

Shortcut between READY event and START task.

NRF_RADIO_SHORT_END_DISABLE_MASK 

Shortcut between END event and DISABLE task.

NRF_RADIO_SHORT_DISABLED_TXEN_MASK 

Shortcut between DISABLED event and TXEN task.

NRF_RADIO_SHORT_DISABLED_RXEN_MASK 

Shortcut between DISABLED event and RXEN task.

NRF_RADIO_SHORT_ADDRESS_RSSISTART_MASK 

Shortcut between ADDRESS event and RSSISTART task.

NRF_RADIO_SHORT_END_START_MASK 

Shortcut between END event and START task.

NRF_RADIO_SHORT_ADDRESS_BCSTART_MASK 

Shortcut between ADDRESS event and BCSTART task.

NRF_RADIO_SHORT_DISABLED_RSSISTOP_MASK 

Shortcut between DISABLED event and RSSISTOP task.

NRF_RADIO_SHORT_RXREADY_CCASTART_MASK 

Shortcut between RXREADY event and CCASTART task.

NRF_RADIO_SHORT_CCAIDLE_TXEN_MASK 

Shortcut between CCAIDLE event and TXEN task.

NRF_RADIO_SHORT_CCABUSY_DISABLE_MASK 

Shortcut between CCABUSY event and DISABLE task.

NRF_RADIO_SHORT_FRAMESTART_BCSTART_MASK 

Shortcut between FRAMESTART event and BCSTART task.

NRF_RADIO_SHORT_READY_EDSTART_MASK 

Shortcut between READY event and EDSTART task.

NRF_RADIO_SHORT_EDEND_DISABLE_MASK 

Shortcut between EDEND event and DISABLE task.

NRF_RADIO_SHORT_CCAIDLE_STOP_MASK 

Shortcut between CCAIDLE event and STOP task.

NRF_RADIO_SHORT_TXREADY_START_MASK 

Shortcut between TXREADY event and START task.

NRF_RADIO_SHORT_RXREADY_START_MASK 

Shortcut between RXREADY event and START task.

NRF_RADIO_SHORT_PHYEND_DISABLE_MASK 

Shortcut between PHYEND event and DISABLE task.

NRF_RADIO_SHORT_PHYEND_START_MASK 

Shortcut between PHYEND event and START task.

◆ nrf_radio_state_t

Types of RADIO states.

Enumerator
NRF_RADIO_STATE_DISABLED 

No operations are going on inside the radio and the power consumption is at a minimum.

NRF_RADIO_STATE_RXRU 

The radio is ramping up and preparing for reception.

NRF_RADIO_STATE_RXIDLE 

The radio is ready for reception to start.

NRF_RADIO_STATE_RX 

Reception has been started.

NRF_RADIO_STATE_RXDISABLE 

The radio is disabling the receiver.

NRF_RADIO_STATE_TXRU 

The radio is ramping up and preparing for transmission.

NRF_RADIO_STATE_TXIDLE 

The radio is ready for transmission to start.

NRF_RADIO_STATE_TX 

The radio is transmitting a packet.

NRF_RADIO_STATE_TXDISABLE 

The radio is disabling the transmitter.

◆ nrf_radio_task_t

RADIO tasks.

Enumerator
NRF_RADIO_TASK_TXEN 

Enable RADIO in TX mode.

NRF_RADIO_TASK_RXEN 

Enable RADIO in RX mode.

NRF_RADIO_TASK_START 

Start RADIO.

NRF_RADIO_TASK_STOP 

Stop RADIO.

NRF_RADIO_TASK_DISABLE 

Disable RADIO.

NRF_RADIO_TASK_RSSISTART 

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

NRF_RADIO_TASK_RSSISTOP 

Stop the RSSI measurement.

NRF_RADIO_TASK_BCSTART 

Start the bit counter.

NRF_RADIO_TASK_BCSTOP 

Stop the bit counter.

NRF_RADIO_TASK_EDSTART 

Start the Energy Detect measurement used in IEEE 802.15.4 mode.

NRF_RADIO_TASK_EDSTOP 

Stop the Energy Detect measurement.

NRF_RADIO_TASK_CCASTART 

Start the Clear Channel Assessment used in IEEE 802.15.4 mode.

NRF_RADIO_TASK_CCASTOP 

Stop the Clear Channel Assessment.

◆ nrf_radio_txpower_t

Types of RADIO TX power.

Enumerator
NRF_RADIO_TXPOWER_POS8DBM 

8 dBm.

NRF_RADIO_TXPOWER_POS7DBM 

7 dBm.

NRF_RADIO_TXPOWER_POS6DBM 

6 dBm.

NRF_RADIO_TXPOWER_POS5DBM 

5 dBm.

NRF_RADIO_TXPOWER_POS4DBM 

4 dBm.

NRF_RADIO_TXPOWER_POS3DBM 

3 dBm.

NRF_RADIO_TXPOWER_POS2DBM 

2 dBm.

NRF_RADIO_TXPOWER_0DBM 

0 dBm.

NRF_RADIO_TXPOWER_NEG1DBM 

-1 dBm.

NRF_RADIO_TXPOWER_NEG2DBM 

-2 dBm.

NRF_RADIO_TXPOWER_NEG3DBM 

-3 dBm.

NRF_RADIO_TXPOWER_NEG4DBM 

-4 dBm.

NRF_RADIO_TXPOWER_NEG5DBM 

-5 dBm.

NRF_RADIO_TXPOWER_NEG6DBM 

-6 dBm.

NRF_RADIO_TXPOWER_NEG7DBM 

-7 dBm.

NRF_RADIO_TXPOWER_NEG8DBM 

-8 dBm.

NRF_RADIO_TXPOWER_NEG12DBM 

-12 dBm.

NRF_RADIO_TXPOWER_NEG16DBM 

-16 dBm.

NRF_RADIO_TXPOWER_NEG20DBM 

-20 dBm.

NRF_RADIO_TXPOWER_NEG30DBM 

-30 dBm.

NRF_RADIO_TXPOWER_NEG40DBM 

-40 dBm.

Function Documentation

◆ nrf_radio_base0_get()

NRF_STATIC_INLINE uint32_t nrf_radio_base0_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the base address 0.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Base address 0.

◆ nrf_radio_base0_set()

NRF_STATIC_INLINE void nrf_radio_base0_set ( NRF_RADIO_Type *  p_reg,
uint32_t  address 
)

Function for setting the base address 0.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]addressBase address 0 value.

◆ nrf_radio_base1_get()

NRF_STATIC_INLINE uint32_t nrf_radio_base1_get ( NRF_RADIO_Type const *  p_reg)

Function for getting base address 1.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Base address 1.

◆ nrf_radio_base1_set()

NRF_STATIC_INLINE void nrf_radio_base1_set ( NRF_RADIO_Type *  p_reg,
uint32_t  address 
)

Function for setting Base address 1.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]addressBase address 1 value.

◆ nrf_radio_bcc_get()

NRF_STATIC_INLINE uint32_t nrf_radio_bcc_get ( NRF_RADIO_Type const *  p_reg)

Function for getting Bit counter compare.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Bit counter compare.

◆ nrf_radio_bcc_set()

NRF_STATIC_INLINE void nrf_radio_bcc_set ( NRF_RADIO_Type *  p_reg,
uint32_t  radio_bcc 
)

Function for setting Bit counter compare.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_bccBit counter compare [bits].

◆ nrf_radio_cca_configure()

NRF_STATIC_INLINE void nrf_radio_cca_configure ( NRF_RADIO_Type *  p_reg,
nrf_radio_cca_mode_t  cca_mode,
uint8_t  cca_ed_threshold,
uint8_t  cca_corr_threshold,
uint8_t  cca_corr_cnt 
)

Function for configuring the IEEE 802.15.4 clear channel assessment.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]cca_modeMode of CCA.
[in]cca_ed_thresholdEnergy Detection threshold value.
[in]cca_corr_thresholdCorrelator Busy Threshold.
[in]cca_corr_cntLimit of occurances above Correlator Threshold. When not equal to zero the correlator based signal detect is enabled.

◆ nrf_radio_cistat_get()

NRF_STATIC_INLINE uint8_t nrf_radio_cistat_get ( NRF_RADIO_Type const *  p_reg)

Function for getting status on what rate packet is received with in Long Range.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
0The frame is received at 125kbps.
1The frame is received at 500kbps.

◆ nrf_radio_crc_configure()

NRF_STATIC_INLINE void nrf_radio_crc_configure ( NRF_RADIO_Type *  p_reg,
uint8_t  crc_length,
nrf_radio_crc_addr_t  crc_address,
uint32_t  crc_polynominal 
)

Function for configure CRC.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]crc_lengthCRC length in number of bytes [0-3].
[in]crc_addressInclude or exclude packet address field out of CRC.
[in]crc_polynominalCRC polynominal to set.

◆ nrf_radio_crc_status_check()

NRF_STATIC_INLINE bool nrf_radio_crc_status_check ( NRF_RADIO_Type const *  p_reg)

Function for getting CRC status of last received packet.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
trueThe packet was received without CRC error.
falseThe packet was received with CRC error.

◆ nrf_radio_crcinit_get()

NRF_STATIC_INLINE uint32_t nrf_radio_crcinit_get ( NRF_RADIO_Type const *  p_reg)

Function for getting CRC initial value.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
CRC initial value.

◆ nrf_radio_crcinit_set()

NRF_STATIC_INLINE void nrf_radio_crcinit_set ( NRF_RADIO_Type *  p_reg,
uint32_t  crc_init_value 
)

Function for setting CRC initial value.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]crc_init_valueCRC initial value

◆ nrf_radio_cte_rfu_get()

NRF_STATIC_INLINE uint32_t nrf_radio_cte_rfu_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the CTE RFU parsed from received packet.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
CTE RFU.

◆ nrf_radio_cte_time_get()

NRF_STATIC_INLINE uint32_t nrf_radio_cte_time_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the CTE time parsed from received packet.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
CTE time.

◆ nrf_radio_cte_type_get()

NRF_STATIC_INLINE uint32_t nrf_radio_cte_type_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the CTE type parsed from received packet.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
CTE type.

◆ nrf_radio_cteinline_configure()

NRF_STATIC_INLINE void nrf_radio_cteinline_configure ( NRF_RADIO_Type *  p_reg,
nrf_radio_cteinline_conf_t const *  p_config 
)

Function for setting the configuration of CTE inline mode.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_configPointer to the structure with CTE inline mode configuration.

◆ nrf_radio_dab_get()

NRF_STATIC_INLINE uint32_t nrf_radio_dab_get ( NRF_RADIO_Type const *  p_reg,
uint8_t  segment 
)

Function for getting Device address base segment.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]segmentNumber of the Device address base segment.
Returns
Particular segment of the Device address base.

◆ nrf_radio_dab_set()

NRF_STATIC_INLINE void nrf_radio_dab_set ( NRF_RADIO_Type *  p_reg,
uint32_t  dab_value,
uint8_t  segment 
)

Function for setting Device address base segment.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]dab_valueParticular base segment value.
[in]segmentIndex of the particular Device address base segment register.

◆ nrf_radio_dacnf_ena_get()

NRF_STATIC_INLINE uint8_t nrf_radio_dacnf_ena_get ( NRF_RADIO_Type const *  p_reg)

Function for getting ENA field of the Device address match configuration register.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
ENA field of the Device address match configuration register.

◆ nrf_radio_dacnf_set()

NRF_STATIC_INLINE void nrf_radio_dacnf_set ( NRF_RADIO_Type *  p_reg,
uint8_t  ena,
uint8_t  txadd 
)

Function for setting device address match configuration.

Note
Read more about configuring device address match in the Product Specification.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]enaDevice address matching bitmask.
[in]txaddTxAdd bitmask.

◆ nrf_radio_dacnf_txadd_get()

NRF_STATIC_INLINE uint8_t nrf_radio_dacnf_txadd_get ( NRF_RADIO_Type const *  p_reg)

Function for getting TXADD field of the Device address match configuration register.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
TXADD field of the Device address match configuration register.

◆ nrf_radio_dai_get()

NRF_STATIC_INLINE uint8_t nrf_radio_dai_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the device address match index.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Device adress match index.

◆ nrf_radio_dap_get()

NRF_STATIC_INLINE uint32_t nrf_radio_dap_get ( NRF_RADIO_Type const *  p_reg,
uint8_t  prefix_index 
)

Function for getting Device address prefix.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]prefix_indexNumber of the Device address prefix segment.
Returns
Particular segment of the Device address prefix.

◆ nrf_radio_dap_set()

NRF_STATIC_INLINE void nrf_radio_dap_set ( NRF_RADIO_Type *  p_reg,
uint16_t  dap_value,
uint8_t  prefix_index 
)

Function for setting device address prefix.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]dap_valueParticular device address prefix value.
[in]prefix_indexIndex of the particular device address prefix register.

◆ nrf_radio_datawhiteiv_get()

NRF_STATIC_INLINE uint8_t nrf_radio_datawhiteiv_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the data whitening initial value.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Data whitening initial value.

◆ nrf_radio_datawhiteiv_set()

NRF_STATIC_INLINE void nrf_radio_datawhiteiv_set ( NRF_RADIO_Type *  p_reg,
uint8_t  datawhiteiv 
)

Function for setting the data whitening initial value.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]datawhiteivData whitening initial value.

◆ nrf_radio_dfe_amount_get()

NRF_STATIC_INLINE uint32_t nrf_radio_dfe_amount_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the number of stored IQ samples or magnitude and phase pairs of the samples during last transaction.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
Amountof samples.

◆ nrf_radio_dfe_buffer_set()

NRF_STATIC_INLINE void nrf_radio_dfe_buffer_set ( NRF_RADIO_Type *  p_reg,
uint32_t *  p_buffer,
size_t  length 
)

Function for setting the buffer for storing IQ samples or magnitude and phase pairs of the samples.

Note
Each sample or pair is stored on a 32-bit word.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_bufferPointer to the buffer for storing IQ samples or magnitude and phase of the samples.
[in]lengthMaximum number of samples to receive.

◆ nrf_radio_dfe_pattern_add()

NRF_STATIC_INLINE void nrf_radio_dfe_pattern_add ( NRF_RADIO_Type *  p_reg,
uint8_t  pin_mask 
)

Function for adding single pattern to the array of GPIO patterns for antenna control.

The GPIO pattern array size is 40 entries. This function configures single pattern consisting of 8 pins. To set subsequent pattern, call this function again. To get total number of currently configured patterns use nrf_radio_dfe_pattern_cnt_get(). To clear the array of GPIO patterns use nrf_radio_dfe_pattern_clear().

Warning
A minimum number of 3 patterns must be written.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]pin_maskBitmask specifying pins to be used in this switching pattern. Each bit corresponds to the index of the pin configured with nrf_radio_dfe_pattern_pin_set().

◆ nrf_radio_dfe_pattern_clear()

NRF_STATIC_INLINE void nrf_radio_dfe_pattern_clear ( NRF_RADIO_Type *  p_reg)

Function for clearing all of the currently configured GPIO patterns for antenna control.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.

◆ nrf_radio_dfe_pattern_cnt_get()

NRF_STATIC_INLINE uint32_t nrf_radio_dfe_pattern_cnt_get ( NRF_RADIO_Type const *  p_reg)

Function for getting number of currently configured GPIO patterns for antenna control.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Number of patterns.

◆ nrf_radio_dfe_pattern_pin_set()

NRF_STATIC_INLINE void nrf_radio_dfe_pattern_pin_set ( NRF_RADIO_Type *  p_reg,
uint32_t  pin,
uint8_t  pos 
)

Function for configuring the specified GPIO pin for antenna control.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]pinPin number.
[in]posPosition of the pin in the switching pattern configured with nrf_radio_dfe_pattern_add() or nrf_radio_dfe_patterns_add().

◆ nrf_radio_dfe_patterns_add()

NRF_STATIC_INLINE void nrf_radio_dfe_patterns_add ( NRF_RADIO_Type *  p_reg,
uint8_t const *  p_pin_masks,
size_t  length 
)

Function for adding multiple patterns to the array of GPIO patterns for antenna control.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_pin_masksPointer to the array of bitmasks specifying pins to be used in subsequent switching patterns.
[in]lengthBitmask array length.
See also
nrf_radio_dfe_pattern_add()

◆ nrf_radio_dfe_sample_state_get()

NRF_STATIC_INLINE nrf_radio_dfe_sample_state_t nrf_radio_dfe_sample_state_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the current state of DFE sampling state machine.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
State of sampling state machine.

◆ nrf_radio_dfe_switch_state_get()

NRF_STATIC_INLINE nrf_radio_dfe_switch_state_t nrf_radio_dfe_switch_state_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the current state of DFE switching state machine.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
State of switching state machine.

◆ nrf_radio_dfectrl_configure()

NRF_STATIC_INLINE void nrf_radio_dfectrl_configure ( NRF_RADIO_Type *  p_reg,
nrf_radio_dfectrl_conf_t const *  p_config 
)

Function for setting the direction finding configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_configPointer to the structure with direction finding configuration.

◆ nrf_radio_ed_loop_count_set()

NRF_STATIC_INLINE void nrf_radio_ed_loop_count_set ( NRF_RADIO_Type *  p_reg,
uint32_t  ed_loop_count 
)

Function for setting number of iterations to perform ED scan.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]ed_loop_countNumber of iterations during ED procedure.

◆ nrf_radio_ed_sample_get()

NRF_STATIC_INLINE uint8_t nrf_radio_ed_sample_get ( NRF_RADIO_Type const *  p_reg)

Function for getting Energy Detection level.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
IEEE 802.15.4 energy detect level.

◆ nrf_radio_event_address_get()

NRF_STATIC_INLINE uint32_t nrf_radio_event_address_get ( NRF_RADIO_Type const *  p_reg,
nrf_radio_event_t  event 
)

Function for getting the address of a specific RADIO event register.

This function can be used by the PPI module.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventRequested Event.
Returns
Address of the specified event register.

◆ nrf_radio_event_check()

NRF_STATIC_INLINE bool nrf_radio_event_check ( NRF_RADIO_Type const *  p_reg,
nrf_radio_event_t  event 
)

Function for retrieving the state of the RADIO event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to be checked.
Return values
trueThe event has been generated.
falseThe event has not been generated.

◆ nrf_radio_event_clear()

NRF_STATIC_INLINE void nrf_radio_event_clear ( NRF_RADIO_Type *  p_reg,
nrf_radio_event_t  event 
)

Function for clearing a specific RADIO event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to clean.

◆ nrf_radio_frequency_get()

NRF_STATIC_INLINE uint16_t nrf_radio_frequency_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the radio frequency.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Frequency in MHz.

◆ nrf_radio_frequency_set()

NRF_STATIC_INLINE void nrf_radio_frequency_set ( NRF_RADIO_Type *  p_reg,
uint16_t  radio_frequency 
)

Function for setting the radio frequency.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_frequencyFrequency in MHz.

◆ nrf_radio_ifs_get()

NRF_STATIC_INLINE uint32_t nrf_radio_ifs_get ( NRF_RADIO_Type const *  p_reg)

Function for getting Inter Frame Spacing interval.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Inter frame spacing interval [us].

◆ nrf_radio_ifs_set()

NRF_STATIC_INLINE void nrf_radio_ifs_set ( NRF_RADIO_Type *  p_reg,
uint32_t  radio_ifs 
)

Function for setting Inter Frame Spacing interval.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_ifsInter frame spacing interval [us].

◆ nrf_radio_int_disable()

NRF_STATIC_INLINE void nrf_radio_int_disable ( NRF_RADIO_Type *  p_reg,
uint32_t  mask 
)

Function for disabling specified RADIO interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be disabled.

◆ nrf_radio_int_enable()

NRF_STATIC_INLINE void nrf_radio_int_enable ( NRF_RADIO_Type *  p_reg,
uint32_t  mask 
)

Function for enabling specified RADIO interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be enabled.

◆ nrf_radio_int_enable_check()

NRF_STATIC_INLINE uint32_t nrf_radio_int_enable_check ( NRF_RADIO_Type const *  p_reg,
uint32_t  mask 
)

Function for checking if the specified interrupts are enabled.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be checked.
Returns
Mask of enabled interrupts.

◆ nrf_radio_mhmu_pattern_mask_get()

NRF_STATIC_INLINE uint32_t nrf_radio_mhmu_pattern_mask_get ( NRF_RADIO_Type const *  p_reg)

Function for getting MAC Header Match Unit pattern mask configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Pattern mask.

◆ nrf_radio_mhmu_pattern_mask_set()

NRF_STATIC_INLINE void nrf_radio_mhmu_pattern_mask_set ( NRF_RADIO_Type *  p_reg,
uint32_t  radio_mhmu_pattern_mask 
)

Function for setting MAC Header Match Unit pattern mask configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_mhmu_pattern_maskPattern mask.

◆ nrf_radio_mhmu_search_pattern_get()

NRF_STATIC_INLINE uint32_t nrf_radio_mhmu_search_pattern_get ( NRF_RADIO_Type const *  p_reg)

Function for getting MAC Header Match Unit search pattern configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Search Pattern Configuration.

◆ nrf_radio_mhmu_search_pattern_set()

NRF_STATIC_INLINE void nrf_radio_mhmu_search_pattern_set ( NRF_RADIO_Type *  p_reg,
uint32_t  radio_mhmu_search_pattern 
)

Function for setting MAC Header Match Unit search pattern configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_mhmu_search_patternSearch Pattern Configuration.

◆ nrf_radio_mode_get()

NRF_STATIC_INLINE nrf_radio_mode_t nrf_radio_mode_get ( NRF_RADIO_Type const *  p_reg)

Function for getting Radio data rate and modulation settings.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Radio data rate and modulation.

◆ nrf_radio_mode_set()

NRF_STATIC_INLINE void nrf_radio_mode_set ( NRF_RADIO_Type *  p_reg,
nrf_radio_mode_t  radio_mode 
)

Function for setting the radio data rate and modulation settings.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_modeRadio data rate and modulation.

◆ nrf_radio_modecnf0_dtx_get()

NRF_STATIC_INLINE uint8_t nrf_radio_modecnf0_dtx_get ( NRF_RADIO_Type const *  p_reg)

Function for getting default TX value of the Radio mode configuration register 0.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Default TX value.

◆ nrf_radio_modecnf0_ru_get()

NRF_STATIC_INLINE bool nrf_radio_modecnf0_ru_get ( NRF_RADIO_Type const *  p_reg)

Function for getting ramp-up time configuration of the Radio mode configuration register 0.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
trueIf the ramp-up time is set to fast.
falseIf the ramp-up time is set to default.

◆ nrf_radio_modecnf0_set()

NRF_STATIC_INLINE void nrf_radio_modecnf0_set ( NRF_RADIO_Type *  p_reg,
bool  fast_ramp_up,
uint8_t  default_tx 
)

Function for setting Radio mode configuration register 0.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]fast_ramp_upUse fast radio ramp-up time
[in]default_txDefault TX value during inactivity.

◆ nrf_radio_packet_configure()

NRF_STATIC_INLINE void nrf_radio_packet_configure ( NRF_RADIO_Type *  p_reg,
nrf_radio_packet_conf_t const *  p_config 
)

Function for setting the packet configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_configPointer to the structure with packet configuration.

◆ nrf_radio_packetptr_get()

NRF_STATIC_INLINE void * nrf_radio_packetptr_get ( NRF_RADIO_Type const *  p_reg)

Function for getting packet pointer.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Pointer to tx or rx packet buffer.

◆ nrf_radio_packetptr_set()

NRF_STATIC_INLINE void nrf_radio_packetptr_set ( NRF_RADIO_Type *  p_reg,
void const *  p_packet 
)

Function for setting packet pointer to given location in memory.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_packetPacket pointer.

◆ nrf_radio_pdustat_get()

NRF_STATIC_INLINE uint8_t nrf_radio_pdustat_get ( NRF_RADIO_Type const *  p_reg)

Function for getting status on payload length.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
0The payload is lesser than PCNF1.MAXLEN.
1The payload is greater than PCNF1.MAXLEN.

◆ nrf_radio_power_set()

NRF_STATIC_INLINE void nrf_radio_power_set ( NRF_RADIO_Type *  p_reg,
bool  radio_power 
)

Function for setting power mode of the radio peripheral.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]radio_powerIf radio should be powered on.

◆ nrf_radio_prefix0_get()

NRF_STATIC_INLINE uint32_t nrf_radio_prefix0_get ( NRF_RADIO_Type const *  p_reg)

Function for getting prefixes bytes for logical addresses 0-3.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Prefixes bytes for logical addresses 0-3

◆ nrf_radio_prefix0_set()

NRF_STATIC_INLINE void nrf_radio_prefix0_set ( NRF_RADIO_Type *  p_reg,
uint32_t  prefixes 
)

Function for setting prefixes bytes for logical addresses 0-3.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]prefixesPrefixes bytes for logical addresses 0-3.

◆ nrf_radio_prefix1_get()

NRF_STATIC_INLINE uint32_t nrf_radio_prefix1_get ( NRF_RADIO_Type const *  p_reg)

Function for getting prefixes bytes for logical addresses 4-7.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Prefixes bytes for logical addresses 4-7

◆ nrf_radio_prefix1_set()

NRF_STATIC_INLINE void nrf_radio_prefix1_set ( NRF_RADIO_Type *  p_reg,
uint32_t  prefixes 
)

Function for setting prefixes bytes for logical addresses 4-7.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]prefixesPrefixes bytes for logical addresses 4-7.

◆ nrf_radio_publish_clear()

NRF_STATIC_INLINE void nrf_radio_publish_clear ( NRF_RADIO_Type *  p_reg,
nrf_radio_event_t  event 
)

Function for clearing the publish configuration for a given RADIO event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to clear the configuration.

◆ nrf_radio_publish_set()

NRF_STATIC_INLINE void nrf_radio_publish_set ( NRF_RADIO_Type *  p_reg,
nrf_radio_event_t  event,
uint8_t  channel 
)

Function for setting the publish configuration for a given RADIO event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to set the configuration.
[in]channelChannel through which to publish the event.

◆ nrf_radio_rssi_sample_get()

NRF_STATIC_INLINE uint8_t nrf_radio_rssi_sample_get ( NRF_RADIO_Type const *  p_reg)

Function for getting RSSI sample result.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Note
The read value is a positive value while the actual received signal is a negative value. Actual received signal strength is therefore as follows: received signal strength = - read_value dBm .
Returns
RSSI sample result.

◆ nrf_radio_rxaddresses_get()

NRF_STATIC_INLINE uint8_t nrf_radio_rxaddresses_get ( NRF_RADIO_Type const *  p_reg)

Function for getting receive address select.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Receive address select.

◆ nrf_radio_rxaddresses_set()

NRF_STATIC_INLINE void nrf_radio_rxaddresses_set ( NRF_RADIO_Type *  p_reg,
uint8_t  rxaddresses 
)

Function for for selecting the receive addresses.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]rxaddressesEnable or disable reception on logical address i. Read more in the Product Specification.

◆ nrf_radio_rxcrc_get()

NRF_STATIC_INLINE uint32_t nrf_radio_rxcrc_get ( NRF_RADIO_Type const *  p_reg)

Function for getting CRC field of the last received packet.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
CRC field of previously received packet.

◆ nrf_radio_rxmatch_get()

NRF_STATIC_INLINE uint8_t nrf_radio_rxmatch_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the received address.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Received address.

◆ nrf_radio_sfd_get()

NRF_STATIC_INLINE uint8_t nrf_radio_sfd_get ( NRF_RADIO_Type const *  p_reg)

Function for getting IEEE 802.15.4 start of frame delimiter.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
IEEE 802.15.4 start of frame delimiter.

◆ nrf_radio_sfd_set()

NRF_STATIC_INLINE void nrf_radio_sfd_set ( NRF_RADIO_Type *  p_reg,
uint8_t  sfd 
)

Function for setting IEEE 802.15.4 start of frame delimiter.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]sfdIEEE 802.15.4 start of frame delimiter.

◆ nrf_radio_shorts_disable()

NRF_STATIC_INLINE void nrf_radio_shorts_disable ( NRF_RADIO_Type *  p_reg,
uint32_t  shorts_mask 
)

Function for disabling specified RADIO shortcuts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]shorts_maskMask of shortcuts.

◆ nrf_radio_shorts_enable()

NRF_STATIC_INLINE void nrf_radio_shorts_enable ( NRF_RADIO_Type *  p_reg,
uint32_t  shorts_mask 
)

Function for enabling specified RADIO shortcuts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]shorts_maskMask of shortcuts.

◆ nrf_radio_shorts_get()

NRF_STATIC_INLINE uint32_t nrf_radio_shorts_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the configuration of RADIO shortcuts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Mask of currently enabled shortcuts.

◆ nrf_radio_shorts_set()

NRF_STATIC_INLINE void nrf_radio_shorts_set ( NRF_RADIO_Type *  p_reg,
uint32_t  shorts_mask 
)

Function for setting the configuration of RADIO shortcuts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]shorts_maskShortcuts configuration to set.

◆ nrf_radio_state_get()

NRF_STATIC_INLINE nrf_radio_state_t nrf_radio_state_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the current state of the radio module.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Current radio state.

◆ nrf_radio_subscribe_clear()

NRF_STATIC_INLINE void nrf_radio_subscribe_clear ( NRF_RADIO_Type *  p_reg,
nrf_radio_task_t  task 
)

Function for clearing the subscribe configuration for a given RADIO task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to clear the configuration.

◆ nrf_radio_subscribe_set()

NRF_STATIC_INLINE void nrf_radio_subscribe_set ( NRF_RADIO_Type *  p_reg,
nrf_radio_task_t  task,
uint8_t  channel 
)

Function for setting the subscribe configuration for a given RADIO task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to set the configuration.
[in]channelChannel through which to subscribe events.

◆ nrf_radio_task_address_get()

NRF_STATIC_INLINE uint32_t nrf_radio_task_address_get ( NRF_RADIO_Type const *  p_reg,
nrf_radio_task_t  task 
)

Function for getting the address of a specific RADIO task register.

This function can be used by the PPI module.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskRequested task.
Returns
Address of the specified task register.

◆ nrf_radio_task_trigger()

NRF_STATIC_INLINE void nrf_radio_task_trigger ( NRF_RADIO_Type *  p_reg,
nrf_radio_task_t  task 
)

Function for activating a specific RADIO task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask to be activated.

◆ nrf_radio_txaddress_get()

NRF_STATIC_INLINE uint8_t nrf_radio_txaddress_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the transmit address select.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Logical address to be used when transmitting a packet.

◆ nrf_radio_txaddress_set()

NRF_STATIC_INLINE void nrf_radio_txaddress_set ( NRF_RADIO_Type *  p_reg,
uint8_t  txaddress 
)

Function for setting the transmit address.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]txaddressLogical address to be used when transmitting a packet.

◆ nrf_radio_txpower_get()

NRF_STATIC_INLINE nrf_radio_txpower_t nrf_radio_txpower_get ( NRF_RADIO_Type const *  p_reg)

Function for getting the radio transmit power.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Transmit power of the radio.

◆ nrf_radio_txpower_set()

NRF_STATIC_INLINE void nrf_radio_txpower_set ( NRF_RADIO_Type *  p_reg,
nrf_radio_txpower_t  tx_power 
)

Function for setting the radio transmit power.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]tx_powerTransmit power of the radio [dBm].

Documentation feedback | Developer Zone | Subscribe | Updated