Tool/software: Code Composer Studio
Hello,
I am trying to implement a SSI slave where I read 1 byte commands and return the result when the next command is received.
The problem I am facing is after the first transmission I receive zeroes even If I put new data to the TX buffers.
Also when I poll GetDataNonBlocking It shows RX buffer to be empty even though on the logic analyzer I see the master sending the data.
To check the operation I put 2 bytes in the TX buffer and send 2 commands waiting sometime in between.
Here is my configuration:
And I tried to read using
SPIDataGet and the nonblocking version like this
while(!SSIDataGetNonBlocking(SSI0_BASE, &ret_val)){}
After the first receive this is the status of the flags:
As it is seen the transmit fifo still has data but because SSI is somehow stuck that data never gets sent.
If I reconfigure the SPI after the first transmission I see both of the values on transfers so I am not sure why the issue gets the module stuck.
Does anyone have any clue on why the module might be getting stuck?
Thanks for reading.