硬汉嵌入式论坛

 找回密码
 立即注册
查看: 424|回复: 10
收起左侧

[LTDC] STM32H723使用LTDC驱动1280*480屏幕出现晃动

[复制链接]

1

主题

13

回帖

16

积分

新手上路

积分
16
发表于 2025-7-8 13:43:29 | 显示全部楼层 |阅读模式
本帖最后由 chance 于 2025-7-8 13:48 编辑

想请教各位大神,使用STM32H723+LTDC驱动1280*480屏幕,SDRAM为16bit 16MB,配置好LTDC后使用背景测试R、G、B显示正常,LTDC时钟频率设置为50MHz。
使用画线函数画线(直接在显存对应位置赋值)画出两条直线显示在界面,发现线条显示左右晃动。
画线位置如下:
    LCD_DrawLine(0, 20, 100, 20);
    LCD_DrawLine(50, 40, 100, 40);

界面显示如下:
20250708-121459.jpg     20250708-121507.jpg     20250708-121516.jpg

液晶屏驱动IC给出的在720/640 x1280 的时序如下:
截图20250708134137.png


调整过LTDC时钟频率,升高和降低都无法消除。尝试调试水平/垂直消隐参数,有些参数能降低晃动的频率,但无法完全消除。请教各位有哪些参数可以调整?




回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2025-7-8 17:21:00 | 显示全部楼层
H723的话,不知道有没有这个问题。

STM32H7驱动LCD抖屏,另藏玄机,保证你想不到^_^
https://forum.anfulai.cn/forum.p ... 5139&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

1

主题

13

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2025-7-8 20:48:33 | 显示全部楼层
eric2013 发表于 2025-7-8 17:21
H723的话,不知道有没有这个问题。

STM32H7驱动LCD抖屏,另藏玄机,保证你想不到^_^

感谢硬汉哥的回复,在SDRAM初始化后加入这段代码,没有变化。程序在画线后也没有对SDRAM进行写操作。在线调试看到该区域地址的SDRAM数值也是没有改变。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2025-7-9 09:45:09 | 显示全部楼层
chance 发表于 2025-7-8 20:48
感谢硬汉哥的回复,在SDRAM初始化后加入这段代码,没有变化。程序在画线后也没有对SDRAM进行写操作。在线 ...

LTDC所涉及到所有GPIO速度等级调节过没,调节下试试,各个等级都测试下。
回复

使用道具 举报

1

主题

13

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2025-7-9 19:01:45 | 显示全部楼层
eric2013 发表于 2025-7-9 09:45
LTDC所涉及到所有GPIO速度等级调节过没,调节下试试,各个等级都测试下。

刚刚试过了,调整为GPIO_SPEED_VERY_HIGH、GPIO_SPEED_HIGH、GPIO_SPEED_MEDIUM没有改善,调整为GPIO_SPEED_LOW直接没有显示了。
回复

使用道具 举报

1

主题

13

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2025-7-9 19:16:09 | 显示全部楼层

更新一下测试情况:
1、尝试画竖线LCD_DrawLine(50, 0, 50, 1280),发现竖线完全不能显示,变成散开的点。

20250709-191120.jpg

2、在多个位置画横线,发现最多只能画到Y轴960的位置,再往后就显示不出来,这明显与LTDC配置为480*1280的分辨率不符合。
微信图片编辑_20250709191037.jpg

STM32H723规格书LTDC端口支持VGA输出(1024*768),屏幕分辨率为480*1280,是否不支持这么大的分辨率,但是看论坛也有几个帖子是这样用的。目前调试无进展
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2025-7-10 08:43:01 | 显示全部楼层
chance 发表于 2025-7-9 19:16
更新一下测试情况:
1、尝试画竖线LCD_DrawLine(50, 0, 50, 1280),发现竖线完全不能显示,变成散开的点 ...

这个是不是飞线接的,还是FPC软排线。

如果这个也不行,不知道是不是16bit SDRAM带宽不够,确实带不动。
回复

使用道具 举报

1

主题

13

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2025-7-10 20:43:53 | 显示全部楼层
eric2013 发表于 2025-7-10 08:43
这个是不是飞线接的,还是FPC软排线。

如果这个也不行,不知道是不是16bit SDRAM带宽不够,确实带不动 ...

FPC排线的。现在能够成功点亮。确实是带不动了,LTDC配置由AGB888改为RGB565就能够正常显示了。测试过RGB888也是不行的。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2025-7-11 09:07:48 | 显示全部楼层
chance 发表于 2025-7-10 20:43
FPC排线的。现在能够成功点亮。确实是带不动了,LTDC配置由AGB888改为RGB565就能够正常显示了。测试过RGB ...

24位和32位色,最好上32bit SDRAM
回复

使用道具 举报

1

主题

13

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2025-7-11 09:14:25 | 显示全部楼层
eric2013 发表于 2025-7-11 09:07
24位和32位色,最好上32bit SDRAM

STM32H723的FMC总线不支持32bitSDRAM ,可能要换主控才行了。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2025-7-12 09:00:26 | 显示全部楼层
chance 发表于 2025-7-11 09:14
STM32H723的FMC总线不支持32bitSDRAM ,可能要换主控才行了。

那只能使用RGB565了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-12 02:55 , Processed in 0.054420 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表