This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I had a general inquiry about using SPI with the TCAN4550. We are trying to use the STM32F446xC as the microcontroller to control the device. The microcontroller can only perform 8 or 16 bit transfers through SPI. We were thinking of using a bit-banging approach. We would basically manually control the CS line and perform two 16 bit transfers in order to perform SPI writes. Does this seem like a viable option? Also we are a bit confused and would appreciate any advice on how to handle SPI reads from the TCAN4550 to the STM32 given the 16bit limit.
Thank you
Hi Nivant,
Manual control of the CS line is a common approach. The TCAN4550 SPI works on 32-bit words, and technically the minimum SPI transaction length is 64 bits because two words are needed. The first word contains the Read/Write Op Code byte (0x41 or 0x61), the Register or Memory address, and the Length (or number of register/data words) to read or write. The second word then contains the data for the read/write.
To improve efficiency, the TCAN4550 supports multiple word read/write transactions through this Length field and eliminate the need to provide a new address for each consecutive register or memory location that needs to be read or written. the CS line needs to be held low for the entire SPI transaction, so manual control over the CS line also allows you to optimize the SPI efficiency by holding the CS line low for the duration of time needed.
Regards,
Jonathan