This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How spi_xfer_done flag is being updated without calling its function in SPI example from SDK15.3.0 after the transfer?

Hi,

I could not find the logic for spi_xfer_done flag (main.c) that is being updated after SPI transfer is done in the SPI example from SDK 15.3.0.

There is no particular function call being made for spi_xfer_done flag to be updated.

Noticed that spi_xfer_done is updated after call to function below. (nrf_spim.h)

__STATIC_INLINE void nrf_spim_task_trigger(NRF_SPIM_Type * p_reg,
nrf_spim_task_t spim_task)
{
*((volatile uint32_t *)((uint8_t *)p_reg + (uint32_t)spim_task)) = 0x1UL;
}

I am dazed here, kindly help me understand this!

Related