Hi James,
I have a similar question about configuring the DSPI interface on MPC5746R. DSPI0 module is configured as master and is connected to two slave devices, connected via CS0 and CS1.
Slave selected using CS0 is an NXP SBC chip, requires 16-bit frames.
Slave selected using CS1 is an external device that accepts 32-bit SPI frames.
Is it possible to configure single DSPI module to send frames of different sizes to different slaves?
MPC5746RRM Rev6, pg. 1968 states "When extended SPI mode is disabled, since both TXFIFO and CMD FIFO are written to and read from simultaneously, it can be thought of as a single 32-bit FIFO". On reading this I felt it should be possible to send 32-bit frames - all i should do is write the 32-bit word(say 0xDEADBEEF) to the PUSH-TX FIFO as below:
DSPI_0.PUSHR.PUSHR.R = 0xDEADBEEF;
But if the data in the COMMAND FIFO is being being interpreted as any 16-bit data, where do I specify which ChipSelect( and thus which slave) I want this message sent to?
I checked a couple of SPI examples for other processors - in all of them, extended mode is disabled , yet the data in the COMMAND FIFO is interpreted as a command and not as data.
Can you please clarify? Also an example on using extended SPI mode would be very helpful.
Thank you,
Jyothsna