I want to write large blocks to a spi fram. It seems the largest block I can write before the CS signal is reset is 128 bytes. This means I can only transfer 125 bytes to the device at a time since I need to send the three byte write cmd / address with each data strobe. The reference manual mentions a Transfer continuation function which allows unlimited length transfers but I cannot find any more info on it. Anyone know if this will transfer large blocks without toggling the CS line and if so how to implement it ? Thanks.
Actually, if you use only the control features of the eCSPI module itself, the largest SPI frame you can send is limited to 128 bytes. However, you can configure the pin that shares the required SPI_SSx signal for the GPIO function in the IOMUXC module and then control it "manually" as a regular GPIO signal.
Have a great day,
Artur
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Yes, set the CONT bit and use the EOQ bit to control the PCS. Both of those are in the PUSHR register.
I am using this to transfer 512 byte blocks to/from a SD card, so it does work just fine.
Chris
Are you using an imx6 ? This register is not in the technical reference manual. Maybe I posted this in the wrong group.
No, my mistake. I did not notice what group I was in. My answer applies to Kinetis micros.
apologies,
Chris