cancel
Showing results for 
Search instead for 
Did you mean: 

Strange behavior with Round Amoled Display on Custom STM32L4R9 Board

LSobo.1
Associate II

Hello community,

i'm working now for a longer time on a custom STM32l4r9 board. We want to use the round AMOLED 390x390 display from the Dev-Kit with our Board.

Yesterday i worked out how to get the display to work with the new TouchGFX release and implemented the DSI functions from the examples to the TouchGFXHAL.cpp. I created a Projekt from Scratch with CubeIDE and copied all the recent stuff from the templates.

We use internal RAM, GFXMMU, LTDC (DSI) and DMA2D. I can get manually a solid color on the Screen or an image from an .h File with DMA2D. Everything works fine. But when i start my touchgfx gui i get a problem. I attached two pictures of it. One is with LTDC Set Pitch 1024 and one without.

In the example with the white lines the pitch is aktivated and the proportions are okay, but it seems there are some lines missing.

Another strange thing is, that my Code is never running in the TE-Interrupt. I have to HAL_Refresh() the display in the HAL_DSI_EndOfRefreshCallback() interrupt. But the Templates refresh the display in the HAL_DSI_TearingEffectCallback(). Shouldn't there be a interrupt every 16-17ms?

I also uploaded a Video for an Demonstration.

Can anyone help?

1 REPLY 1
LSobo.1
Associate II

Hello community,

now i get a normal picture on my Screen without white lines. I had to chance the "FRAME_BUFFER_WIDTH" parameter in den "TouchGFXHAL::initialize()" function. I think i had to do this because of the GFXMMU LUT Config.

I just have a problem now with tearing effect on swiping. Maybe a timing problem of the LTDC? I will look further on this problem.

If anyone is intereseted on how to bring the round 390x390 Amoled Touchscreen to work on a custom board with TouchGFX, then i can post the specific code here.

Greetings,

Lukas