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

2019-07-20 01:19发布

这阵子一直在做高速数据采集,使用STM32F302单片机,使用DMA方式传输ADC数据,搞了一个星期,发现搞不定,一直以为是我的配置有问题,今天才发现,
原来是我榨干了AHB总线的时间,导致DMA和其他外设冲突!
开启DMA期间,我是用单纯的计数延时,从采集数据到采完,需要240us,在这240us期间,如果啥也不干,只做计数延时,完全OK!
但是!我只要去读取IO口电平数据,DMA立马挂掉!多么痛的领悟!立贴提醒各位同志,不要以为开启DMA了就可以为所欲为,DMA也是要占用总线的!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-07-20 03:39
不应该,DMA传输是ADC到内存的操作,不影响GPIO读取才对。
liaoliaoliao
2楼-- · 2019-07-20 04:58
请问 怎样解决这个问题呢
人去搂空
3楼-- · 2019-07-20 08:15
 精彩回答 2  元偷偷看……
liaoliaoliao
4楼-- · 2019-07-20 13:00
 精彩回答 2  元偷偷看……

一周热门 更多>