打印

求助stm32可以用dma进行外设到外设的传输吗?

[复制链接]
8389|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
如题:比如adc到usart的传输,如果可以该如何对dma进行初始化
沙发
airwill| | 2012-4-18 18:12 | 只看该作者
好象不可以, 不妨试试吧.

使用特权

评论回复
板凳
dfsa| | 2012-4-18 18:20 | 只看该作者
应该不可以,自己试试

使用特权

评论回复
地板
火箭球迷| | 2012-4-18 18:30 | 只看该作者
不可以

使用特权

评论回复
5
pkat| | 2012-4-18 21:30 | 只看该作者
应该是不能

使用特权

评论回复
6
logokfu| | 2012-4-23 07:50 | 只看该作者
手册上说过不可以。

使用特权

评论回复
7
lut1lut| | 2012-4-23 09:50 | 只看该作者
手册上说过不可以。
**kfu 发表于 2012-4-23 07:50


为何不可以?

手册上哪里说了,能否指明。

使用特权

评论回复
8
logokfu| | 2012-4-23 09:56 | 只看该作者
7# lut1lut

我没有实际验证过。我只是看手册上没有提到外设与外设之间传输。

使用特权

评论回复
9
lut1lut| | 2012-4-23 10:26 | 只看该作者
手册写的确实有歧义。。。

就如STM32F2的手册上也只提到了
/*************************************/
It can carry out the following transactions:
●       peripheral-to-memory
●       memory-to-peripheral
●       memory-to-memory
/*************************************/
但是在F2后面的正文描述绝对支持外设到外设,当然只是DMA2支持。

F1也是支持外设到外设的。比如:
在TIMx的更新中断触发下,DMA读取ADC的值传送到USART发送出去。

使用特权

评论回复
10
香水城| | 2012-4-24 10:05 | 只看该作者
广义的讲,对于DMA模块,存储器与外设没有分别,无非就是把数据从某个地址空间搬到另外一个地址空间,不管是源地址空间也好,目标地址空间也好,或者是一个区域,或者是一个单独的地址;在操作时,对于一个区域来说,需要地址不断递增,对于单独的地址单元来说,则不需要地址递增。

从这个意义上讲,完全可以使用DMA进行外设到外设的传输!

使用特权

评论回复
11
McuPlayer| | 2012-4-24 10:39 | 只看该作者
因为外设和内存在不同速度的总线,DMA控制器要做时钟协调,所以才叫用户设置那个寄存器

简单理解成DMA就是搬运,还是很直观的

使用特权

评论回复
12
st316| | 2012-4-25 08:57 | 只看该作者
本帖最后由 st316 于 2012-4-25 09:13 编辑

刚好正在看DMA部分,最新的Manual上说了,DMA支持外设到外设之间的传输。:lol

使用特权

评论回复
13
tang20063260|  楼主 | 2012-4-25 12:04 | 只看该作者
大侠些能做程序验证下吗,有时间的时候我在试一下

使用特权

评论回复
14
tang20063260|  楼主 | 2012-5-10 17:11 | 只看该作者
实践才是检验真理的最好标准,感觉11楼貌似说出原因了

使用特权

评论回复
15
Brother发| | 2012-8-8 22:02 | 只看该作者
本帖最后由 Brother发 于 2012-8-8 22:04 编辑

我用DMA进行SDIO(DMA2)与SPI2(DMA1)之间传输就不行,进入传输错误中断,哪位仁兄有试过外设与外设间传输可以的吗?是否同一个DMA1与DMA1的外设传输才行呢???9楼是否实验过可以??

使用特权

评论回复
16
lkl10800139| | 2012-8-9 22:26 | 只看该作者
我做过,adc采集,dac输出,可以的。adc到usart当然可以。张工说的,嘿。

使用特权

评论回复
17
Brother发| | 2012-8-12 08:46 | 只看该作者
请问lkl10800139 用的是哪个ADC?是DMA1与DMA1的传输还是DMA1与DMA2?

使用特权

评论回复
18
mengyy| | 2015-10-31 11:22 | 只看该作者
SD传输的时候一直卡在了DMA等待这里,
用野火的不行,原子的驱动我也看了,没条理,都看不下去,安富莱的中规中矩的,不错,换了安富莱的驱动就可以了   代码复杂看不懂,求解

使用特权

评论回复
19
jildlfg| | 2016-12-22 12:53 | 只看该作者
外设与外设之间可不可以,与通道有没有关系呢?

QQ截图20161222125228.png (308.21 KB )

QQ截图20161222125228.png

使用特权

评论回复
20
huzi2099| | 2016-12-22 13:52 | 只看该作者
可以的,目的地址填串口发送寄存器就行

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

33

帖子

0

粉丝