Go Down

Topic: SD card voltage level converter suggestions? (Read 3174 times) previous topic - next topic

liuzengqiang

I am trying to integrate a micro-SD card in my design. The system has ATMEGA328 running with 5V supply. I've looked at several existing designs:

1) adafruit SD logging shield. It uses 74AHC125 chip. It supplies the chip with 3.3V and the chip is tolerant to 5V.
2) Arduino Ethernet and wireless shield use three separate voltage level shifters 74LVC1G125DCK
3) Arduino wifi shield uses yet another chip TXB0108, guess it has more IO to level shift more pins.
4) I also saw this design made by CrossRoads, using 74ACT125, although it is not tolerant to 5V when operating at 3.3V
http://forum.arduino.cc/index.php?topic=63171.0.com

So if I am thinking about only prototype and small batches, should I just use the 74AHC125 instead of three separate tiny chips?

CR, what's your experience with the 74ACT125? Have you switched to other chips?
Serial LCD keypad panel,phi_prompt user interface library,SDI-12 USB Adapter

pito


liuzengqiang

Yes, all the sensors are 5V. Only a few I2C sensor boards have 3.3V chips but have 5V-3.3V conversion.
Serial LCD keypad panel,phi_prompt user interface library,SDI-12 USB Adapter

CrossRoads

When I used 74AC125 on original Bobuino, it was based on Adafruit SD module that used the same. Datasheet for that particular brand used said it was 5V tolerant with Vcc = 3.3V.
That specific manufacturer is no longer available.  I would go with HC4050 now for 5V to 3.3V conversion. I have used TXB0108 parts with mixed results. They have limited drive capability and require other devices to have 2mA drive capality to drive them back.
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

liuzengqiang

Thank you CR! From the first paragraph I was assured that HC4050 is designed to do the job (high-voltage logic to low, and input can take 15V when supply voltage is low). I may have to make an EAGLE part. I'll check sparkfun library. They have some errors with digikey part number in their library.

So I was wondering, is it possible to save a pin by tying the CS to gnd? I'm using ATMEGA328P-AU, actually just a nano cause they are so darn cheap. How can I resist a complete package with TTL USB at $7? The downside is the one I got has PL2303 chip that the manufacturer has stopped supporting, so no win 8 drivers. I'll have to hunt down some cheap ones with FTDI chip instead.
Serial LCD keypad panel,phi_prompt user interface library,SDI-12 USB Adapter

liuzengqiang

OK, the 74HC4050 has 6 outputs, seems overkill. I just need 3 pins. Strangely, when I googled "quad high to low level shifter", I only got pages and pages of quad low to high. I found one quad high-to-low or low-to-high, but it is just open drain and needs additional pull-up resistor:

http://www.futureelectronics.com/en/technologies/semiconductors/logic/gates/quad-gate/Pages/4848529-74HC03N,652.aspx?IM=0

Does anyone know a quad high to low level shifter that I can use?

CR, if you're reading this, do you use an EAGLE library part? I found a part "4050" and it seems to have SO16 package. But it's weird. I have to add 6 parts (logic symbol of follower) instead of like one part with 6 followers. Not sure what the logic behind this.
Serial LCD keypad panel,phi_prompt user interface library,SDI-12 USB Adapter

pito

74LVC125A
But still 14pins.
So if you need only 4buffers out of 6 in the 4050 you have to cut off a piece of the 4050 package to fit it into your pcb design  :P

CrossRoads

Am heading out the door and then an Arduino Day 2014 event, will check on 4050 in eagle when I get back.
You can also download Adafruit and Sparkfun libraries, they may have one too.
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

Go Up