A Modular Framework for High-Performance Graphical Interfaces on STM32 Microcontrollers

Authors

  • Oleksandr Stelmakh
  • Inna V. Stetsenko
  • Anton Dyfuchyn
  • Alexander Zarichkovyi
  • Oleksandra Dyfuchyna

Keywords:

STM32, embedded systems, graphical user interface, light and versatile embedded graphics library (LVGL), common microcontroller software interface standard (CMSIS), free real-time operating system (FreeRTOS), configuration framework, performance optimization

Abstract

This paper presents a modular framework for STM32 microcontrollers designed for high-performance graphical user interfaces. The proposed framework combines direct low-level hardware access with a structured, template-based configuration approach in modern C++, aiming to reduce the overhead commonly associated with universal abstraction layers while preserving architectural clarity and type safety. The framework architecture is organized into two layers: a low-level hardware interaction layer based on standardized microcontroller interfaces, and a higher-level declarative configuration layer that simplifies peripheral setup and system integration. This design enables predictable behavior, improved resource efficiency, and adaptability across different STM32 microcontroller families. The performance of the proposed solution was evaluated on a representative STM32 development platform using a widely adopted embedded graphics library. Experimental results demonstrate a substantial improvement in rendering efficiency and memory utilization compared to a reference implementation, while maintaining stable graphical output under varying workloads. In addition, the framework supports flexible rendering pipelines, predefined peripheral configurations, and integration with a real-time operating system for multitasking graphical applications. The obtained results indicate that the proposed approach provides an efficient and specialized alternative to general-purpose embedded frameworks for resource-constrained graphical systems.

References

H. Kopetz, Real-Time Systems: Design Principles for Distributed Embedded Applications, 2nd ed. Springer, New York, 2011, 396 p.

S. Haug, C. Böhm, and D. Mayer, “Automated code generation and validation for software components of microcontrollers,” Proceedings of the 20th ACM International Conference on Computing Frontiers (CF’23), Bologna, Italy, May 9–11, 2023, pp. 202–208.

J. Beningo, Embedded basics – API’s vs HAL’s, Beningo Embedded Group, Apr. 2016, [Online]. Available at: https://www.beningo.com/embedded-basics-apis-vs-hals/

Y. Zhu, Embedded Systems with Arm Cortex-M Microcontrollers in Assembly Language and C, 2nd ed., E-Man Press LLC, 2015.

N. K. Prabowo and I. Irwanto, “The implementation of Arduino microcontroller boards in science: A bibliometric analysis from 2008 to 2022,” Journal of Engineering Education Transformations, vol. 37, no. 2, pp. 107–120, 2023. https://doi.org/10.16920/jeet/2023/v37i2/23154.

Arm Ltd., “Important update on Mbed end-of-life,” Mbed Community Forum, July 2024, [Online]. Available at: https://forums.mbed.com/t/important-update-on-mbed-end-of-life/23644

I. V. Filippenko, V. R. Korniyenko, and H. K. Kulak, “Overview of graphics libraries for embedded platforms,” Radioelectric and Informatic, no. 1, pp. 47–53, 2020. (in Ukrainian)

G. İşnas and N. Şenyer, “Comparison of TouchGFX and LVGL embedded hardware performance for graphical user interfaces,” Gazi University Journal of Science Part C: Design and Technology, vol. 9, no. 2, pp. 215–224, 2021. https://doi.org/10.29109/gujsc.915163.

D. Vandevoorde, N. M. Josuttis, and D. Gregor, C++ Templates: The Complete Guide, 2nd ed. Addison-Wesley, Boston, 2017, 822 p.

B. P. Douglass, Real-Time UML Workshop for Embedded Systems. Elsevier, Amsterdam, 2014, 378 p.

Arm Ltd, Common Microcontroller Software Interface Standard (CMSIS), 2022, [Online]. Available at: https://arm-software.github.io/CMSIS_5/

R. Barry, Mastering the FreeRTOS Real Time Kernel, 2nd ed. Real Time Engineers Ltd., 2020, 399 p.

J. Aynsley, Modern C++ in embedded systems – myth and reality, Embedded.com, 2015, [Online]. Available at: https://www.embedded.com/modern-c-in-embedded-systems-myth-and-reality/

J. J. Labrosse, µC/OS-III: The Real-Time Kernel for the STM32, Micrium Press, Weston, 2010, 888 p.

STMicroelectronics, AN2784: Using the high-density STM32F10xxx FSMC peripheral to drive external memories, Application Note, 2017, [Online]. Available at: https://www.st.com/resource/en/application_note/an2784-using-the-highdensity-stm32f10xxx-fsmc-peripheral-to-drive-external-memories-stmicroelectronics.pdf

STMicroelectronics, AN4861: LCD-TFT Display Controller (LTDC) on STM32 MCUs, Application Note, 2017, [Online]. Available at: https://www.st.com/resource/en/application_note/an4861-introduction-to-lcdtft-display-controller-ltdc-on-stm32-mcus-stmicroelectronics.pdf

STMicroelectronics, AN4943: How to use Chrom-ART Accelerator (DMA2D) to refresh an LCD-TFT display on STM32 MCUs, Application Note, 2017. [Online]. Available at: https://www.st.com/resource/en/application_note/an4943-how-to-use-chromart-accelerator-to-refresh-an-lcdtft-display-on-stm32-mcus-stmicroelectronics.pdf

STMicroelectronics, AN4235: I²C timing configuration tool for STM32F0/F3 microcontrollers, Application Note, 2013. [Online]. Available at: https://www.st.com/resource/en/application_note/an4235-i2c-timing-configuration-tool-for-stm32f3xxxx-and-stm32f0xxxx-microcontrollers-stmicroelectronics.pdf

STMicroelectronics, UM1718: STM32CubeMX for STM32 configuration and initialization C code generation, User Manual, 2014, [Online]. Available at: https://www.st.com/resource/en/user_manual/um1718-stm32cubemx-for-stm32-configuration-and-initialization-c-code-generation-stmicroelectronics.pdf

A. Marongiu and L. Benini, “An OpenMP compiler for efficient use of distributed scratchpad memory in MPSoCs,” IEEE Transactions on Computers, vol. 61, no. 2, pp. 222–236, 2012. https://doi.org/10.1109/TC.2010.199.

STMicroelectronics, AN4943 How to use Chrom-ART Accelerator to refresh an LCD-TFT display on STM32 MCUs Application Note, 2024, [Online]. Available at: https://www.st.com/resource/en/application_note/an4943-how-to-use-chromart-accelerator-to-refresh-an-lcdtft-display-on-stm32-mcus-stmicroelectronics.pdf

J. Arm et al., “Measuring the Performance of FreeRTOS on ESP32 Multi-core,” IFAC-PapersOnLine, vol. 55, issue 4, pp. 292-297, 2022. https://doi.org/10.1016/j.ifacol.2022.06.048.

LVGL Developers, lv_demo_benchmark: Performance benchmarking demo for LVGL, 2024, [Online]. Available at: https://github.com/lvgl/lvgl/tree/master/demos/benchmark

O. Stelmakh, STMCMP: A modular CMSIS-based framework for STM32, [Online]. Available at: https://github.com/StelmakhAleksandr/stmcmp

LVGL Developers, STM32F746G-DISCO LVGL demo project, [Online]. Available at: https://github.com/lvgl/lv_port_stm32f746_disco

K. B. A. Borowski and K. Wojtulewicz, “Implementation of robotic kinematics algorithm for industrial robot model using microcontrollers,” IFAC-PapersOnLine, vol. 55, no. 10, pp. 108–113, 2022. https://doi.org/10.1016/j.ifacol.2022.09.063.

Y. Krainyk, “Embedded systems multimedia framework for microcontroller devices,” Advances in Cyber-Physical Systems, vol. 8, no. 1, pp. 43–49, 2023. https://doi.org/10.23939/acps2023.01.043.

A. Author et al., “Relevant HAL Interface Requirements for Embedded Systems,” arXiv preprint arXiv:2512.14514, 2025.

H. Yoon, J. Kim, and S. Ha, “Performance optimization techniques for ARM Cortex-M processors in embedded systems,” IEEE Access, vol. 8, pp. 207789–207801, 2020. DOI: 10.1109/ACCESS.2020.3038211.

Downloads

Published

2026-01-01

How to Cite

Stelmakh, O., Stetsenko, I. V., Dyfuchyn, A., Zarichkovyi, A., & Dyfuchyna, O. (2026). A Modular Framework for High-Performance Graphical Interfaces on STM32 Microcontrollers. International Journal of Computing, 24(4), 734-741. Retrieved from https://www.computingonline.net/computing/article/view/4339

Issue

Section

Articles