Chrom-ART (DMA2D)图形加速器能够传输来自存储器的部分图像数据,并将其放入或先混合后再放入帧缓存。 Chrom-ART可从内部或外部存储器读取数据。 同样,它可以写入内部或外部存储器。 在绘制图形时可使用此功能,以显著提高显示性能,同时明显降低应用程序的MCU占用率。
1.配置DM2D
2.写入帧缓存
在目标存储器中将特定颜色填充到屏幕(寄存器到存储器模式)
/* USER CODE BEGIN 2 */HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_SET);HAL_LTDC_SetAddress(&hltdc, (uint32_t)framebuffer, LTDC_LAYER_1);hdma2d.Init.Mode = DMA2D_R2M;hdma2d.Init.ColorMode = DMA2D_RGB565;MODIFY_REG(hdma2d.Instance->CR, DMA2D_CR_MODE, DMA2D_R2M);MODIFY_REG(hdma2d.Instance->OPFCCR, DMA2D_OPFCCR_CM, DMA2D_RGB565);MODIFY_REG(hdma2d.Instance->OOR, DMA2D_OOR_LO, 0);hdma2d.LayerCfg[1].InputColorMode = CM_RGB565;hdma2d.LayerCfg[1].InputOffset = 0;HAL_DMA2D_ConfigLayer(&hdma2d, 1);HAL_DMA2D_Start_IT(&hdma2d, 0xF800, (unsigned int)framebuffer, 1024, 600);/* USER CODE END 2 */
4.烧录程序,显示屏显示相应颜色