nrfxlib API 0.1.0
|
bool nrf_802154_receive_at | ( | uint64_t | rx_time, |
uint32_t | timeout, | ||
uint8_t | channel, | ||
uint32_t | id | ||
) |
#include <nrf_802154/common/include/nrf_802154.h>
Requests reception at the specified time.
This function works as a delayed version of nrf_802154_receive. It is asynchronous. It queues the delayed reception using the Radio Scheduler module. If the delayed reception cannot be performed (nrf_802154_receive_at would return false) or the requested reception timeslot is denied, nrf_802154_receive_failed is called with the NRF_802154_RX_ERROR_DELAYED_TIMESLOT_DENIED argument.
If the requested reception time is in the past, the function returns false and does not schedule reception.
A scheduled reception can be cancelled by a call to nrf_802154_receive_at_cancel.
id
must be unique. It must not have the same value as identifiers of other delayed timeslots active at the moment, so that it can be mapped unambiguously to an active delayed operation if the request is successful. In particular, none of the reserved identifiers can be used.[in] | rx_time | Absolute time used by the SL Timer, in microseconds (us). |
[in] | timeout | Reception timeout (counted from rx_time ), in microseconds (us). |
[in] | channel | Radio channel on which the frame is to be received. |
[in] | id | Identifier of the scheduled reception window. If the reception has been scheduled successfully, the value of this parameter can be used in nrf_802154_receive_at_cancel to cancel it. |
true | The reception procedure was scheduled. |
false | The driver could not schedule the reception procedure. |