你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32 GUI LTDC 最大像素时钟评估方法

[复制链接]
STMCU小助手 发布时间:2022-8-7 18:05
1. 引言
' N+ T; K* c' [7 g移动、工业和消费应用的发展使得对图形用户界面(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 最大像素时钟评估的方法,通过最大像素时钟间接可以判断支持的最大屏幕分辨率。
$ N( m: \( p! Y* g1 K; T. 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 的现象。
. P5 _/ u" M2 k8 N4 ]5 y

- a1 ~1 @' h4 j, Y* f )K1PS[0]$CM_OVV8(INCA}I.png
3 G1 e3 Z5 T5 Z& y
5 b. a3 b' |! }; ?6 R0 y+ p / G" j7 [( C5 S) i, `- Z4 Q( A

. m2 U: v; v+ B  V4 a3 J
9 i$ M; p, J( H" `" O7 [! I0 v) u
3. LTDC 控制器
& ~  X3 v6 H; e, L; y3.1. LTDC FIFO underrun 产生的机理
6 l5 T' z2 K7 [& D要了解 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。
! S: {+ W. }/ dLCD-TFT 控制器外设使用 3 个时钟域:AHB 时钟域(HCLK),用来将数据从存储器传输到 FIFO 层。 APB 时钟域(PCLK),用来访问配置和状态寄存器。像素时钟域(LCD_CLK),用来生成 LCD-TFT 接口信号。
/ r" ^' k7 `2 q- h! [可以看出,在像素时钟比较高的情况下,由于 LTDC 没有及时从帧缓冲区提取图形数据,导致 FIFO 里边空了,如果发生请求像素的情况,就产生了 FIFO underrun。在正常的 GUI 开发中,我们应该避免 FIFO underrun 的产生,从而保证视频显示的流畅。
3 K; L/ P; H" z4 [% ]$ e. i9 l" t
! i  ]& ?" H2 _) t% N/ g8 T3 }
' {4 v" s! u8 K- U1 F( K" u
AR7MOE$Z_QV4~VM[SC8EB)O.png + c- d! I2 H  X- X2 j$ t6 k) K1 F

  l# Q5 b  a, ]# d
$ K0 O+ o6 S2 r# P4 n完整版请查看:附件8 r: t/ G  \$ w# K2 y( P% \; b

# \! I8 J( p: Z& H. X2 W8 R. H9 _
8 P6 J9 T) D* i4 Z
( P. v# t$ K; o, \& B/ N. ]

LAT1169_STM32_GUI_LTDC最大像素时钟评估方法_v1.0.pdf

下载

571.84 KB, 下载次数: 9

收藏 评论0 发布时间:2022-8-7 18:05

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版