Chris @ PyroElectro.com writes:
There are quite a few articles that I’ve written that feature the 16×2 HD44780 LCD. However I never got the chance to make a simple example of how you can use an FPGA or CPLD with some verilog or VHDL to tell the LCD what to display.
This article will show the process of choosing parts, building a schematic, connecting the hardware and writing the hardware description to control a HD44780 LCD interface and output a few characters to the 16×2 LCD screen. To make things a little easier, we’ll use a familiar board, the CPLD Dev Board that I introduced a few years ago. It’s dated but still a good learning platform!
FPGA / CPLD 16×2 LCD Interface – [Link]
LCD in this picture has 2×16 characters, so in quick way horizontal bar could have 16 steps resolution, but it’s not enough. Each character is formed from 5×8 pixels. Every character can be sliced in to 5 pieces. After that we can have 5*16 = 80 steps. First step is to create 5 custom characters. More about createChar() please read at arduino.cc.
Arduino LCD horizontal progress bar using custom characters – [Link]
Sergei Bezrukov writes:
Controlling big LED displays that use several LEDs for lighting each segment is a certain challenge. The problem is that the voltage drop on display segments is well above the maximum voltage of microcontrollers. This project describes an approach to this problem based on source and sink drivers TLC59210 and TLC59213 manufactured by Texas Instruments.
Big LED clock with automatic brightness control – [Link]
The μLCD43(GFX) is an intelligent graphics display that harnesses the power to deliver a diverse range of features in a single, compact cost effective unit. Embedded at the heart of the design is the PICASO-GFX2 processor, which is driven by a highly optimized virtual core engine; EVE (Extensible Virtual Engine).
An extensive range of hardware and software peripherals have been integrated into the design, to give the user freedom to adapt the module to suit almost any application. Features include; a 4.3” TFT 480×272 touch screen display, audio, micro-SD card connector, an expansion port along with a series of GPIO, I2C pins and serial comms. The μLCD43(GFX) serves as the perfect solution to be deployed at the forefront of any product design, requiring a brilliance of colour, animation or images on a 4.3’’ widescreen display.
Purchase μLCD43(GFX) and get 10% off when you enter the code “ELAB2012” during checkout. To buy visit 4DSystems e-shop
Here is a hack to extract, and use the LCD from a cheap picture-frame key chain. The project involved desoldering the LCD from its mainboard and building a breakout for it. With the help of a DSO it was possible to find out the pin-out for the LCD.
The AVR library used to drive this LCD is available for download at the bottom of the source article. You can check out a video of this project below.
Re-purposing an LCD from a cheap picture-frame key chain – [Link]
New graphic display EA DIP180B-5NL brings a high contrast, small power consumption and a fast response. And what is important for the most of people – it is also available with a touch panel.
Display EA DIP180B-5NLWTP was designed for use in industrial control panels. That´s why it is available with an analogue resistive touch panel. This enables to combine control of a device and display of information into a single unit. EA DIP180B-5NLWTP is a graphic display with 180×32 pixels resolution. It contains 3 integrated graphic controllers SED1520 type (or compatible) used to control left, center and right sections of the display. White LED backlight provides crystal-clear picture and excellent readability under all light conditions.
Touch panel is linked to an external controller or a controller with analogue inputs. Touch panel operates similarly like a potentiometer – if a voltage is connected to the „Top-Bottom“ input of the controller, a voltage proportionate to Y (vertical) position is read by a microcontroller from the „Left-Right“ input. By the same process can be a horizontal – X position of a contact determined. Display provides a high level of contrast and a fast response thanks to the use of an LCD „supertwist“ technology. Even at extremely low temperatures of -20°C, the response time is a sufficient 2.5 sec. Module features an automatic temperature compensation, that´s why they don´t require any external contrast compensation during operation. Together with a wide specified temperature range from -20 to +70 °C, the display is ideal for various industrial applications. To fix the module mechanically, it is necessary only to solder pins directly to a PCB, without a need to use screws or other mechanical components.
Touch the EA DIP180 display – [Link]
Arup wrote a guest post about his Nokia LCD breakout board:
I designed a simple Nokia LCD Breakout board which allows you to interface any Nokia 6100 compatible display to microcontroller like PIC and AVR. The board itself provides 6.8volts for the backlight by a simple boost converter built up using a common 555 timer IC. There’s a switch to choose whether you want to work with 5V logic, or with 3.3V logic. [via]
Simple Nokia LCD breakout board – [Link]
Programming of a graphic interface perhaps cannot be any simpler. Company 4D Systems brings to developers a new powerful graphic editor, which further shifts borders of simplicity and speed at a creation of a graphic output.
4D ViSi tool enables to very easily and intuitively arrange graphic control and displaying elements into the layout which we wish to achieve on the 4D Systems display modules. As a result, this way you will create the graphic interface very quickly and you can fully focus on the main – the application itself. In other words – you can put your effort to what the application “has to do” and not “how it should look”.
4D ViSi tool is a part of the 4D Workshop3 IDE – Alpha program, which is free to download. 4D ViSi is a powerful SW tool, which enables an immediate overview of your desired graphic layout for 4D Systems display modules. 4D ViSi contains a set of various dials, gauges and meters, which can be simply dragged and dropped onto the desired place. Every item has wide possibilities of adjustment. Without necessity to always reload the source code to a display module, you have a possibility to see every change on a monitor of your computer and all relevant code is inserted into the program at one click. In the enclosed video you can gain a closer view of the work in this program.
Focus on application itself and the 4D ViSi will take care about its look – [Link]
These displays are small, only about 1″ diagonal, but very readable due to the high contrast of an OLED display. This display is made of 128×32 individual white OLED pixels, each one is turned on or off by the controller chip. Because the display makes its own light, no backlight is required. This reduces the power required to run the OLED and is why the display has such high contrast; we really like this miniature display for its crispness!
Monochrome 128×32 OLED graphic display – [Link]
In the first part of this tutorial, we discussed about Winstar’s WDG0151-TMI GLCD module, which is a 128×64 pixel monochromatic display built with KS0108B and KS0107B compatible display controllers. The module was interfaced to a PIC16F887 microcontroller and a test program was written in C to demonstrate how to implement the KS0108 instruction set in the firmware of PIC to activate display pixels on the screen. We wrote our subroutine programs that would turn the GLCD on, move the display location to a specified row and column, and draw a pixel at a given coordinates. You might have realized it by now that how much of effort is required to write the firmware for just plotting a point on a GLCD screen. Today’s discussion will focus more on using the built-in GLCD library routines of mikroC Pro for PIC compiler, which will make your life a lot easier if you are using a graphical LCD in your project.