OpenEdv-开源电子网

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

DMA中断占CPU吗?定时器通道时间到了执行定时器中断还是DMA中断

[复制链接]

7

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2014-3-10
在线时间
2 小时
发表于 2014-9-21 22:14:42 | 显示全部楼层 |阅读模式
5金钱
比如说我开启DMA的定时器通道,设置定时器的中断时间,比如说是500ms,当定时器时间到了,那么执行定时器中断还是DMA对应通道的中断呢?如果执行DMA对应通道的中断,会影响主函数的执行吗?求原子哥解释~

最佳答案

查看完整内容[请看2#楼]

首先,中断肯定是要占用CPU的。 然后,定时器,看你怎么设置,你可以设置定时器中断,同时触发DMA。 至于DMA中断还是不中断,得看你DMA当前运行情况,开启了半完成中断?完成中断?错误中断?之类的,并满足这些条件,才可能中断 而定时器中断,也是看你自己配置的,当满足你配置的条件,就会中断。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-21 22:14:43 | 显示全部楼层
首先,中断肯定是要占用CPU的。
然后,定时器,看你怎么设置,你可以设置定时器中断,同时触发DMA。
至于DMA中断还是不中断,得看你DMA当前运行情况,开启了半完成中断?完成中断?错误中断?之类的,并满足这些条件,才可能中断
而定时器中断,也是看你自己配置的,当满足你配置的条件,就会中断。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

20

主题

232

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
335
金钱
335
注册时间
2013-6-1
在线时间
0 小时
发表于 2014-9-21 22:38:45 | 显示全部楼层
CPU暂停现行程序而转去响应中断请求的过程称为中断响应。

没明白你的问题是什么意思,你所说的开启DMA的定时器通道是否是指定时器捕获比较DMA请求?

如果你所说的是DMA请求,那么请查看DMA/中断使能寄存器(TIMx_DIER),这个寄存器可以配置 禁止或者允许 捕获/比较的DMA请求。DMA方式不需CPU干预传送操作,仅仅是开始和结尾借用CPU一点时间,其余不占用CPU任何资源,中断方式是程序切换,每次操作需要保护和恢复现场。
所以DMA优先级高于中断请求,这样加快处理效率。

如果你说的是DMA中断,那么DMA中断只有以下几种:
TEIE:允许传输错误中断(Transfer error interrupt enable) 
HTIE:允许半传输中断(Half transfer interrupt enable) 
TCIE:允许传输完成中断(Transfer complete interrupt enable)
回复

使用道具 举报

6

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2014-11-3
在线时间
0 小时
发表于 2014-11-15 15:29:32 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
请教原子哥:
1、DMA采用多缓冲时,当产生DMA完成传输中断时(此时DMA还接着为下一个缓冲传输数据),是把处理已经存好缓冲的程序放在中断函数里面好,还是放在主函数里面好(主函数此时处于while(1)的死循环中,有足够的CPU资源)。
2、如果把处理函数放在中断服务函数中,那么如果当处理函数还没执行完,而DMA给下一个缓冲的数据转移已经结束,此时会产生DMA中断吗,如果会的话,那还没执行完的处理函数,是不是就不执行了?
我的问题比较多,经常麻烦原子哥,是在不好意思,万分感谢!!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-11-15 23:14:04 | 显示全部楼层
1,都可以。
2,不会,这种情况出现,就自求多福。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-29 03:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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