Nowadays most popular microcontrollers are working on 3.3V but many liquid crystal displays (LCDs) for them are usually on 5V, because they are centered on Hitachi’s de facto standard LCD controller – the HD44780 chip. Presented here is a simple yet effective trick to convert the standard 5V type LCD to a 3.3V one!
As you can see in the following photo some LCD modules have unpopulated footprints on the back for mounting a switched-capacitor voltage converter like the L7660 or MAX660 IC. Incase you have the same LCD circuit board, just add one MAX660 chip (U3),and two 10uF capacitors (C1-C2) to complete the hack. However, don’t forget to open the jumper J1 and close J3. That’s all.
This little modification adds a negative charge pump converter to feed negative contrast voltage(V0) around 2.5V to the display electronics. This hack is necessary because the characters on the liquid crystal display type mentioned here becomes visible only when VDD-V0 ≥ 5V, where VDD is the operating voltage, and V0 is the contrast voltage of the LCD. Our simple maths gives an output value of V0 ≈ -2V, good for proper operation of the LCD at 3.3V. Take note, here the backlight lamp works as well on 3.3V, its brightness is slightly lower. This can be corrected by changing the value of its onboard current-limiter resistor (R8) if necessary.
Another issue for concern (often when interfacing with fast microcontrollers) is the oscillator frequency of the LCD electronics, ie. when the supply voltage is lowered (5V to 3.3V), frequency of the built-in clock oscillator also falls down. The Rosc should be changed to a suitable value (from the typical 91KΩ – see next figure) for 3.3V if the extension of command execution time cannot be accepted.
Even if your LCD is a different type i.e. without the vacant solder pads, you can still convert it to a 3.3V type with the help of the L7660 chip. For this, just build the following circuit on a small veroboard (or a customized pcb), and carefully interface it to your 5V LCD. However, your 5V LCD should be a type with HD44780 (or compatible) controller at its heart. The potentiometer (P1) in the given circuit is for contrast level adjustment of the display.
The pcb artwork of the adapter given here is for the quick reference of interested home pcb makers. Anyway, it’s not a scaled image; the actual pcb dimension is ~ 17.78 x 30.48mm!
While I was in the middle of my experiments, I got another 16×2 (5V) LCD module from a friend abroad (see next photo). It has the provision to mount L7660 chip (suits our needs) but we need to populate some more resistors/jumpers in addition to the usual 10uFx2 capacitors (see the marked area). Now I’m surfing the internet to get it running on 3.3V – stay tuned for updates…
I hope that you leave learned something new and have fun with this information. If you have any improvements, corrections/additions, please let me hear about them as well!
- MAX660 Datasheet – http://www.ti.com/lit/ds/symlink/max660.pdf
- L7660 Datasheet – https://www.intersil.com/content/dam/Intersil/documents/icl7/icl7660.pdf
- HD44780U Datasheet – https://www.sparkfun.com/datasheets/LCD/HD44780.pdf