cancel
Showing results for 
Search instead for 
Did you mean: 

TouchGFX on STM32H7A3: screen flickers when screen is updated

GS1
Senior III

Hi all,

we have a custom made STM32H7A3 board and have an issue with the TouchGFX screen display:

The display flickers heavily with every new screen it should display, after a short time it is stabilized and ok.

Components and Setup:

STM32H7A3 at 280 MHz (8 MHz crystal)

Display with parallel interface, 800x480 pixels,

LTDC Clock: 33.33 MHz

HyperFlash S26KL512 (64 MB) (set to memory mapped mode), running on OctoSPI1 with 70 MHz

HyperRAM (16 MB), running on OctoSPI2 with 70 MHz

Double Buffering enabled, RAM Buffers at 0x70000000 and 0x70200000

DMA2D enabled, Color Mode RGB888

ICache and DCache currently disabled

Versions of TouchGFX 4.21.4 and STMCubeMX 6.8.0. / HAL V. 1.11.0

The project is created using CubeMX with

- FreeRTOS enabled (CMSIS_V2)

- TouchGFX with Application Tick Source: LTDC, ChromART enabled

LTDC setup is copied from a running system we constructed 4-5 years ago with a STM32H743 processor and the same LCD panel, so this should be set correctly.

Unfortunately the TouchGFX handling of the previous system was not created using STMCubeMX as at that time this was not yet available. Source code therefore is simply comparable.

Except for the flickering problem the new system is working properly and is showing the correct screen after startup flicker is stabilized.

When switching to another screen, the new screen is having a cevere flicker of a kind of misaligned screen parts and after some 1/10th of a second the screen is ok and stable.

Can anyone help with suggestions?

And: Which settings should be used for DMA2D concerning Transfer Mode? Currently it is set to "Memory to Memory".

P.S: Adjusting the resolution to 832 x 480 as proposed by fitus in a similar post did not correct the problem!

Best regards

GS

1 ACCEPTED SOLUTION

Accepted Solutions
GS1
Senior III

Ok, I got the solution: I reduced the LCD Clock from 33 MHz to 20 MHz. Then flicker is gone.

Maybe helps others when using HyperRAM with TouchGFX/LCD.

View solution in original post

2 REPLIES 2
GS1
Senior III

Ok, I got the solution: I reduced the LCD Clock from 33 MHz to 20 MHz. Then flicker is gone.

Maybe helps others when using HyperRAM with TouchGFX/LCD.

Dolence
Associate III

I was having the same issue and had to lower the clock from 24 to 22 MHz. The weird thing is that it worked at 24 MHz in the past with much older fw version.​