STM32F4 DMA的单次传输与突发(BURST)传输理解

[复制链接]
 楼主| 第三章 发表于 2018-7-6 07:00 | 显示全部楼层 |阅读模式
由于项目的要求,由于采用传统的方式控制USART发送数据的时间占用CPU过多的时间,导致裸机程序的误判(少判),所以想起了采用DMA控制器控制SUART 数据的发送。
之前没有接触过DMA的概念,现学现用呗!!!而导师的意见是,参考别人写的程序,修改修改,解决问题就行了,不必深入了解。果然,一搜索,一大堆的程序,修改修改,
利用到项目中,不到半天问题解决了。感叹DMA可真是好用啊,所以决定学习一下这个神奇的东西,参考《中文参考手册》,硬着头皮看一遍下去,云里雾里。。。。,脑子里
只有几个关键字:FIFO,突发增量传输,数据宽度,存储器,外设。再看了看自己的程序:
    DMA_InitStructure.DMA_MemoryBurst=DMA_MemoryBurst_Single;
    MA_InitStructure.DMA_PeripheralBurst=DMA_PeripheralBurst_Single;
    DMA_InitStructure.DMA_FIFOMode=DISABLE;
    DMA_InitStructure.DMA_FIFOThreshold=DMA_FIFOThreshold_Full;

----->FIFO禁止了,也不使用突发传输了。
       脑子里浮现一个念头,要是我允许Fifo,使用突发传输会是怎么样呢,会不会一次发送几组相同的数据呢?。。二话不说,改呗。下载测试。。。。没有任何的变化。。。没有得到预期的结果,很失望!!于是乎,在看一遍《手册》
您需要登录后才可以回帖 登录 | 注册

本版积分规则

380

主题

380

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部