完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
继串口学习之后,跟着原子例程,本人继续学习STM32的DMA,DMA,全称为: Direct Memory Access,即直接存储器访问, DMA 传输将数据从一个地址空间复制到另外一个地址空间。个人理解为,可以加快单片机处理进程的"开挂模式",可以用来减少CPU负担,特别是在上升到 ucos-ii 实时操作系统之后,可以说是"争分夺秒",有了DMA,处理效率会得到部分提高;退一步来讲,即使是"裸跑",节省出时间让CPU去处理别的事情也可以大幅度提高程序的执行效率! 下面为大家简单介绍一下DMA,DMA主要特性
● 12个独立的可配置的通道(请求): DMA1有7个通道, DMA2有5个通道 ● 每个通道都直接连接专用的硬件DMA请求,每个通道都同样支持软件触发。这些功能通过 软件来配置。 ● 在同一个DMA模块上,多个请求间的优先权可以通过软件编程设置(共有四级:很高、高、 中等和低),优先权设置相等时由硬件决定(请求0优先于请求1,依此类推) 。 ● 独立数据源和目标数据区的传输宽度(字节、半字、全字),模拟打包和拆包的过程。源和目 标地址必须按数据传输宽度对齐。 ● 支持循环的缓冲器管理 ● 每个通道都有3个事件标志(DMA半传输、 DMA传输完成和DMA传输出错),这3个事件标志 逻辑或成为一个单独的中断请求。 ● 存储器和存储器间的传输 ● 外设和存储器、存储器和外设之间的传输 ● 闪存、 SRAM、外设的SRAM、 APB1、 APB2和AHB外设均可作为访问的源和目标。 ● 可编程的数据传输数目:最大为65535 结合串口部分,我们可以利用DMA来传输数据给串口的发送/接收存储器,大大提高效率,这对于数据传送来讲是十分重要的.串口扩展部分,232,485等等串口相关的各种通信,均可通过DMA大幅度提高传输效率. |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
191个成员聚集在这个小组
加入小组【机智云转接板ML302-GC211试用体验】 第1章 机智云平台快速入门
8921 浏览 0 评论
3690 浏览 0 评论
【教程分享】Arduino uno R3接入机智云,快速实现物联网开发
7348 浏览 0 评论
4119 浏览 6 评论
1790 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 19:36 , Processed in 0.521693 second(s), Total 39, Slave 29 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号