cancel
Showing results for 
Search instead for 
Did you mean: 

How to use Single Frame Buffer and SPI display (ILI9431) with Nucleo-H563ZI

bbasnet
Associate II

Hello,
I am trying to use Nucleo-H563ZI with SPI display (ILI9431) with Single Frame buffer but i couldn't configure it and didn't find appropriate example. Do anyone have used SPI display with Single Frame Buffer? Any help would be great.
I do have sufficient space to implement single Frame Buffer. I am lacking knowledge for implementation.

I have successfully used partial frame buffer but there was a problem, whenever i used .invalidate() to update textArea other box flicker in the display. On the partial frame buffer i used SPI with DMA. 

Thank you

kind regards,
Binod Basnet


2 REPLIES 2
JohanAstrup
ST Employee

Hello @bbasnet.

For an example of how to use a single framebuffer, I would recommend you to look at the NUCLEO-U575ZI + RVA35HI TBS available in TouchGFX Designer. This project uses FMC to transfer data to the display; however, the concept is similar to SPI. The TBS is configured to use optimized single framebuffer.

Refer to the following articles for additional information:
https://support.touchgfx.com/4.26/academy/how-to/single-framebuffer
https://support.touchgfx.com/4.26/docs/basic-concepts/framebuffer#framebuffer-strategies
https://support.touchgfx.com/4.26/docs/development/touchgfx-hal-development/scenarios/scenarios-spi

Could you share a video of the flickering you are experiencing with partial framebuffer? Does it occur only when running on target, or does it also happen when running the simulator?

Best regards,
Johan

Hello @JohanAstrup ,

Thank you so much for your response. I will check the links you have mentioned and try to follow it.

I have shared the video of flickering, its not so clear in video. My implementation code is below. The text doesn't flicker but boxes do. It happens when i use ".invalidate()". In case of not using ".invalidate()" to update text the boxes doesn't flickers. 
I have tried same project with using STM32F411E-Disco (SPI + DMA + partial Framebuffer) there was not any problem, maybe i am missing something with configuration in Nucleo-H563ZI.Thank you.
Kind regards,
Binod Basnet

 

 

void screenView::handleTickEvent()

{

counter++;

Unicode::snprintf(textArea1Buffer, TEXTAREA1_SIZE, "%d", counter);

textArea1.invalidate();

if(counter == 100000)

{

counter = 0;

}

}