In-Depth FPGA Interfacing of HD44780 Based LCD

This project illustrates the interfacing of a HD44780 based LCD to the Xilinx Spartan-2 XCS200 FPGA using delayed Finite State Machine (FSM). While using a microcontroller to display text on the LCD is a fairly simple task, interfacing the LCD with a programmable logic device is a different story. The FSM controls the timing and generation of the signals required for data communication, making the process a lot easier.

The HD44780 LCD uses minimum 2.2V voltage for logic ‘1’ and maximum 0.6V voltage for logic ‘0’ for a given Vcc of 4.5 to 5.5V. These voltages are easily managed by the FPGA, using LVTTL mode. The project makes use of the write operation only in communicating with the LCD, so the RW pin is not used. The execution time delay, used to determine that the current write operation is completed, is 40ns. A 4-bit counter is used to control the instructions (the counter is controlled with the CE signal).

When electrical power is applied to the circuit the FSM enters its first state, the Pwr_Up state (check the diagram). The next state is the Pwr_Up_Delay state which lasts 45ms. The device has a multiplexer that puts the CE signal of the counter on high during these two first states. The next state is the Off_Pwr_Up_Delay, after which the FSM enters the Write_Data state (Enable pulse generation state machine). Next is the Data_Setup_Delay state, in which a delay is generated to make sure the setup time before the rising edge of the Enable pulse is adequate.

The Enable must has to be at least 240ns to be valid, and this is handled in the E_Pulse_Hi, E_Hi_Time and E_Pulse_Lo states. The E pin of the LCD is set on high during E_Pulse_Hi and E_Hi_Time states, and low on E_Pulse_Lo state. The next state is the Proc_Comp_Delay state, in which the delay for the current instruction is activated. The next state is Load_Next_Data and the FSM can either move back to Write_Data state and continue to send instructions to the LCD or go to the End_State.

The FSM and hardware layout is using the Xilinx ISE 8.1i VHDL Compiler. Check the article for a pdf file with additional instructions, diagrams and schematics and look into the datasheet of the HD44780 Based LCD for detailed specifications.

In-Depth FPGA Interfacing of HD44780 Based LCD: [Link][Link2]

FPGA Chip Interfaced With LCD Module

Text LCD modules are cheap and easy to interface using a microcontroller or FPGA. To control an LCD module, you need 11 IO pins to drive an 8-bits data bus and 3 control signals. Most of the LCD modules are based on the HD44780 chip or compatible and the internet is full of resources on how to interface those.

FPGA Chip Interfaced With LCD Module: [Link]

Implement HD44780-based LCDs With AVR Microcontrollers

In many microcontroller applications some sort of display is needed to present information and status of the controller to the user. Although a few LEDs can provide a lot of information, a more advanced display is sometimes needed. A solution which is quite often seen is using a HD44780-based character LCD module. These modules come in various configurations from one line of 8 chars to 4 lines of 40 characters.

Implement HD44780-based LCDs With AVR Microcontrollers: [Link][via]

RF-Microwave Frequency Counter

The PIC 16F876A drives a standard LCD module with a HD44780 controller and a resolution of two rows of 16 characters each. The HD44780 requires 8 data lines (port B of the 16F876A) and three control signals: RegisterSelect (RC6), Read/Write (GND) and Enable (RC7). Since the data presented on the 8-bit-wide output port RB0-7 is only written to the HD44780, the R/W input is hardwired to ground (/Write). The LCD back-light LEDs are supplied through two 10ohm current-limiting resistors.

RF-Microwave Frequency Counter: [Link]

LCD Display Controlled From A Computer Trough The Parallel Port

Connecting a LCD display to the end of a printer-cable is a simple and effective way of providing additional functionality to your computer system. The printer-cable LCD can be mounted on your computer case or fitted inside a Jiffy-Box and displayed somewhere away from your case. Even the fully functional software interface is simple to install and configure. The parts used are a non-backlit 16 x 2 character LCD and a parallel port cable(printer cable).

LCD Display Controlled From A Computer Trough The Parallel Port: [Link]

© 2007-2011 YourITronics | Any logo, trademark and project represented here are property of their respective owners | Wordpress | Privacy Policy    RSS