Brokeice 发表于 2024-1-4 09:49:09

stm32F429使用touchgfx出现异常帧

请教各位大佬两个关于touchgfx的问题:


项目架构为stm32加FPGA,图像通过ltdc接口输出至fpga,由fpga在显示屏显示。目前遇到两个问题如下:

1. 显示过程中偶现LCD图像出现黑色闪烁条纹,经过定位是RGB信号中的G4信号为高,即实际RGB颜色为0,16, 0

2. LTDC输出图像会产生错误图像,本来正常图像是800 * 480,但是fpga捕捉到某行图像只有82个像素,不足800个,这个偶发错误会让fpga的ddr组包错误,图像完全挂掉。


请问该问题可能是什么原因导致的




eric2013 发表于 2024-1-4 11:16:11

1、LTDC本身的输出应该不会出错,可以示波器抓包看下
2、每行仅捕获到82个像素,这个差太多,可以降低LTDC时钟,先测试下几MHz的速度试试。

Brokeice 发表于 2024-1-4 20:27:55

屏幕是800*480的,设置像素时钟33M、16Mhz和8Mhz,都会出现缺少像素的情况

eric2013 发表于 2024-1-5 08:36:56

Brokeice 发表于 2024-1-4 20:27
屏幕是800*480的,设置像素时钟33M、16Mhz和8Mhz,都会出现缺少像素的情况

那很大概率FPGA端的实现有问题。

Brokeice 发表于 2024-1-5 11:41:21

fpga端捕捉到是LTDC给到他那边的像素缺少

eric2013 发表于 2024-1-6 09:31:48

Brokeice 发表于 2024-1-5 11:41
fpga端捕捉到是LTDC给到他那边的像素缺少

你可以示波器捕获实测下,LTDC本身输出少的概率很小。

另外我发现了一个很重要的问题,你的LTDC搬运的显存空间用的那个,你的F429端有800*480这么大的显存空间没。F429外挂了SDRAM吗

Brokeice 发表于 2024-1-8 16:59:47

eric2013 发表于 2024-1-6 09:31
你可以示波器捕获实测下,LTDC本身输出少的概率很小。

另外我发现了一个很重要的问题,你的LTDC搬运的 ...

今天找到了原因,是stm32时钟树配错导致的,另外fpga那边对于DE信号的处理也有点问题导致的;F429这边是挂了显存的
页: [1]
查看完整版本: stm32F429使用touchgfx出现异常帧