DMA2D 图形加速器简介

stm32 DMA2D知识点 LTDC会一直从显存中搬运数据并刷新数据到液晶屏, 所以我们只需要往显存写数据就可以了 1 什么是DMA2D 下面资料来自安富莱BSP手册 2 DMA2D工作模式 1 模式 1:寄存器到存储器模式 这个模式主要用于清屏,也即是将显示屏清为单色效果 2 模式 2:存储器到存储器模式 这个模式用于从一个存储器复制一块数据到另一个存储器,比如将摄像头 OV7670 的输出图像复制到 LCD 显存就可以采用这种方式。 3 模式 3:存储器到存储器模式,带颜色格式转换 这个模式比模... 阅读详情

DMA2D 图形加速器简介

在实际使用 LTDC 控制器控制液晶屏时,使 LTDC 正常工作后,往配置好的显存地址
写入要显示的像素数据, LTDC 就会把这些数据从显存搬运到液晶面板进行显示,而显示
数据的容量非常大,所以我们希望能用 DMA 来操作,针对这个需求, STM32 专门定制了
DMA2D 外设,它可用于快速绘制矩形、直线、分层数据混合、数据复制以及进行图像数
据格式转换,可以把它理解为图形专用的 DMA。
DMA2D 结构框图剖析
图 27-13 是 DMA2D 的结构框图,它与前面 LTDC 结构里的图像处理单元很类似,主
要为分层 FIFO、 PFC 及彩色混合器。

1. FG FIFO 与 BG FIFO
FG FIFO(Foreground FIFO)与 BG FIFO(Backgroun FIFO)是两个 64x32 位大小的缓冲区,
它们用于缓存从 AHB 总线获取的像素数据,分别专用于缓冲前景层和背景层的数据源。
AHB 总线的数据源一般是 SDRAM,也就是说在 LTDC 外设中配置的前景层及背景层
数据源地址一般指向 SDRAM 的存储空间,使用 SDRAM 的部分空间作为显存。
2. FG PFC 与 BG PFC
FG PFC(FG Pixel Format Convertor)与 BG PFC(BG Pixel Format Convertor)是两个像素格
式转换器,分别用于前景层和背景层的像素格式转换,不管从 FIFO 的数据源格式如何,
都把它转化成字的格式(即 32 位), ARGB8888。
图中的“ɑ”表示 Alpha,即透明度,经过 PFC,透明度会被扩展成 8 位的格式。
图中的“CLUT”表示颜色查找表(Color Lookup Table),颜色查找表是一种间接的颜色
表示方式,它使用一个 256x32 位的空间缓存 256 种颜色,颜色的格式是 ARGB8888 或
RGB888。见图 27-14,利用颜色查找表,实际的图像只使用这 256 种颜色,而图像的每个
像素使用 8 位的数据来表示,该数据并不是直接的 RGB 颜色数据,而是指向颜色查找表的
地址偏移,即表示这个像素点应该显示颜色查找表中的哪一种颜色。在图像大小不变的情
况下,利用颜色查找表可以扩展颜色显示的能力,其特点是用 8 位的数据表示了一个 24 或
32 位的颜色,但整个图像颜色的种类局限于颜色表中的 256 种。 DMA2D 的颜色查找表可
以由 CPU 自动加载或编程手动加载。

3. 混合器
FIFO 中的数据源经过 PFC 像素格式转换器后,前景层和背景层的图像都输入到混合
器中运算,运算公式见图 27-15。

4. OUT PFC
OUT PFC 是输出像素格式转换器,它把混合器转换得到的图像转换成目标格式,如
ARGB8888、 RGB888、 RGB565、 ARGB1555 或 ARGB4444,具体的格式可根据需要在输
出 PFC 控制寄存器 DMA2D_OPFCCR 中选择。


  STM32F429 芯片使用 LTDC、 DMA2D 及 RAM 存储器,构成了一个完整的液晶控制
器。 LTDC 负责不断刷新液晶屏, DMA2D 用于图像数据搬运、混合及格式转换, RAM 存
储器作为显存。其中显存可以使用 STM32 芯片内部的 SRAM 或外扩 SDRAM/SRAM,只
要容量足够大即可(至少要能存储一帧图像数据)。

DMA2D结构体
配置完这些结构体成员,调用库函数DMA2D_Init即可把这些参数写入
到DMA2D的控制寄存器中,然后再调用DMA2D_StartTransfer函数开启数据传输及转换。

LTDC-DMA2D液晶显示原理(一) 一、了解显示器 常见的显示器有CRT显示器、液晶显示器、LED点阵显示器及OLED显示器。 (1)液晶显示器LCD(Liquid Crystal Display) LCD 显示器具有功耗低、体积小、承载的信息量大及不伤眼的优点,因而它成为了现在的主流电子显示设备,其中包括电视、电脑显示器、手机屏幕及各种嵌入式设备的显示器。 液晶是一种介于固体和液体之间的特殊物质,它是一种有机化合物,常态下呈液态, 但是它的分子排列却和固体晶体一样非常规则,因此取名液晶。如果给液晶施加电场,会改变它的分子排列,从而改 阅读详情

相关推荐

从零开始:STM32H7 DMA2D图形加速器的实战开发指南

本文深入解析STM32H7 DMA2D图形加速器的架构设计与开发实践,详细介绍了五种工作模式、Alpha混合应用及HAL库与寄存器级开发对比。通过工业HMI和智能家居界面的实战案例,展示如何优化图形处理性能,提升嵌入式系统的显示效率。

ggg99的专栏 1279

STM32的“GPU”——DMA2D实例详解

来源:本文由RT-Thread社区成员梦千年撰写,点击文末阅读原文可查看出处。前言GPU即图形处理器,是现代显卡的核心。在没有GPU的时代,所有图形的绘制都是由CPU来完成的,CPU需要计...

rtthreadiotos的博客 1万+

DMA2D性能玄机:深入STM32H7图形加速器的硬件架构与混合算法

本文深入解析STM32H7系列内置的DMA2D图形加速器硬件架构与混合算法,揭示其AXI总线交互机制和流水线设计。通过实测数据展示不同工作模式的性能差异,并提供优化技巧,帮助开发者实现高效图形渲染,适用于嵌入式GUI开发。

weixin_29158047的博客 207

STM32F429图形加速器(DMA2D)

在stm32f429中有一个Chrom-Art Accelerator™ controller(DMA2D),这个控制器是一款专门用于图像处理的DMA(也可以和普通的DMA一样用于数据传输),能够用于2D图形加速(主要针对LCD屏幕)。 一、DMA2D主要能够进行的图形加速加速 区域填充、图像复制。用特定的颜色填充目标图像的一部分或整体,将源图像的一部分或全部复制到目标图像的一部分或全部。 通过像素格式转换,将源图像的一部分或全部复制到目标图像的一部分或全部 混合一个部分和/或两个完整的源图像与不同

smallerxuan的博客 8333

STM32 DMA2D图形加速器深度解析与工程实践

DMA2D(Chrom-ART Accelerator)是STM32高端MCU中专用于嵌入式GUI和图像处理的硬件像素流水线,其核心原理是通过可编程的前端输入、混合计算与后端输出三级并行架构,实现零CPU干预的高效2D图形操作。相比纯软件渲染,它在吞吐量、总线带宽效率和功能密度上具有显著技术优势,尤其适用于LCD帧缓冲填充、CLUT调色板动画、Alpha混合及YCbCr转RGB等典型嵌入式视觉场景。本文围绕DMA2D的寄存器级配置逻辑、CLUT管理机制、混合算法固化实现、输出格式转换(PFC)与字节重排、多

weixin_42300144的博客 126

2d加速 stm32_【STM32H7教程】第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API...

第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API本章节为大家讲解DMA2D,实际项目中显示屏的加速全靠它了,而且性能也比较给力。55.1 初学者重要提示55.2 DMA2D基础知识55.3 DMA2D的HAL库用法55.4 源文件stm32h7xx_hal_dma2d.c55.5 总结55.1 初学者重要提示DMA2D是专门用于LCD加速的,特别是刷单色屏,刷图...

weixin_28791139的博客 1013

STM32 的图形加速器 DMA2D

STM32 的图形加速器 DMA2D 1. 背景 ​ 在实际使用 LTDC 控制器控制液晶屏时,配置好的显存地址写入要显示的像素数据,LTDC 就会把这些数据从显存中搬运到液晶面板进行显示。实际上要显示的数据量非常的大,我们常常以纯软件的方式填充显存(指定那个位置要显示什么颜色),这样非常影响绘图速度,因此我们希望能用 DMA 来操作,针对这个需求,STM32 专门定制了 DMA2D 外设,它可以用于快速绘制矩形、执行、分层数据混合、数据复制以及进行图像数据格式转换,可以把它理解为图形专用的 DMA。 2.

Tang的博客 4224

LTDC/DMA2D——液晶显示

LTCD

m0_52948676的博客 1870

STM32单片机芯片与内部106 图形加速器 DMA2D 基础知识 HAL API

介绍了DMA2D基础、硬件框图、工作模式、颜色配置等

陌夏微秋的博客 1332

【STM32H7实战】DMA2D图形加速器在嵌入式GUI中的高效应用与性能调优

本文深入探讨了STM32H7的DMA2D图形加速器在嵌入式GUI中的高效应用与性能调优。通过详细解析DMA2D的五大工作模式,结合LVGL集成实例,展示了如何实现800x480分辨率下2.6ms的全屏刷新,显著降低CPU占用率。文章还提供了常见问题解决方案和进阶技巧,帮助开发者充分利用STM32H7的硬件加速能力,打造流畅的嵌入式界面体验。

weixin_29796279的博客 360

使用DMA2D加速显存数据传输的方法

其中,DMA2D (Direct Memory Access 2D) 是一种强大的硬件加速器,可以有效地处理图形数据的传输、复制和转换操作。它具有丰富的功能,可以实现图像复制、颜色转换和像素填充等操作,而且拥有快速的数据传输速度和低功耗的特点。本文介绍了DMA2D的配置与初始化方法,并提供了一个示例代码演示了如何利用DMA2D实现显存数据的加速传输。有了DMA2D的配置和初始化之后,我们就可以使用它来实现显存数据的加速传输了。在以上代码中,我们首先使能了DMA2D的时钟,并配置了DMA2D的各项参数。

SUYUMM的博客 511

【STM32H7教程】第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API

完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API 本章节为大家讲解DMA2D,实际项目中显示屏的加速全靠它了,而且性能也比较给力。 55.1 初学者重要提示 55.2 DMA2D基础知识 55.3 DMA2D的HAL...

Simon223的博客 4694

差分逻辑电平——LVDS、CML、LVPECL、HCSL互连

首先了解差分逻辑电平结构,也包括单端逻辑电平常见的逻辑电平_常用的逻辑电平-优快云博客注:ECL >> PECL >> LVPECL演变而来;QDR(Quad Data Rate):四倍数据倍率本文章只涉及差分逻辑电平:LVDS 、LVPECL、CML (高速)(最常用)在任何给定的系统设计中,必须设计驱动器侧和接收器侧之间的时钟逻辑转换。通过在它们之间增加衰减电阻和偏置电路来将一个差分时钟转换为其他类型的差分逻辑,来衰减摆幅电平并重新偏置共模输入接收器。

weixin_45365488的博客 4万+

【STM32F429开发板用户手册】第45章 STM32F429的图形加速器DMA2D的基础知识和HAL库API

最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=93255 第45章 STM32F429的图形加速器DMA2D的基础知识和HAL库API 本章节为大家讲解DMA2D,实际项目中显示屏的加速全靠它了,而且性能也比较给力。 目录 第45章 STM32F429的图形加速器DMA2D的基础知识和HAL库API 45.1 初学者重要提示 45.2 DMA2D基础知识 45.2.1 DMA2D硬件框图 45...

Simon223的博客 1307

【提示学习代码】CoOp代码详读

CoOp是对CLIP的改进工作,主要是对prompt进行学习从而不用来手动设置prompt。自定义CLIP模型:上述两个模块结合而成的CLIP。文本编码器,接收文本的输入,并输出相应的编码表示。将图像和文本进行编码并计算它们之间的相似性。permute后变成了(4,2,3)Prompt学习器,用于学习生成提示。

weixin_51293984的博客 5816

ScottPlot vs LiveCharts:WPF图表库性能对比与MVVM适配方案

本文深度对比了WPF图表库ScottPlot与LiveCharts在性能与MVVM架构适配上的表现。通过十万级数据点的基准测试,ScottPlot在渲染速度与内存占用上优势显著。文章重点探讨了两种库在MVVM模式下的集成方案,为开发者根据项目需求(如实时监控或快速原型)进行技术选型提供了实战指导。

lll78的博客 245

27-4-DMA2D图形加速器

在实际使用 LTDC 控制器控制液晶屏时,使 LTDC 正常工作后,往配置好的显存地址写入要显示的像素数据, LTDC 就会把这些数据从显存搬运到液晶面板进行显示,而显示数据的容量非常大,所以我们希望能用 DMA 来操作,针对这个需求, STM32 专门定制了DMA2D 外设,它可用于快速绘制矩形、直线、分层数据混合、数据复制以及进行图像数据格式转换,可以把它理解为图形专用的 DMA。 DMA2...

西贡小傻 1328

【PLC】三菱PLC控件安装疑难解析:Error Number:-119的全面解决方案

本文针对三菱PLC控件安装过程中常见的Error Number:-119错误,提供了深度解析与实战解决方案。该错误通常源于Windows系统权限限制或文件冲突。文章从理解错误本质入手,逐步介绍了以管理员身份运行、手动注册DLL文件、采用新版环境搭配旧版控件的黄金组合以及系统环境修复等四大招法,帮助用户彻底解决这一安装难题,确保工控软件稳定运行。

jj890的博客 496

别再傻傻用for循环了!STM32 DMA2D图形加速器实战:5分钟搞定LCD矩形绘制与图片搬运

本文详细介绍了STM32 DMA2D图形加速器的实战应用,通过硬件加速技术显著提升LCD矩形绘制与图片搬运效率。对比传统for循环,DMA2D可将执行时间从48.2ms降至1.3ms,CPU占用率从98%降至2%。文章涵盖寄存器到存储器模式、存储器到存储器模式及高级图层混合技术,助力开发者优化嵌入式图形处理性能。

weixin_30780649的博客 325

基于STM32单片机智能循迹小车毕业设计

本文介绍了一种利用STM32F103C8T6单片机为控制核心,结合多种传感器以及PID算法实现循迹避障功能的智能小车。随着我国高科技水平的不断提高和工业自动化进程的不断推进,智能小车被广泛应用于各种玩具和其他产品的设计中,极大地丰富了人们的生活。本次设计利用反射式红外光电传感器探测路面黑线实现小车循迹,利用超声波测距传感器探测路径上的障碍,控制小车自动避障,整个系统具有自动循迹、自动避障、速度检测和无线遥控功能。其中,控制部分采用STM32F103C8T6单片机,STM32F103C8T6单片机是一

qq_48771816的博客 3974

【云原生技术】K8s 在拉取镜像时报错tls: failed to verify certificate: x509: certificate signed by unknown authority

原因 Kubernetes 节点在拉取镜像时会对 Harbor 的 HTTPS 证书做严格校验; 日志里的核心报错是: ``` tls: failed to verify certificate: x509: certificate signed by unknown authority ``` 说明 Harbor 返回的服务器证书要么是自签发,要么缺少在系统信任链里的根/中级 CA,节点因此拒绝连接。 你需要让 **所有负责拉镜像的节点(containerd 或 Docker 守护进程)

weixin_46453070的博客 2875

告别卡顿!用STM32的DMA2D图形加速器让你的嵌入式UI丝滑流畅(附RT-Thread实战代码)

本文详细介绍了如何利用STM32的DMA2D图形加速器优化嵌入式UI性能,解决传统CPU绘图导致的卡顿问题。通过RT-Thread实战代码,展示了DMA2D在LVGL框架中的集成方法,包括硬件初始化、性能优化技巧及常见问题调试,帮助开发者实现流畅的嵌入式界面体验。

weixin_30652897的博客 317

Allegro174版本如何关闭模块复用后铜皮自动从动态变成静态操作指导

在用Allegro进行PCB设计的时候,模块复用是使用的十分频繁的操作,当Allegro升级到了174 S034版本的时候,当使用模块复用的功能的时候,模块内的铜皮会自动动静转换,大部分情况是不需要的。版本如何关闭模块复用后铜皮自动从动态变成静态操作指导。如何关闭这个功能,具体操作如下。

weixin_54787054的博客 1261
上一篇: 一文看懂rtc实时时钟和单片机时钟的区别
下一篇: 各种显示接口DBI、DPI、LTDC、DSI、FSMC
coldrainbow
博客等级 码龄19年 130粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值