Hello,
The attachment is the spi waveform when writing the 8908 register. Looking at the 8908 response, writing 32-bit is equivalent to successfully writing 16-bit data twice. Is this reasonable?
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,
The attachment is the spi waveform when writing the 8908 register. Looking at the 8908 response, writing 32-bit is equivalent to successfully writing 16-bit data twice. Is this reasonable?
Hello,
The datasheet specifies there should be 2.5us between successive write gaps in 7.6 Timing Requirements. You might find unexpected behavior if you don't have this gap between the two 16-bit writes. Without that gap sure, two 16-bit writes back to back will look the same as one 32-bit write.
Here's an E2E post with more details about SPI for this chip: https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/950163/drv8908-q1evm-spi-messaging-details
Cheers,
Jacob Thompson
Hello,
The DRV8908 uses 16-bit SPI communication. Sending 32-bit data is not recommended. Try splitting up your data into two 16-bit frames instead. If you do send 32-bit data then if you're lucky it will receive it as two 16-bit frames without any errors, but I wouldn't be surprised if it had some errors in the middle of communication with 32-bit. On the other hand, maybe it will work perfectly and you can move forward with 32-bit, it just isn't the official recommended way to do it.
Regards,
Jacob Thompson