你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

DMA配置和使用如此简单(超详细)

[复制链接]
li1229574727 发布时间:2020-4-26 19:18
DMA学习很难吗?其实DMA配置和使用如此简单!本文让你无论在DMA认识和理解上(抽象不抽象都有)还是在DMA配置和使用上有个彻彻底底的认识。文章包括寄存器和库函数讲解,省去你自行翻阅使用手册和固件库手册,点到点教会你DMA的配置和使用。+ F) x* `$ C  g7 a2 s& g! y. Z
查询和中断不爽吗?为什么要使用串口DMA?(借串口DMA引入)/ q4 @7 ]/ o- K/ z$ {* O1 V1 B

如果真的是刚刚接触单片机或嵌入式,肯定会问,因为按照难易程度:DMA>中断>查询。这里我提几个反问句回答。

  • 查询方式是不是要在一个循环里反复执行判断?如果串口传输数据频率快于循环频率,请问能及时收到数据吗?
  • 中断过于频繁主程序还要不要运行?如果我只接收数据,但不用接收一个字节数据就处理一次,那么请问,有必要频繁中断吗?
  • 数据传输过程需不需要时间?需要的话,那我们是不是还要等待?
    9 o) ?* l; a- E- ?; U

其实我们要求的很简单,就是高效,传输数据的时候我们不在等待的时间浪费CPU资源,而且数据是一个字节一个字节传送的,接收的时候只要一个数据包最后一个字节数据接收到再处理即可,发送的时候让串口自己一个字节一个字节把数据发出去即可,不用在等待一个字节发送完再发下一字节数据这样。为了提高CPU使用效率,于是就使用DMA方式。

1 h, M, y1 U; |" J2 i) B- O

想学习DMA的可以转到我CSDN的博文查看,为了保持美观,所以文章写到博客上了,相关内容请查看:

CSDN博客:http://blog.csdn.net/weixin_44524484/article/details/105671273


$ J! H' t- g  f) K: j- p: q

以下为文章目录:

DMA配置和使用如此简单(超详细)

  • DMA传输% E$ w. @4 k3 j. Z- ~8 W' n, O
    • 一、查询和中断不爽吗?为什么要使用串口DMA?(借串口DMA引入)
    • 二、DMA介绍7 ]3 E4 H5 i2 U0 n5 q
      • 1、什么是DMA?
      • 2、STM32上的DMA资源
      • 3、DMA主要特征
      • 4、DMA请求映像+ k1 i) ]; [; B8 S3 G
        • (1)DMA1控制器
        • (1)DMA2控制器
          ' L& j" I+ T& Z( V, F
      • 5、DMA寄存器介绍
        8 j" u" l2 G9 X. E3 Z; k
        • (1)DMA中断状态寄存器(DMA_ISR)
        • (2)DMA中断标志清除寄存器(DMA_IFCR)
        • (3)DMA通道x配置寄存器(DMA_CCRx)(x = 1…7)
        • (4)DMA通道x传输数量寄存器(DMA_CNDTRx)(x = 1…7)
        • (5)DMA通道x外设地址寄存器(DMA_CPARx)(x = 1…7)
        • (6)DMA通道x存储器地址寄存器(DMA_CMARx)(x = 1…7)
          , Y! L/ G) ^) x; e; ]! p9 N! s
      • 6、DMA库函数介绍0 P% Z1 Q6 J* s7 Z
        • (1)函数 DMA_DeInit
        • (2)函数DMA_Init
        • (3)函数DMA_Cmd
        • (4)函数 DMA_ITConfig
          $ B8 O7 U6 E; q! c9 n

        ! I' o8 K/ v/ C2 h3 M
    • 三、DMA配置, x" j* h7 s0 k' l
      • 1、寄存器版
      • 2、库函数版
        8 K$ X1 ~; p! l% ]! F6 h
    • 四、DMA使用
      8 W1 |) Z/ y( w3 V" {9 C! m' h
      • 1、查询方式
      • 2、中断方式
      • 3、不定长数据传输
      • 4、双缓冲方式. q6 K& ?- Q$ I# _4 T  S: m
    • 五、总结" G1 Z) H' W1 Y2 v0 Y
    2 L+ z2 A$ w# U
4 O' E' C( p/ |1 [2 `' ?

% ?6 I5 B' A/ ?% M2 Y( }- O7 n: J
赞 收藏 1 评论2 发布时间:2020-4-26 19:18

举报

2个回答
李康1202 回答时间:2020-4-27 18:49:46
谢谢分享
Daven1223 回答时间:2024-11-19 15:32:10

1111111111111111111111111111111111

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版