TouchGFX allows you to have high quality graphics on your devices without using external SD-RAM.
Users expect smartphone look and feel, not acknowledging the constraints of limited resources on microcontroller setups. The user expectations require 16-bit color depth normally pushing one to use external SD-RAM for two framebuffers.
This requirement for external memory increases the complexity and cost of the hardware development and production cost. We experience a hard push from high volume product manufactures towards saving of external RAM, accepting only a minor UI performance limitation.
Enough Internal Memory on STM32 MCUs
Popular microcontrollers from ST targeting GUI applications contain enough internal memory to hold one framebuffer + TouchGFX stack + RTOS.
|microcontroller||internal memory||display size/resolution||Framebuffer size|
|STM32F429||256 Kb||2,4″ or 3,5″ / 320×240||150 Kb (320×240, 16 bit colors)|
|STM32F469||384 Kb||4,3″ / 480×272||255 Kb (480×272, 16 bit colors)|
|STM32F746||340 Kb||4,3″ / 480×272||255 Kb /480×272, 16 bit colors)|
|STM32F769||812 Kb||4,3″ / 480×272||383 Kb (480×272, 24 bit colors)|
TouchGFX Stack + RTOS requires around 30k to 50KB RAM.
The architecture of the TouchGFX framework allows you to run on internal memory alone using only one framebuffer and still obtain a high frame rate even with full screen animations and smart effects.
When a device is only using one framebuffer, it is important that the graphics framework does not draw to the framebuffer at the same time as the TFT controller is outputting the pixels to the screen. Otherwise, the result will be a mix of the old and the new frame (image tearing).
TouchGFX controls this with an incremental algorithm that updates the framebuffer simultaneously with the TFT controller outputting pixels, but always only updating the pixels that the TFT controller has already transferred.
TouchGFX takes care of all this, allowing the application programmer to focus on realization of the design achieving smooth animations with up to 60 Hz framerate.
Chrom ART Accelerator™
Many microcontrollers from ST, including the listed above, contains the Chrom ART Accelerator™. This accelerator doubles the performance in many graphics primitives like image composition and text rendering. TouchGFX comes with full support of the Chrom-ART Accelerator.
TouchGFX allows you to use the full potential of ST microcontroller based solution leveraging the combination of a single framebuffer in internal memory and the Chrom ART Accelerator™.
Video Demos of STM32 Applications on Internal RAM Only
Download the Application Code as Binary and Full Projects
Run them on your ST discovery kits, and play around with the code if you like.
For instructions, please see the Readme file.
For further information about required resources for running your GUI application based on TouchGFX contact firstname.lastname@example.org
We are continuously pushing the boundaries of your GUI performance.