STM32F4通过DMA将GPIO口输入的数据存放到SRAM中

2019-07-20 23:18发布

    最近在做一个AD的项目,AD数据线与STM32中GPIOD pin0~pin15相连,想通过DMA将GPIOD输入的数据存放到SRAM中。因为AD是在不断的进行数据转换,所以DMA的模式只能是循环模式,看STM32F4 reference manual说如果是循环模式的话,就不能是MemoryToMemory,但是PeripheralToMemory需要DMA请求源,那么怎么使用合适的请求源呢?希望大家能够给我一些建议!!!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
21条回答
xuande
1楼-- · 2019-07-22 04:28
veblen 发表于 2016-3-22 10:26
和你讨论了这么多,总之可以确定“不能使用MtoM”,但是你说的用TIM设定转换信号,然后enable DMA reques ...


所以,被传输的将是上一次转换的结果。

civic7366
2楼-- · 2019-07-22 07:49
 精彩回答 2  元偷偷看……
veblen
3楼-- · 2019-07-22 12:02
 精彩回答 2  元偷偷看……
veblen
4楼-- · 2019-07-22 12:15
civic7366 发表于 2016-3-22 12:01
我覺得可以...大概想法...細節你要邊做邊想...

你pulse一發就enable另一個TIM(1.7u 單次的)   之後在中 ...

我理解你的意思,但是这样做真的非常的麻烦,首先TIM定时多少是个问题,需要尝试。还有并不是只要触发DMA传送,DMA就可以把AD转换后的数据传送到SRAM中,你看我的AD读取数据时序图可知,在取数据过程中,RD是由高变低,再拉高的过程。
xuande
5楼-- · 2019-07-22 15:59
 精彩回答 2  元偷偷看……
veblen
6楼-- · 2019-07-22 20:21
 精彩回答 2  元偷偷看……

一周热门 更多>