LCD Display Without a Microcontroller
Jesús Ángel Martínez Mendoza's μMUX Brain project drives a 16x2 LCD with multiplexers and logic gates.
As Jesús Ángel Martínez Mendoza notes in his μMUX Brain writeup, “Every tutorial on LCDs starts with an Arduino.” So it seems. His project, however, does away with the Arduino, or any microcontroller whatsoever, instead driving a 16x2 LCD with multiplexers and logic gates.
It’s an ambitious goal, but with some tidy breadboarding, he’s made it look like a rather achievable project. The system is divided into six functional blocks, with the control unit, data memory, instruction manual (user input), and dual input (LCD) sections on the main multi-breadboard setup. A contrast/brightness adjustment unit sits on an outer breadboard, while the power supply looks like a standard backup battery on the outside, but has its own custom electronics inside.
The system implements an NE555 clock generator for synchronization, while a series of multiplexers act as ROM to store four preprogrammed – i.e. prewired – instructions that are sent to the LCD in sequence through a four-bit binary counter. Once the sequence is finished, the user can enter eight-bit ASCII codes via the onboard buttons for display.
The device is an impressive demonstration of just what can be accomplished without a microcontroller or software-programmable logic, and would be hugely educational for anyone attempting to duplicate the setup. While Mendoza learned a lot building it, he notes a number of potential future improvements that could be applied, including an expansion of the memory to 8x8 words for full-screen ASCII display. He may need a few more breadboards!