Small Microcontrollers Drive Graphics LCDs Using "Canned" Data

March 8, 1999
Graphics LCD modules, such as those incorporating the Toshiba T6963C controller are attractive, cost-effective output devices for microcontroller-based systems. When used with low-cost devices...

Graphics LCD modules, such as those incorporating the Toshiba T6963C controller are attractive, cost-effective output devices for microcontroller-based systems. When used with low-cost devices like Microchip Technologies’ PIC microcontroller family, however, they can very quickly eat up huge amounts of the available memor of these microcontrollers.

One way around this is to insert an EPROM between the microcontroller and the LCD module. The EPROM should be configured with its address bus as an input and its data bus as the output, connected to the data bus of the LCD controller. By dividing the EPROM memory into pages of 256 bytes, and using the microcontroller ports to select the appropriate EPROM pages, vast amounts of display data can be stored and clocked out to the LCD using very little program code.

As an example, a 27256 EPROM can hold enough text to fill a 240-by-128 LCD module more than 50 times, or 8.5 full graphics screens. Graphics and text can be mixed, so an application could, for example, use one graphics logo screen and several pages of instruction, reducing the size of the operator’s manual. Different EPROMs also can be used to provide support for different languages.

By filling page 0 of the EPROM with the bytes 00 to FF and setting the EPROM page to 0, the microcontroller can “talk through” the EPROM. It then can set up the LCD parameters, draw boxes, fill character RAM, etc.(although this latter data may be more appropriately placed in the EPROM).

The only compromise involved in using this technique is that the ability to read data from the LCD is lost. However, this capability is typically only needed when high-speed data transfer is used— faster than, say, a PIC is able to clock the data.

LCD controllers use ASCII-like code to represent alphanumeric data, but the LCD code has a value that is 020H less than ASCII. Normally, this offset would be carried out in the microcontroller before the data is sent to the LCD. However, since the controller doesn’t see the data being sent, it must be stored in ‘ASCII – 32’ code in the EPROM. For more information on software that will translate ASCII text files into LCD code, contact the author via e-mail.

See associated figure

Sponsored Recommendations

What are the Important Considerations when Assessing Cobot Safety?

April 16, 2024
A review of the requirements of ISO/TS 15066 and how they fit in with ISO 10218-1 and 10218-2 a consideration the complexities of collaboration.

Wire & Cable Cutting Digi-Spool® Service

April 16, 2024
Explore DigiKey’s Digi-Spool® professional cutting service for efficient and precise wire and cable management. Custom-cut to your exact specifications for a variety of cable ...

DigiKey Factory Tomorrow Season 3: Sustainable Manufacturing

April 16, 2024
Industry 4.0 is helping manufacturers develop and integrate technologies such as AI, edge computing and connectivity for the factories of tomorrow. Learn more at DigiKey today...

Connectivity – The Backbone of Sustainable Automation

April 16, 2024
Advanced interfaces for signals, data, and electrical power are essential. They help save resources and costs when networking production equipment.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!