cancel
Showing results for 
Search instead for 
Did you mean: 

TouchGFX framebuffer location for STM32H563

PFlor.2
Senior

Is there a recommended RAM address for placing the framebuffer on the STM32H563?  I just picked out 0x20040000 but wondered if I should just put it at the beginning address (0x20000000), wasn't sure what is recommended.

6 REPLIES 6
MM..1
Chief III

Why you ask, this is based on your app requirments and

MM1_0-1736448460426.png

 

GaetanGodart
ST Employee

Hello @PFlor.2 ,

 

It is recommended to keep the framebuffer location as "by allocation" to let TouchGFX decide where to put the framebuffer :

GaetanGodart_0-1736760790828.png

You can have a look at our TBS to see how we set it up.

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

Thanks for the tip but I started that way and it appears that Flash memory is taken with this approach, by address does not utilize the flash space like by allocation does.  Can you advise on this?

By Allocation:

PFlor2_2-1736781996680.png

PFlor2_3-1736782043477.png

By Address:

PFlor2_1-1736781843496.png

PFlor2_0-1736781746898.png

 

If you choice by address, then linker script require reservations for this, for example

RAM  0x20000000 256k

RAMFB 0x20040000 ...

but as i show you better is use maybe RAM3

And by allocation result to init in flash when you dont mark it as noinit... result same size in flash and ram.

yes, I hadn't reserved the RAM in the linkerscript yet so I will do that.  I agree about using RAM3 and chose 0x20050000 for frame buffer1 and 0x20076000 for frame buffer2 (320x240 pixel display with 16-bit color).

If using "By Allocation" how do you choose noinit so the flash is not consumed?

Hello @PFlor.2 ,

 

This is how it is done in our TBS:

GaetanGodart_0-1736846894602.png

GaetanGodart_2-1736846956718.png

GaetanGodart_1-1736846937542.png

 

Is this what you are asking for?

 

Regards,

 

Gaetan Godart
Software engineer at ST (TouchGFX)