#include <zephyr/kernel.h>
#include <hal/nrf_radio.h>
#include <nrfx_dppi.h>
int main(void)
{
printk("DPPI test start\n");
/* init RADIO */
NRF_RADIO->TXPOWER = 4;
NRF_RADIO->FREQUENCY = 0;
NRF_RADIO->MODE = 1;
/* READY event trigger EDSTART task */
#if 0
nrf_radio_shorts_enable(NRF_RADIO, NRF_RADIO_SHORT_READY_EDSTART_MASK);
#else
nrf_radio_publish_set(NRF_RADIO, NRF_RADIO_EVENT_READY, 0);
nrf_radio_subscribe_set(NRF_RADIO, NRF_RADIO_TASK_EDSTART, 0);
nrf_dppi_channels_enable(NRF_DPPIC10, 0);
#endif
/* start ED */
NRF_RADIO->TASKS_RXEN = 1;
/* wait ED end */
while (NRF_RADIO->EVENTS_EDEND == 0)
{
}
/* dump ED value */
printk("ED = %d\n", NRF_RADIO->EDSAMPLE);
return 0;
}
/**************************************************************************************/
If use SHORT it works fine.