Control and Power a 16x2 LCD Display with Only Two Wires
You’ve probably seen or used generic 16 x 2 LCD character displays in various electronics projects. While they do a good job of showing…
You’ve probably seen or used generic 16 x 2 LCD character displays in various electronics projects. While they do a good job of showing text as needed, they require four data lines, two additional control pins, and +5VDC and ground lines as well. If this was designed today — as Vinod S. notes in his LCD simplification project write-up — connecting such a display would only take a single wire for data, or perhaps a pair for I2C or TWI.
To correct this shortcoming, Vinod came up with a solution that uses not one or two wires, but zero dedicated data lines — instead transmitting data and power through the same wire. Part of the trick here is that he’s using an Arduino Pro Mini as a translation device, taking in signals from his computer via the power/data line, then pushing out parallel signals as necessary to the display.
The even more clever part of this setup is the use of a p-channel/n-channel MOSFET circuit to take signals from a USB to UART converter, then resolve it into a combined power + data output line. When the power rail is pulled to zero, the Arduino is able to sense this input; however, a diode and capacitor keep the instantaneous power supply to the LCD constant enough to prevent it from blanking out. Check it out on display in the video below.