SD Card with 5v

• posted

So I want to learn how to interface with an SD card for some projects I have in mind. I figure the best way to do this is just by using my PC's parallel port, where I can write code up real quick and test it immediately until I get the basics down. SPI mode would be the easiest to implement, especially considering some microcontrollers have that built-in. Well, doing some reading, it seemed like it might be easy enough to do at first, until I hit a wall: SD cards can't use

5v. This obviously complicates what I hoped would be a relatively simple, practically direct interface.

For the logic aspect, I don't think I'd have much problem. I already saw somebody say they made it work using 1k8/3k3 for voltage division on the clock/chip select/data in lines. Data out should be fine to connect straight to the parallel port, since as far as I know it's TTL, and should accept ~3.3v as 'high'. This is all another good reason to stick to SPI mode, just to use less resistors.

I'm sure the card draws far too many milliamps to power itself via the parallel port, so I initially figured I'd just power it via a usb cable or something. Well obviously 5v would likely kill the card. I considered using simple voltage division here too, but would the fluctuating power consumption of the card affect it significantly to the point that it wouldn't be very usable, and/or still possibly damage it?

I think the general max milliamp usage for SD cards (during writing) is about 75mA. Sleep is somewhere around 250uA. If I'm doing the math properly (note that I'm no expert at analog circuits), when running at 75mA, about 23ohms between 5v and vcc of the card would theoretically bring it down to the acceptable 3.3v. Hmm, though now that I figure it, once it dropped to 250uA, the card would get hit with 4.99425v. Again, if I'm figuring properly. And that would obviously be too much.

So I dunno, there may be something I'm missing. And I'm sure everyone will just recommend I get a 3.3v regulator, which is prolly the best solution anyway. But you know how it is about ordering stuff, paying wasteful shipping when I don't really need anything else at the moment, then waiting for it to show up. I thought somebody might know a trick or two so that I could get to tinkering around with learning to interface one. In any case, thanks in advance!