How can i connect an SD card to Arduino directly? (Not microSD, normal size SD card)
what is "normal" ? Not Micro and Not mini?
you can find adaptors to micro-SD if this is the only thing you have for your Arduino
that being said, Micro SD cards are cheap...
With wires. The contacts on an SD card take solder fairly well.
Since the SD card runs on 3.3V I recommend having voltage dividers on SCLK, SS, and MOSI if you are using a 5V Arduino. A 5V Arduino didn't have any trouble reading from the 3.3V MISO line.
Could you give us more information about what you want to accomplish? Do you really mean soldering the card into your circuit? Typically one would use a breakout module for that so the card would be removable.
Also, you didn't say which Arduino. An SD card is a 3.3V device, so if you use a 5V Arduino, level shifting will be needed on at least three of the SPI lines, plus a 3.3V voltage regulator to provide power to the card. But an alternative would be to use a 3.3V 8MHz Pro Mini, or some other Arduino model that runs on 3.3V, and those would not require any level shifting, and whatever is powering the Arduino might also be able to power the card.
Just a note, may no apply to your project.
The MISO line on an SD card is not put in a high impedance state (i.e. open circuit) when the SD card is NOT selected.
This means if you have a 2nd device on the SPI bus it will be useless because the SD card is always driving the MISO line causing a conflict with your 2nd device.
Works for me, I have been mixing LoRa devices (SPI) and microSD cards (SPI) for a few years.
I have one setup on the bench now, using LoRa to transfer a file from the SD card of one Arduino to the SD card of another, its definetly working ...........
(using 3.3V Arduinos)
I doubt it's the card; it's a known problem for certain adapters.
I agree, I should have stated the adapters were the issue.
So you are going directly into the SD card pins, and you've found the MISO is tri-stated within the card?
I do go directly to the SD card pins as I only use 3.3V Arduinos, using the old style 5V Arduinos has been a problem for a good few years.
I have not carried out a detailed check with a logic analyzer, to see if MISO is tri-stated, and why would I if it works without error over long periods ?
Thank you. I'll try going directly on my next board. And to answer you question, you would not analyze something that apparently works.
Unless you have a need to omit a breakout board, you can consider Pololu - Breakout Board for microSD Card.
I have a few of those. I'm working on a custom board that includes:
- 5V to 3.3V regulator
- DS3231 RTC
- Battery for RTC
- SD Card
- Plugin for a 1.3" OLED
- 74HC125 (may not be needed)
I quickly tried it without the 74HC125 but I didn't gain enough real estate to make the board appreciably smaller. So it will stay.