Electronic – use a voltage divider for shifing logic levels

level-shiftingvoltagevoltage dividervoltage-regulator

I'm trying to drive a 3.3V IC from an Arduino which has 5V logic pins, so I need to shift that 5V down. There's no data from the 3.3V device to the Arduino so I don't need to shift back up.

Can I use a voltage divider to do this? My concern is that since the device is not a passive component (it's an ST7735 LCD driver), its effective resistance is not constant (right? As the transistors and whatnot in the IC switch, the overall resistance/current will change?) and so the voltage "output" from the divider will change.

That is, in this picture:

Voltage divider schematic from Sparkfun

R2 is not constant and so Vout may vary.

Since Sparkfun's logic level converter uses a voltage divider for down-shift, I suspect that this is fine, but I don't understand why.

(This is my first electronics project. I would usually just use Sparkfun's LLC but I'm in a country where it's not so easy to buy electronics from America!)

I should clarify that I'm not using this 3.3V to drive the LCD itself (I think). The breakout has a separate VCC pin, which I'm connecting to a 3.3V supply which the Arduino provides. It's just the logic pins I want to shift.

Best Answer

Check the datasheets of the IC for its input impedance. That will tell you the effective resistance of the inputs (which should be very high). You could also look at the maximum input current it consumes (which should be very low).

I suspect in this case, you could get away with using a voltage divider for uni-directional communications.

Edit:

Looking at the datasheet for your IC, it says that the logic-high input current is (at most) 1uA.

Datasheet

From quick ballpark, that means you want at least 100uA flowing through your voltage divider. That way, the current that might get consumed by the input pins has a negligible effect on the output voltage of the voltage divider.

Picking R1 and R2 to be 10kOhm and 20kOhm respectively satisfies all these requirements.

The output voltage from the voltage divider is 3.33V and is within the boundaries of the input voltage range of the chip.