2024-08-21 04:05 PM
I'm using an STM32U535 and ILI9341 touch display for my project. I have the screen up and the touch control working with 5 screens, using forward/back buttons to navigate. The simulator shows the slide transitions correctly but when I push it to my board, there are no slide transitions with selecting the buttons. I've done some searching and it appears that I don't have any memory allocated for the animation buffer. Which leads me to my question, how do you implement/allocate memory when a partial frame buffer is being used?
In my research, I need to call the, setFrameBufferStartAddresses() method in the TouchGFXGeneratedHAL::initialize() method. My initialization method is considerably different than what I've seen:
// Block Allocator for Partial Framebuffer strategy
static ManyBlockAllocator<2048, /* block size */
3, /* number of blocks */
2 /* bytes per pixel */
> blockAllocator;
void TouchGFXGeneratedHAL::initialize()
{
HAL::initialize();
registerEventListener(*(Application::getInstance()));
enableLCDControllerInterrupt();
enableInterrupts();
// Partial framebuffer strategy
setFrameBufferAllocator(&blockAllocator);
setFrameRefreshStrategy(HAL::REFRESH_STRATEGY_PARTIAL_FRAMEBUFFER);
}
I tried creating some of the examples in TouchGFX but can't seem to find a sample that uses the partial frame buffer with slide transitions.
Any insight would be greatly appreciated.
Kindest regards