I'm working on a design that has a CPU with only one SPI port. I have multiple (3) slaves connected to this port, one of which is a microSD card.
Here is a report from an engineer who says that SD cards are designed to operate as the only slave to an SPI master.
Has anyone else been able to use a microSD along side other SPI slaves on the same bus? Perhaps this report was just based on a particular, problematic miniSD card?
Would anyone recommend gating the SPI CLK line with the Slave Select line that goes to the miniSD card, just to be safe?
Best Answer
According to this page SD cards drive and or release the DO line synchronously with the sclk line:
So just sending a dummy byte to the SPI after raising the CS line high should work. The site above has a timing diagram of the SPI bus when raising the CS line high on the SD card.
Also, it is a good idea to make sure that on power-up/card-insertion the microcontroller negotiates the use of SPI mode with the card. These details can be found here
In summary, it should be OK to share the SPI bus with multiple peripherals as long as the above precautions are taken.