In a world of retina displays, 4K TVs, 1080p smartphones and touchscreen tablets, display technology is increasingly becoming a competitive advantage for today’s embedded devices. While high resolution video may never be a key distinguishing feature for an office printer or home thermostat, an intuitive touchscreen interface certainly can be.
Integrating a TFT LCD display, to speak nothing of touchscreen, has traditionally been an expensive and involved affair, but a new generation of display and touchscreen controllers using an object-oriented approach to display development is promising to change that.
Fig 1. The traditional approach to LCD touchscreens involves many discrete components and requires a powerful MCU
Designing an LCD display into an embedded device has traditionally been both costly and complex. After deciding on a display module, a high end, typically 32-bit MCU with abundant IO pins and external memory was needed, as well as an expensive frame buffer to refresh the display. If touch and audio capability are called for, such as for a touchscreen interface, even more components are needed – an audio DAC and touch controller.
Fig 2. FTDI’s EVE series of display and touchscreen controllers integrates display, audio and touch functionality for a simplified approach
Seeing the complexity of the old approach, chipmakers have added more integrated solutions to their offerings, greatly simplifying display development for today’s embedded product designs.
FTDI in particular offers a uniquely integrated approach that combines a powerful LCD controller, touch controller, and audio DAC for an all-in-one graphics and touchscreen solution.
Rather than integrating separate display, audio, and touch components into an expensive and complex hardware design, the FTDI FT8xx Embedded Video Engine(EVE) series of chips makes touchscreen hardware development easy through its single chip design. Instead of a high pin count parallel interface, the MCU communicates with the EVE chip using SPI. By taking a unique object oriented approach to display programming, less processing power is needed to drive the display, so rich touchscreen interfaces can be driven even with low cost, 8-bit MCUs.
Simplified Embedded Graphics and Interface Programming
Integrating LCD displays on resource constrained embedded devices is difficult not just at the hardware level. To drive an LCD properly, the right firmware as well as graphics libraries, must be installed on the MCU. This takes up a considerable amount of memory that could be used for application software.
Once the proper driver and libraries are installed, the programmer then creates graphics by issuing commands to draw graphic primitives, such as lines, circles and squares, to the frame buffer, which stores the bitmap image information that then drives the display.
The EVE approach is slightly different. Instead of storing image information as a bitmap in the frame buffer, a display list on the EVE chip stores all the objects to be displayed on the screen. On each screen refresh, the chip checks the display list to determine, on a line-by-line basis, the pixel data that needs to be sent to the display. Because of the line-by-line, object oriented approach, memory requirements are minimised, and the EVE engine can drive sophisticated graphics extremely efficiently.
This object oriented approach also simplifies graphics development. Programmers get access to the basic graphics primitives, but also more complex shapes, as well as “widgets”. Buttons, dials, sliders, graphs, and progress bars, are all available with EVE and they it easy to create compelling graphics and intuitive user interfaces.
Touchscreen development is also made easier with EVE’s integrated controller for resistive touch screen and interface for capacitive touch screens. Traditional touchscreen programming involves polling the touch controller constantly to detect the x-y coordinates of touch events. These raw coordinates then need to be translated by the program into button presses. With EVE, widgets on screen can be “tagged” to tell the program which widget was pushed, as well as where on the widget it was pressed – useful for sliders and dials.
Similarly, the EVE chips have audio capability which makes it easy for developers to playback audio snippets, or synthesise MIDI melodies or sounds for audio feedback to aid user interaction.
The EVE Series
Alpha Micro carries the entire FTDI EVE product range, including the FT80x series which supports screens up to 512×512 resolution with 18-bit RGB, as well as the FT81x series, supporting screens up to 800×600 resolution and 24-bit “True Color” RGB. Both series have models that support resistive, as well as multi-touch capacitive touchscreens with up to 5 simultaneous touch points.
Fig 3. AlphaMicro has a range of FTDI development kits available such as the VM800B which includes a fitted touchscreen module with enclosure
Fig 4. FTDI’s GUI-based EVE Screen Designer makes it easy to develop and preview embedded user interfaces without programming experience
To assist development, a number of development kits available with or without display modules, as well as library of sample applications. For UI development, FTDI also has Windows based GUI screen designer program which allows users to preview and create display lists without embedded programming experience.