cancel
Showing results for 
Search instead for 
Did you mean: 

Graph task not running. (Problem with LTDC in STM32H7.)

Yunus ARI
Senior

Hi everyone

I am working on a project with STM32H750 chip. I use internal flash for run application. I want to use vga display. So for this, I disabled touch controller and configured LTDC for vga. I fixid the erros and load tha aplication in chip. 

When I try to run application, code goes to "hal.taskEntry()" but never go to "setupScreen()" funtion. I debug code until "OSWrappers::waitForVSync()" function. When in this function never returned back. Then code gone "vApplicationIdleHook" continuously.

I created project with TouchGFX designer with by choosing STM32H750 Disco board. Then I configured project with CubeMX. I use TouchGFX 4.15 software. 

I completely stuck in here. Thanks for your opinion in advance.

Edit; 

I want to explain last status of problem. I writed this in a reply on below but I thought it better be here too;

As a new strategy, I created a project with CubeMX and add TouchGFX later. My problem with freeRTOS is solved when do this.

Now LTDC became the main problem. Code sometime crashed in LTDC init and sometime crashed in LTDC interrupt.

I seen this topic. Some other community member too have taken problem with LTDC in STM32H7 chip like me. But this topics answers too not solved my new problem.

Code crashed this line of HAL_LTDC_Init funtion when LTDC initialize;

HAL_StatusTypeDef HAL_LTDC_Init(LTDC_HandleTypeDef *hltdc)
{
...
 
  /* Configure the HS, VS, DE and PC polarity */
  hltdc->Instance->GCR &= ~(LTDC_GCR_HSPOL | LTDC_GCR_VSPOL | LTDC_GCR_DEPOL | LTDC_GCR_PCPOL);
 
....
}

For the additional information my used VGA circuit scheme is here;0693W000006EjbYQAS.png

10 REPLIES 10

I did it step by step like you said and found the problem. My problem root cause is in external crystal. Probably hardware is wrong assembled. I select HSI clock an all problem is solved. 

Thank you for helping.