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.

CCS/RM57L843: Multi slave active in SPI at same time

Part Number: RM57L843

Tool/software: Code Composer Studio

Test Setup:--

I am using SPI-1 as master and SPI-2 and SPI-3 are slave.

Master MISO and MOSI are shorted for loopback  externally and MOSI pin of Master SPI is connected to SIMO pins of slave-1 and slave-2.

Master SPI is generating clock of 25Mhz and connected to two slaves as shown above.

Chip select pins are not used.

 

Problem:-

I want to drive the two slaves at the same time, in other words master will send the data where two slaves have to receive the message at the same time,  like the broadcast message where all the slaves will receive the same message. In this scenario, Master loopback(RX) and one slave is able to receive the data, other slave is not receiving the data. But if I reduce the SPI clock to 15Mhz, master loopback and two slaves are receiving the data.

 

Are there any limitations on the SPI clock/MOSI pin to drive the parallel operation of slave? If no limitation let us know how to make it work.

 

Your support needed in solving the above issue.

 

Thanking you in advance.

 

With regards,

  • Assuming you have all three SPI configured for the same phase and polarity, the limitation would be the rise and fall times of the SPI1CLK and SPI1SIMO. That time is a function of the capacitance and the DC load on those lines. At 25MHz you need to think of these lines as transmission lines. Reflections, particularly on SPI1CLK can get the slaves out of sync with the master.
  • Hi Bob Crosby,

    Thank you for your response.

    Please let me know how I can solve this issue.

    With regards,

    Praveen

  • Hi Praveen,
    I am actually on holiday this week, so my responses will be very limited. Hopefully someone else might also be able to respond to your questions.

    First, I would verify that I was using the proper phase and polarity for the two slaves. Have you done that? If you need help with that, please let me know what phase and polarity you are using, and what are the two slave devices.

    Second, I would evaluate the quality of the signals on the SPICLK and SPISIMO lines. How long are the lines? Are they just short traces on a PCB, or are they wires of 10cm or more. If you look at the signals with an oscilloscope, do you see ringing and reflections?