Stm32 dma2d fsmc lvgl

Hi there,

I use an STM32H743. Meanwhile, LVGL with a display (NT35510 Controller 4" 800x480) is running successfully via FSMC. Now I would like to use DMA2D. Does anyone have any tips on setting up?

Greetings Sascha

With newer versions of LVGL it should be as simple as enabling this option in lv_conf.h.

Hello,

thanks for the Tip. I’M changig it. First after compiling, the Compiler miss the core_cm7.h. After changing the Include-Path, the Program compiled without erros. But the Screen looks bad.

My Display Flush:

void disp_flush(lv_disp_drv_t * disp_drv, const lv_area_t * area, lv_color_t * color_p)
{
int32_t x;
int32_t y;
LCD_SetWindows(area->x1, area->y1, area->x2, area->y2);
LCD_WR_REG(0x2C00);
LCD_WR_REG(0x3C00);
for(y = area->y1; y <= area->y2; y++) {
for(x = area->x1; x <= area->x2; x++) {
/* Put a pixel to the display. For example: */

    	LCD->LCD_RAM =color_p->full;
        color_p++;
    }
}

lv_disp_flush_ready(disp_drv);

}

Regards Sascha

Call SCB_CleanInvalidateDCache(); before writing to the display. You need to invalidate the cache so the changes from DMA2D are reflected in the CPU.

By calling SCB_CleanInvalidateDCache();, the Screen stay White and blank.

Hello I’m in the process of creating a LVGL port for my custom board using a H7 any chance I could pick your brain on developing the driver?