硬汉嵌入式论坛

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

STM32F429IGT6通过LTDC驱动7寸屏,电阻触摸,touchgfx在控件触摸点击时屏幕闪烁

[复制链接]

4

主题

7

回帖

19

积分

新手上路

积分
19
发表于 2021-1-21 21:33:42 | 显示全部楼层 |阅读模式
硬件:STM32F429IGT6+16位宽SDRAM,SDRAM做显存,外部通过SPI挂在W25Q128用来存储图片,触摸是电阻触摸,
软件:使用HAL库,freertos+touchgfx,通过cubeMAX生成代码,然后在基础上修改,
现在是加入了触摸屏驱动,还没有做触摸的校准,用的固定的参数去计算的坐标,然后触摸按钮控件时,按下屏幕闪一下,控件在旁边闪烁一下,松开时也是一样,静态显示则没有问题
有没有人也碰到过这个现象
附件包含有现象视频和源码

LJtouchgfx.rar

17.6 MB, 下载次数: 56

源码

_Template.zip

1.42 MB, 下载次数: 24

SPI下载算法

77D5E52C0BFD4C07D24FACCACC331843.mp4

4.21 MB, 下载次数: 25

现象视频1

E404CA25C7BC04A0366C8218F8BC25AF.mp4

6.49 MB, 下载次数: 14

现象视频2

回复

使用道具 举报

4

主题

7

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2021-1-21 21:53:59 | 显示全部楼层
补充一下,sysclk设置的180M,LTDC设置的45M时钟,如果将LTDC时钟调低到16M,则现象消除,但是对于RGB888的AT070TN92屏幕来说,这个时钟太低了,显示效果闪烁不堪入目,SDRAM用的2分频,90M,数据没问题
回复

使用道具 举报

4

主题

7

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2021-1-21 21:58:41 | 显示全部楼层
补充一下:SYSCLK-180M,LTDCCLK-45M,SDRAMCLK-90M,在将LTDC的时钟降低到16M时现象消除,但是对于RGB888的AT070TN92的屏幕来说,时钟太低,显示闪烁效果不堪入目,
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117530
QQ
发表于 2021-1-22 08:51:58 | 显示全部楼层
帮顶下,不熟悉TouchGFX。
回复

使用道具 举报

4

主题

7

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2021-1-24 00:25:10 | 显示全部楼层
eric2013 发表于 2021-1-22 08:51
帮顶下,不熟悉TouchGFX。

又调试了两天,基本确定了是16位带宽的SDRAM不行,得上32位的,只要将LTDC的时钟调到20M就不会出现闪烁的问题,提高LTDC的时钟后用MDK查看并且用一个变量去记录SDRAM的BUSY,基本是都处于一直忙的状态了,如果不想降低LTDC的时钟,直接将主时钟提高,PLLM-25,PLLN-360换成450,也就是sysclk-225M时,LTDC提高到30M刷新也没问题了。SDRAM时钟是DIV2,最主要还是,图片的缓存空间和LTDC双缓冲的空间都在一个SDRAM里面,访问起来估计有冲突了,不能太快。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-12 21:20 , Processed in 0.043147 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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