OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3260|回复: 7

分享一个关于DMA的实践心得

[复制链接]

9

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
117
金钱
117
注册时间
2012-11-26
在线时间
18 小时
发表于 2018-6-5 20:12:20 | 显示全部楼层 |阅读模式
这阵子一直在做高速数据采集,使用STM32F302单片机,使用DMA方式传输ADC数据,搞了一个星期,发现搞不定,一直以为是我的配置有问题,今天才发现,
原来是我榨干了AHB总线的时间,导致DMA和其他外设冲突!
开启DMA期间,我是用单纯的计数延时,从采集数据到采完,需要240us,在这240us期间,如果啥也不干,只做计数延时,完全OK!
但是!我只要去读取IO口电平数据,DMA立马挂掉!多么痛的领悟!立贴提醒各位同志,不要以为开启DMA了就可以为所欲为,DMA也是要占用总线的!

做个技术型屌丝
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-6-6 01:20:11 | 显示全部楼层
不应该,DMA传输是ADC到内存的操作,不影响GPIO读取才对。
回复 支持 反对

使用道具 举报

10

主题

212

帖子

0

精华

高级会员

Rank: 4

积分
745
金钱
745
注册时间
2019-4-8
在线时间
226 小时
发表于 2019-6-12 16:43:55 | 显示全部楼层
请问 怎样解决这个问题呢
回复 支持 反对

使用道具 举报

0

主题

143

帖子

0

精华

初级会员

Rank: 2

积分
173
金钱
173
注册时间
2019-5-30
在线时间
4 小时
发表于 2019-6-13 14:47:48 | 显示全部楼层
等大神来解决吧!
回复 支持 反对

使用道具 举报

10

主题

212

帖子

0

精华

高级会员

Rank: 4

积分
745
金钱
745
注册时间
2019-4-8
在线时间
226 小时
发表于 2019-6-13 14:48:27 | 显示全部楼层
最近在高速采集CMOS图像传感器的数据  ADC转换 经过DMA传输 保存到数组里 但用串口打印数组 总感觉数据不对  不知道是不是配置问题  还是跟ADC的时钟 和采样周期有关  又或许像你说的DMA已经挂掉了  求指点  谢谢
回复 支持 反对

使用道具 举报

10

主题

212

帖子

0

精华

高级会员

Rank: 4

积分
745
金钱
745
注册时间
2019-4-8
在线时间
226 小时
发表于 2019-9-7 10:04:38 | 显示全部楼层
你好 请问你是定时计数去判断采集完成与否的吗  采集的数据放到数组里的吗
回复 支持 反对

使用道具 举报

10

主题

293

帖子

0

精华

高级会员

Rank: 4

积分
623
金钱
623
注册时间
2019-6-3
在线时间
107 小时
发表于 2019-9-7 10:12:50 | 显示全部楼层
占楼学习
回复 支持 反对

使用道具 举报

10

主题

212

帖子

0

精华

高级会员

Rank: 4

积分
745
金钱
745
注册时间
2019-4-8
在线时间
226 小时
发表于 2019-10-22 20:23:28 | 显示全部楼层
请问  当时用的是外部触发ADC采集 然后用DMA传输数据吗
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 06:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表