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.

TMDSEVM5517: McSPI not working, in own code or CSL examples.

Part Number: TMDSEVM5517

Hello again, E2E.

I'm trying to get the McSPI module running on the evaluation board for the C5517.

Failing to get my own code to trigger the module, I downloaded the CSL examples and have imported the Master DMA example (c55_lp\c55_csl_3.08\ccs_v6.x_examples\mcspi\CSL_McSPI_MasterDma_Example).

The pins are not doing anything when I run the code. I have switched the EBSR to set SP1MODE to GPIO and tried flipping around the pins multiplexed with CLK, CS0 and MOSI, and verified that I am in fact checking the correct hardware pins. But the McSPI code doesn't actually seem to be doing anything on the pins, even though the DMA runs and increments addresses, and the McSPI module transitions the STATL EOT bit to Complete when the code has run.

I see nothing on the pins with a logic analyzer, apart from a CS0 transition from high to low when I set the MODULCTRLL MS bit from slave to master.

Any ideas on what could be wrong?

Best regards

  • The team is notified. They will post their feedback directly here.

    BR
    Tsvetolin Shulev
  • Christoffer,

    Do you have the correct #define CHIP_C5517 macro defined in C:\ti\c55_lp\c55_csl_3.08\inc\csl_general.h?

    Lali
  • Lalindra Jayatilleke said:
    Christoffer,


    Do you have the correct #define CHIP_C5517 macro defined in C:\ti\c55_lp\c55_csl_3.08\inc\csl_general.h?

    Lali

    Yes, I do have the correct defines.

    It turned out to be the example code that seems set up the I2C GPIO expander on the evaluation board wrong, and my own code was messing with it inconsistently. So when I was swapping between the two, sometimes I was reading the correct pins, but sometimes they were switched away from JP46.

    Changing the ioexpander calls in the example from

    ioExpander_Write(0, 4, 1);
    ioExpander_Write(0, 5, 1);

    to

    ioExpander_Write(1, 4, 1);
    ioExpander_Write(1, 5, 1);

    seems to set up the ioexpander correctly to break out the McSPI pins on JP46.

    I have what appears to be correct readings from the McSPI module in the example code now.

    Thank you for your time.