nrfxlib API 0.1.0
Loading...
Searching...
No Matches

◆ nrf_802154_trx_transmit_frame()

void nrf_802154_trx_transmit_frame ( const void *  p_transmit_buffer,
nrf_802154_trx_ramp_up_trigger_mode_t  rampup_trigg_mode,
uint8_t  cca_attempts,
const nrf_802154_fal_tx_power_split_t *  p_tx_power,
nrf_802154_trx_transmit_notifications_t  notifications_mask 
)

Begins frame transmit operation.

This operation performs differently according to cca_attempts parameter. When cca_attempts==0:

  • The RADIO starts ramp up in transmit mode.
  • The RADIO starts sending synchronization header (SHR).
  • nrf_802154_trx_transmit_frame_started handler is called from an ISR just after SHR is sent

When cca_attempts>=1:

Parameters
p_transmit_bufferPointer to a buffer containing frame to transmit. Must not be NULL. p_transmit_buffer[0] is the number of bytes following p_transmit_buffer[0] to send. The number of bytes pointed by p_transmit buffer must be at least 1 and not less than p_transmit_buffer[0] + 1.
rampup_trigg_modeRadio ramp up triggering mode to be used. If TRX_RAMP_UP_SW_TRIGGER is selected, this function will trigger radio ramp up in a software manner. If TRX_RAMP_UP_HW_TRIGGER is selected, this function will prepare the operation but it will end without starting radio ramp up. In this case, it is assumed that the trigger will be generated on the (D)PPI channel specified by nrf_802154_trx_ramp_up_ppi_channel_get. It is the user's responsibility to prepare the stimulation of this (D)PPI.
cca_attemptsThe maximum number of CCA procedures that can be performed prior to the transmission before the medium is considered busy. If 0, no CCA will be performed. Otherwise, CCA procedures will be performed back to back until idle channel is detected or cca_attempts attempts detect busy channel.
p_tx_powerTransmit power in dBm.
notifications_maskSelects additional notifications generated during a frame transmission. It is bitwise combination of nrf_802154_trx_transmit_notifications_t values.
Note
To transmit ack after frame is received use nrf_802154_trx_transmit_ack.