cancel
Showing results for 
Search instead for 
Did you mean: 

Why does TouchGFX program need to be manually run in Keil ?

weixun
Associate III

Hi everyone, after I've configured TouchGFX, the program needs to be manually run in Keil's debug environment to execute. Why is that?

My ICNA3306_DrawBlock data transfer did not use DMA.

 

weixun_0-1744464547350.pngweixun_1-1744464566815.pngweixun_2-1744464581182.pngweixun_3-1744464593753.png

 

16 REPLIES 16

Hi,Gaetan Godart.My ICNA3306() is fine and can be used without running touchgfx. I removed ICNA3306 Init() and added the light LED, but the LED did not light up. You can try to delete ICNA3306 and see if you can run the program.

weixun_1-1744708300465.png

I can confirm that the PIN13 IO pin is normal, and I can light up without using touchgfx.

Thank you for your help

weixun_0-1744728800614.pngweixun_1-1744728808010.png

 

Hi,Andrew Neil,This screenshot shows my TouchGFX configuration. Sigh, I really don't know how to solve this. I removed my display initialization function and instead tried to turn on the LED before initializing TouchGFX — unfortunately, it still doesn't work. In a project without TouchGFX, the LED lights up just fine.

For custom hardware, I might look at the initial state of the BOOT0 pin, and that the Vector Table is correctly initialized.

Check VCAP capacitances and voltages.

When debugging the debugger may initializes GPIO and clocks to suit it's needs, whereas booting directly will not. Watch also that timings can be a little different with the debugger involved, so if stuck in while() loops identify what's being waited on, or if they exit early. Use volatile variables where appropriate.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
weixun
Associate III

I found the problem — the TouchGFX project generated by CubeMX doesn't run when targeting Keil, but it works if it's generated as an STM32CubeIDE project.

Hello @weixun ,

 

Are you able to do what you want in the end?

 

The initial problem seemed to be that the code had to be run in debug mode on Keil but it built fine which is odd.

If now it works fine in STM32CubeIDE, maybe the Keil configuration is wrong at some point.

Is it fine if you only use STM32CubeIDE?

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

Hello Gaetan Godart,

I am now using CubeIDE to develop my project. I tried to figure out what was wrong with the Keil settings, but I couldn't find the issue, so I decided not to use Keil. Lastly, thank you very much for your response and assistance.

My pleasure! :)

Gaetan Godart
Software engineer at ST (TouchGFX)