Dear all,
I am using a DK with the NRF52832 to drive a 32-bit DAC through SPI @ 8 MHz. I use a solution based on the peripheral/spi example using the SDK15.
My goal is to change the DAC value every (say) 5 us. This is theoretically possible since 32-bit/ 8 MHz = 4 us. The application also uses the SoftDevice, as well as Timer2 (for pulse diuration purposes)
Using the "nrf_drv_spi_transfer()" function in an infinite loop, it yields a delay between transfers of around 60 us. That is, I measure the 32 clock pulses of an SPI transfer in a row, but until the next call of "nrf_drv_spi_transfer()" there is a delay of 60 us.
1) I would firstly like to ask for reference of the origin of this delay. I know it has to do with the SoftDevice mainly, and of course the rest of the executing code, but I could not find a reference guide about it.
2) I would need to minimize the inter-transfer delay to ideally 0. Any strategies on how to do this, and which would be roughly the theoretical minimum of this delay? Is any continuous-transfer (zero inter-delay) implementation possible?
Thank you for your kindness,
Fran89