![ST STM32CubeH7 User Manual Download Page 34](http://html1.mh-extra.com/html/st/stm32cubeh7/stm32cubeh7_user-manual_1356075034.webp)
Performance
UM2222
34/76
UM2222 Rev 2
The optimized processes are implemented in the
LCDConf.c
file, with the following features:
•
Color conversion
STemWin works internally with logical colors (ABGR). To be able to translate these
values into index values for the hardware and vice versa, the color conversion routines
automatically use the DMA2D for that operation if the layer works with direct color
mode. This low-level implementation secures that the DMA2D is used each time
multiple colors or index values need to be converted.
•
Drawing of index-based bitmaps
When drawing index-based bitmaps, STemWin first loads the bitmap palette into the
DMA2Ds LUT (lookup table) instead of directly translating the palette into index values
for the hardware. Then, one single DMA2D function call performs the drawing
operation.
•
Drawing of high-color bitmaps
If the layer works in the same mode as the high-color bitmap has its pixel data
available, one DMA2D function call can draw these bitmaps. The following function is
used to set up such a function:
LCD_SetDevFunc(LayerIndex, LCD_DEVFUNC_DRAWBMP_16BPP, pFunc);
•
Filling operations
Setting up the function for filling operations:
LCD_SetDevFunc(LayerIndex, LCD_DEVFUNC_FILLRECT, pFunc);
•
Copy operations
Setting up the functions for copy operations used by the function
GUI_CopyRect():
LCD_SetDevFunc(LayerIndex, LCD_DEVFUNC_COPYRECT, pFunc);
•
Copy buffers
Setting up the function for transferring the front buffer to the back buffer when using
multiple buffers:
LCD_SetDevFunc(LayerIndex, LCD_DEVFUNC_COPYBUFFER, pFunc);
•
Fading operations
Setting up the function for mixing up a background and a foreground buffer used for
fading memory devices:
GUI_SetFuncMixColorsBulk(pFunc);
•
General alpha blending
The following function replaces the function that is used internally for alpha blending
operations during image drawing (PNG or true color bitmaps) or semitransparent
memory devices:
GUI_SetFuncAlphaBlending(pFunc);
•
Drawing antialiased fonts
Setting up the function for mixing single foreground and background colors used when
drawing transparent ant aliased text:
GUI_SetFuncMixColors(pFunc).