5
\$\begingroup\$

I'd like to use an SD card using an SPI interface. My microcontroller uses GPIO logic levels of 2.8V. Do I need a level shifter, or can I connect the card directly? I've had a look at the Physical Layer Simplified Specification, which mentions:

High Voltage SD Memory Card – Operating voltage range: 2.7-3.6 V

But I'm not entirely sure where to go from there.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ Your mileage may vary, but if you power it at 2.8V, it will have 2.8V input and output levels. \$\endgroup\$
    – Passerby
    Commented Feb 12, 2015 at 15:46
  • \$\begingroup\$ that said you might want to buy an SD card with a data sheet, to make sure that it can work At 2.8V vcc. \$\endgroup\$
    – Passerby
    Commented Feb 12, 2015 at 15:49
  • \$\begingroup\$ Do not power SD card through any of the GPIO pins as inrush and writing currents are as high as 100mA. \$\endgroup\$
    – TapasX
    Commented Jun 26, 2017 at 1:08

2 Answers 2

5
\$\begingroup\$

You are correct, if you look at any of the SD card manufacturers' specification, such as Transcend, Toshiba, and SanDisk, they all specify the same voltage range you gave in your question: 2.7v to 3.6v.

So you should be fine interfacing to these cards from your GPIO pins using 2.8v levels without the need for any level shifters, and of course you will want to provide power (Vcc) to the card also using the same voltage (2.8v).

\$\endgroup\$
1
\$\begingroup\$

Neither of those specifications will answer your question. You need to look at the input and output voltages of both the MCU and the SD card in order to make sure that they are directly compatible, i.e. that the output high minimum/low maximum are greater than/less than the input high minimum/low maximum.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.