cancel
Showing results for 
Search instead for 
Did you mean: 

Touch GFX and custom LCD

total_and_STM32
Associate III

Hello all,

Trying to set up the custom display on the STM32H750B-DK dev board.

Interestingly, the display works via LTDC functions in Keil just fine... but I do not have much luck with the TouchGFX. For example, started with setting up the TBS in the Designer to avoid the complications of memory and other configurations (thanks to the ST support) and continuing in the CubeIDE where I have opened the .*.ioc file to update the MX configuration for the LTDC and TouchGFX... it compiles ok, I can opend the TouchGFX designer and "upload" the picture, for example, I can see the picture to be in the memory. See attached build memory analyzer.

However, when I run the application or debug, I cannot see the preview of the picture.

One of the ideas, as it is explained in the TouchGFX manual, namely Board bring up, would be to preview a simple framebuffer, not sure how easily that would be?

I am not sure how to tackle this problem, so any comments, ideas, or hints are more than welcome!

 

Best.

 

pic_in _memory.pnge memory 

11 REPLIES 11
total_and_STM32
Associate III

Started with the "Board bring up" as given by the STM manuals, got stuck here https://support.touchgfx.com/docs/development/board-bring-up/how-to/03-display-internal

I am not sure why I cannot store a simple framebuffer in the available memory cells.

I have reduced the size of the framebuffer to save memory... for testing....

//creating the framebuffer
uint16_t framebuffer_1[1024*60]; //16 bpp framebuffer
//storing the framebuffer to a particular memory
uint16_t* framebuffer_1 = (uint16_t*)0x30000000; //16 bpp framebuffer memory location 

 

For example, I can see I have plenty of RAM, see the above picture about the available RAM...

 

In addition, when trying to debug, it goes rather well; however, I get the following "error."

debug_issue.png

 

Any ideas on how to tackle these issues and make progress would be more than welcome!

 

best.

Hello @total_and_STM32 ,

Your issue could be located in many places but we'll try to eliminate all the possibilities one by one.
First thing, just try to display a red box using the "Box" widget in touchgfx. Remove all the images and text/fonts from your application. You should at this point have no data inside internal/external flash (you can verify that in the map file). Let me know if you can see the red box on your screen or not.

Osman SOYKURT
ST Software Developer | TouchGFX
total_and_STM32
Associate III

Hello Osman, 

Thanks for the reply, 

Deleted the pict. , inside the Touch GFX,

I cannot see the box, I cannot even "run the project", actually, how should I check I can see the box?

For example, if the "gren PLAY" icon is pressed, namely the Run... I get an error, see below:

run_project.png

 

Not sure about the map file? Where can I find it? It is not seen next to the *.ld exc. files...

Checked the Build analyzer and I can see the following:

memory.png

It seems that there is 436B in it ?

I guess the pict. is not there anymore...

Best.

 

 

 

 

Osman SOYKURT
ST Employee

1. Yes, these are the fonts in external flash that comes with the default typographies in your TouchGFX Application. Just to make sure, you should put them in internal flash. For that, edit your linker script to have the font flash section and text flash section:

  FontFlashSection :
  {
    *(FontFlashSection FontFlashSection.*)
    *(.gnu.linkonce.r.*)
    . = ALIGN(0x4);
  } >FLASH

  TextFlashSection :
  {
    *(TextFlashSection TextFlashSection.*)
    *(.gnu.linkonce.r.*)
    . = ALIGN(0x4);
  } >FLASH

 
2. Could you try flashing using the STM32CubeProgrammer? (If needed, use the MT25TL01G_STM32H750B-DISCO)

3. The map file is located under the STM32CubeIDE/Debug/ folder (it ends with .map).

Osman SOYKURT
ST Software Developer | TouchGFX
Osman SOYKURT
ST Employee

I would also recommend you try to debug your application step by step and see what function it goes into before it breaks.

Osman SOYKURT
ST Software Developer | TouchGFX

Re 1), corrected, compiles OK, and the "fonts" are in the internal flash...

font_int_flash.png

Re 2), of course, I guess I should have used the *.hex file? BTW, where can the compiled *.hex file be found?

Re 3) Thank you!

 

Best.

 

Not sure what you mean by that, can you give me an example?

So far, this is the problem?

It does not even want to start the debugging process...

debug_issue_1.png

total_and_STM32
Associate III

Re: Downloading with the programmer:

Enabled the creation of the *.hex  accordibng to this info https://community.st.com/t5/stm32cubeide-mcus/how-does-one-generate-a-hex-file-from-stm32cubeide/td-p/287131, appears in the "Debug" folder,

making_hex.png

 

downloaded that file via the programmer, but nothing on the LCD, the LED on the top layer of the STM32H750b-dk is flashing (red, green)...

 

 

It looks like the debugging and downloading were solved;

When debugging is used, I land on this:

debug_works.png

 When Resume or F8 is pressed, I get the following on my LCD, first it kind of flashes, like 1 second

display1.png

 

then it settles...

display2.png