
1. 引言 移动、工业和消费应用的发展使得对图形用户界面(GUI)的需求更强,并且所需硬件资源也有所增加。这些应用需要更高质量的图形、更多的硬件和软件资源以及更高的处理性能。为了应对这些要求,STM32 MCU 提供了丰富的图形产品组合。由于采用了嵌入式LCD-TFT 显示控制器(LTDC),STM32 MCU 可以直接驱动高分辨率显示面板,无需任何 CPU 干预。; A% [* E2 h2 n* |9 D6 ~ 对于使用 LTDC 来开发图形应用的案例,客户经常有以下问题:STM32 MCU 的LTDC 最大支持的屏幕分辨率是多少?STM32F4 或者 F7 能支持 1280×720 的屏幕分辨率,达到 60Hz 的刷新率吗?SDRAM 的位宽如何选取性价比最高,是选择 16 位还是 32位? 如何判断当前的设计应用产生了 SDRAM 带宽不足问题?针对这些问题,本文档从问题产生的原理、LTDC 控制器的组成出发,介绍了 STM32 GUI LTDC 最大像素时钟评估的方法,通过最大像素时钟间接可以判断支持的最大屏幕分辨率。 . H, A/ G' A) x" H( t 2. 带宽不足产生的 FIFO underrun% e' k0 D! C. l% l& T5 o' t/ ]- c$ w& A 对于使用 LTDC 控制器的 GUI 应用,如果参数设置不合理,可能会出现显示屏幕抖动的问题,这个问题有时就是由于带宽不足导致的 LTDC FIFO underrun 现象。例如,对于同样的硬件配置,使用的是 STM32H750DK 开发板,帧缓冲存放在外部 SDRAM, SDRAM 是 16 位,显示屏是 1024×600 分辨率,帧缓冲的颜色格式分别设置为 RGB565和 RGB888,颜色格式为 16bpp(RGB565)的配置视频流畅,而颜色格式为 24bpp 的配置视频出现明显抖动,有花屏,如图 1、图 2 所示。这就是由于 SDRAM 带宽不足,产生了 LTDC FIFO underrun 的现象。 ![]() ![]() 9 i$ M; p, J( H" `" O7 [! I0 v) u 3. LTDC 控制器 3.1. LTDC FIFO underrun 产生的机理 要了解 LTDC FIFO underrun 产生的机理,首先介绍下 LCD-TFT 显示控制器(简称LTDC)。如图 3 所示,LTDC 是 AHB 架构上的主设备,可以对内部和外部存储器进行读访问。LTDC 有两个独立的层,层 1 和层 2,每层都有自己的 FIFO,从而使显示更加灵活。LTDC 控制器以 AHB 总线速度自动从帧缓冲区提取图形数据,然后将图形数据存储在其中一个 FIFO 内部层中,随后驱动到显示器。该系统架构使图形可以在没有任何 CPU 介入的情况下构建并绘制到屏幕上。LTDC 从帧缓冲区中检索属于图像的数据,而 DMA2D则准备下一张图像。LTDC 的功能是在每个像素时钟上升沿或时钟下降沿,并在屏幕有效区域内,LTDC 层从其 FIFO 中检索一个像素数据,将其转换为内部 ARGB8888 像素格式,并将其与背景和/或其他图层像素颜色进行混合。得到的像素以 RGB888 格式编码,通过抖动单元并被驱动到 RGB 接口中,像素便会显示到屏幕上。当 FIFO 为空时,如果发生请求像素的情况,就会产生 FIFO underrun。 LCD-TFT 控制器外设使用 3 个时钟域:AHB 时钟域(HCLK),用来将数据从存储器传输到 FIFO 层。 APB 时钟域(PCLK),用来访问配置和状态寄存器。像素时钟域(LCD_CLK),用来生成 LCD-TFT 接口信号。 可以看出,在像素时钟比较高的情况下,由于 LTDC 没有及时从帧缓冲区提取图形数据,导致 FIFO 里边空了,如果发生请求像素的情况,就产生了 FIFO underrun。在正常的 GUI 开发中,我们应该避免 FIFO underrun 的产生,从而保证视频显示的流畅。 ' {4 v" s! u8 K- U1 F( K" u ![]() 完整版请查看:附件8 r: t/ G \$ w# K2 y( P% \; b |
LAT1169_STM32_GUI_LTDC最大像素时钟评估方法_v1.0.pdf
下载571.84 KB, 下载次数: 9
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南