AnsweredAssumed Answered

SPI driver read not functioning with KSDK 1.2.0

Question asked by Kewal Deshpande on Jan 7, 2016
Latest reply on Feb 17, 2016 by isaacavila

I have found similar issues in other threads(link below), but my issue is slightly different as I am able to achieve the SPI communication as required using PDD.

SPI issue on KSDK V1.2.0 (at least on FRDM-KL25Z board)

I tried pulling down the SCL as suggested in other threads.


attached is the screen shot below where the read is working properly and the config follows

SPI with return data.JPG

I am trying to communicate to MAX3107 IC with CPOL =0 and CPHA = 0 at 5MHz 




While I am working with KSDK 1.2.0 and KDS 3.0 , I have done a similar Master configuration on my side. I am unable to recieve any data by doing


if(kStatus_DSPI_Success == DSPI_DRV_MasterTransferBlocking(FSL_PCCPDSPICOM,






I am able to see that the data is successfully written on MOSI  but there is no response on MISO, i just tried to see if there is any glitch on clock with 50MSPS(maybe i need a better sampling rate to see the glitch here, otherwise also i pulling it low)




the configuration follows.





is there anything which I am suppose to do but I am missing with configuration.


Also, my code looks something like this.


 bool ReturnValue = false;   memset(tx_buff,0x00,128);   tx_buff[0] = reg_address;            uint32_t SetDelay = 0;            DSPI_DRV_MasterSetDelay(FSL_PCCPDSPICOM,kDspiPcsToSck,560,&SetDelay);   DSPI_DRV_MasterSetDelay(FSL_PCCPDSPICOM,kDspiLastSckToPcs,560,&SetDelay);   DSPI_DRV_MasterSetDelay(FSL_PCCPDSPICOM,kDspiAfterTransfer,560,&SetDelay);     if(kStatus_DSPI_Success == DSPI_DRV_MasterTransferBlocking(FSL_PCCPDSPICOM,                                                                    &PCCPdspiCom_BusConfig0,                                                                    tx_buff,rx_buff,                                                                    no_of_bytes+1,1000))         {           ReturnValue = true;         }         else         {           PRINTF("Write_to_SPI - Failed");           ReturnValue = false;           }


Any suggestions also appreciated.