2020-03-05 12:26 AM
Hi all,
I stumbled upon this in my BoardConfiguration file:
#if !defined(USE_BPP) || USE_BPP==16
#define HACT 200 /* Note: 16bpp: Screen divided in 4 areas of 200 pixels to avoid DSI tearing */
#elif USE_BPP==24
#define HACT 400 /* Note: 24bpp: Screen divided in 2 areas of 400 pixels to avoid DSI tearing */
#else
#error Unknown USE_BPP
#endif
My question is, why is the active width not simply the actual width of the display (800)? I thought the tearing effect is configured, so that after the full display has updated the GRAM can be updated. The framebuffer is configured to use the full width, that's why it doesn't make sense to me to divide the screen.
Solved! Go to Solution.
2020-03-31 08:06 AM
Hi,
This looks like the LTDC configuration for one of the STM32 boards with DSI display (800x480). We configure it that way to send the pixels of the framebuffer in smaller chunks to avoid tearing. But yes, i can understand your confusion. For smaller DSI displays we don't do that. Like 390x390. They operate in a different way.
/Martin
2020-03-31 08:06 AM
Hi,
This looks like the LTDC configuration for one of the STM32 boards with DSI display (800x480). We configure it that way to send the pixels of the framebuffer in smaller chunks to avoid tearing. But yes, i can understand your confusion. For smaller DSI displays we don't do that. Like 390x390. They operate in a different way.
/Martin