Hi,
I discovered unusual behaviour in a SPI read transfer.
My transfer consists of writing one byte (peripheral register address) and receiving one byte (contents of the written register address).
When this transfer is executed once it goes flawless, but when this transfer is done repeatedly, say every 500ms, in half of the transfers (alternately) there is no SPI CLK generated for the receive byte.
Here is a picture of a good transfer:
Here is a picture of a bad transfer:
This is the function I use for the SPI transfer (blocking mode):
nrf_drv_spi_transfer( &spi0_instance, &addr_plus_wnr, 1, buffer, size );
where buffer is a pointer to a uint8_t buffer and size is 1.
Is there an explanation for this behaviour and how can I fix this?
Thanks in advance, Jan Roorda