TouchGFX之DMA2D

Chrom-ART (DMA2D)图形加速器能够传输来自存储器的部分图像数据,并将其放入或先混合后再放入帧缓存。 Chrom-ART可从内部或外部存储器读取数据。 同样,它可以写入内部或外部存储器。 在绘制图形时可使用此功能,以显著提高显示性能,同时明显降低应用程序的MCU占用率。

1.配置DM2D

TouchGFX之DMA2D_第1张图片

 TouchGFX之DMA2D_第2张图片

 

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.烧录程序,显示屏显示相应颜色

TouchGFX之DMA2D_第3张图片

你可能感兴趣的:(TouchGFX,arm开发)