STM32F42x/43x have a built in graphic accelerator intended to fill copy or blend bitmap image: the DMA2D.
I wrote a short DMA2D example to resize a bitmap using bilinear interpolation.
The resize process is entirely handled using the DMA2D Blender with a low CPU resource usage.
The CPU usage, after a fast initial setup, is limited to cyclic update some DMA2D registers in response to the DMA2D Irq request.
A short video showing the resize process on the STM32F429 Discovery Board:
Due to video conversion process the real framerate is not shown. The example have as target a 64K color QVGA bitmap and reach about 25fps with a CPU usage of less than 5%
Source code is available as Open Source in the attachment below. It can be build using Keil MDK evaluation version.
High recommended to try if you already have a STM32F429 Discovery board !!
I wrote a short DMA2D example to resize a bitmap using bilinear interpolation.
The resize process is entirely handled using the DMA2D Blender with a low CPU resource usage.
The CPU usage, after a fast initial setup, is limited to cyclic update some DMA2D registers in response to the DMA2D Irq request.
A short video showing the resize process on the STM32F429 Discovery Board:
Due to video conversion process the real framerate is not shown. The example have as target a 64K color QVGA bitmap and reach about 25fps with a CPU usage of less than 5%
Source code is available as Open Source in the attachment below. It can be build using Keil MDK evaluation version.
High recommended to try if you already have a STM32F429 Discovery board !!