SPI BiDirectional Newbie in need of help!

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello All,

   

 

   

I am an absolute newbie to SPI and using it with these PSoCs.

   

I have not found adequate documentation or examples on how to perform SPI Master READ.

   

I am able to write data to the SPI slave device, however how do you read data?

   

Using Oscilloscope, I can see that the SCLK pin is driven during a write operation, but it is not being driven during a read command!!! (It remains low)

   

I call:

   

SPIM_WriteTxData(0x80);

   

while((SPIM_ReadTxStatus()&8)==0);

   

SPIM_WriteTxData(0x10);

   

while((SPIM_ReadTxStatus()&8)==0);

   

SPIM_TxDisable();
        
PSOC_DEBUG_BUF[15] = SPIM_ReadRxData();

   

I can see SCLK and SDIO is driven during the two write cycles, and the correct bits are set, however SCLK is never driven for the SPI Slave Device to write data!!

   

How is SCLK driven for read mode?

   

-Thank you!

   

-Gytis

0 Likes
4 Replies