cancel
Showing results for 
Search instead for 
Did you mean: 

How to convert TouchGFX Designer project template to use internal buffer?

BParh.1
Senior III

So I am using STM32f769 Disco board, first I use template project from TouchGFX Designer and so far it is good. But then I realize it is using framebuffer located on external SRAM address 0xC0000000. But I want to change the location to internal RAM e.g. defined as array in the code like:

uint16_t framebuffer[widht*height].

How should I do this?

1 ACCEPTED SOLUTION

Accepted Solutions
Romain DIELEMAN
ST Employee

Hi,

You can set the framebuffer address within the generated STM32CubeMX project in the "STMicroelectronics.X-Cube-TouchGFX" configuration under the "Software Packs". You can also do this through code in TouchGFXHAL.cpp by setting the start address in the startFrameBufferAddresses function.

void TouchGFXHAL::initialize()
{
   
    TouchGFXGeneratedHAL::initialize();
 
    setFrameBufferStartAddresses((void*)startAddress, (void*)0, (void*)0);
 
    ...
 
}

/Romain

View solution in original post

2 REPLIES 2
Romain DIELEMAN
ST Employee

Hi,

You can set the framebuffer address within the generated STM32CubeMX project in the "STMicroelectronics.X-Cube-TouchGFX" configuration under the "Software Packs". You can also do this through code in TouchGFXHAL.cpp by setting the start address in the startFrameBufferAddresses function.

void TouchGFXHAL::initialize()
{
   
    TouchGFXGeneratedHAL::initialize();
 
    setFrameBufferStartAddresses((void*)startAddress, (void*)0, (void*)0);
 
    ...
 
}

/Romain

BParh.1
Senior III

Thank you @Romain DIELEMAN​