Delivering the right performance for your next application
How to accelerate the implementation of a graphical user interface
Lee K. Koh,
When the interface is intuitive the process of controlling electronic equipment is transparent, achieving this “seamless” interaction is becoming more attainable thanks to the widespread adoption of graphical displays.
Many consumer and light industrial electronics, such as remote controls, over the counter appliances, printers, and information points have mapped the development of display technology; first there were LEDs, then came segmented LEDs which in turn have been displaced by segmented LCDs. The trend continues and now, as always, it is both desirable and advantageous to use the most sophisticated displays commercially viable.
Market conditions mean these same applications are now able to enjoy the benefits of graphical displays, because as their use increases they continue to exhibit a drop in price, thanks to the economies of scale. However, as the sophistication of the display rises so too does the complexity of the design. Perhaps more significantly, the system cost can also escalate.
Unlike simpler displays, graphical displays require relatively complex support, in terms of a display controller and frame buffer. In some smaller displays these elements are integrated, but in medium or larger displays that isn’t always the case. Many displays do not feature integrated controllers and/or frame buffers, but a graphics sub-system is unavoidable whether it is integrated in to the display, implemented using discrete components, or part of the system processor. Processors with integrated graphics sub-systems, or graphics processors are generally more expensive than general purpose processors, so while the display technology itself may be more affordable, its implementation is not without commercial challenges.
In response to this increasingly common problem, Microchip has developed a family of low cost, high performance PIC microcontrollers that feature a fully integrated and advanced graphics sub-system, thereby removing many of the technical and commercial challenges of adopting more sophisticated display solutions.
The PIC24FJ DA family features three hardware graphics accelerators, a frame buffer and a display controller, integrated alongside the powerful PIC24F core. This advanced hardware platform is supported through Microchip’s free Graphics Display Designer and Graphics Library.
If these hardware features were implemented discretely, as with other microcontroller-based systems, they could represent as much cost as the microcontroller itself. With Microchip’s solution the Bill of Materials for the microcontroller and graphics sub-system (BoM) could be reduced by as much as 50%.
These BoM savings are achieved through the level of integration and as a result, the PIC24FJ DA family represents a single-chip solution to adding an advanced graphics display in systems that today feature either a simple segmented LCD or perhaps no display at all.
The three hardware accelerators handle compute-intensive graphic tasks such as graphics object rendering, and data or image decompression. This delivers significantly greater performance over a software-only approach.
As well as providing all of the hardware functions needed to directly drive a range of STN/TFT or CSTN LCDs and some OLED displays up to VGA resolution, the process of actually designing the graphical user interface itself is also addressed, through Microchip’s free library of graphics resources. The graphics library offers a number of pre-defined elements, including: buttons; windows; check boxes; radio buttons, text and images. Additionally, engineers can implement edit and list boxes, sliders and scroll bars, progress bars and meters/dials.
These software tools and their predefined graphical elements can be added and customised through a simple ‘drag and drop’ approach, or can help developers create their own graphical elements and effects. This enables sophisticated user interfaces to be created quickly and easily. The Graphics Display Designer also features automatic code generation, which means little or no hand-coding is required. When used with the Graphics Library, the API is automatically included, making it a simple task to correlate a screen element with a control function, or display the value of an external sensor obtained through one of the PIC24FJ DA family’s peripherals, on the screen.
The PIC24FJ DA family is available with two RAM configurations, depending on the resolution of the screen being used. Resolutions up to QVGA can be controlled using the integrated frame buffer, with the facility to accommodate larger resolutions using additional external RAM. The family supports monochrome (1 bit per pixel, or bpp) up to full 16bpp colour (64k possible colours) to create engaging user interfaces.
Furthermore, each member in the new PIC24FJ DA family also features Microchip’s mTouch capacitive touch sensing technology and support for a resistive touch sensitive display. With the addition of USB (Full speed, Device and On-the-Go), SPI and UART interfaces, the PIC24FJ DA family is a viable, single-chip solution for implementing advanced graphical user interfaces in a number of applications.
The use of graphical displays is well established in many sectors and is becoming commonplace in many consumer, industrial, medical and automotive applications. With its hardware acceleration units, integrated frame buffer and display controller, closely coupled to the powerful PIC24F core, the PIC24FJ DA family can deliver the right performance at the right price for a range of next-generation applications.
LATEST issue 3/2023