打印
[应用相关]

该中断下面语句还会执行吗

[复制链接]
459|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
androidbus|  楼主 | 2018-10-15 20:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在中断处理子程序里,程序还没处理完又使能该中断,请问该中断下面语句还会执行吗。
DMA中断()
{
    清中断标志;
  打开DMA中断;
  使能DMA中断;//DMA开始传输
   ...;                   //其他处理程序
     ...;
}
沙发
litengg| | 2018-10-15 20:23 | 只看该作者
这个问题要结合中断优先级和中断嵌套来看

使用特权

评论回复
板凳
qiangweii| | 2018-10-15 20:28 | 只看该作者
一般同样的中断要先执行完才能响应第二次中断

使用特权

评论回复
地板
sourceInsight| | 2018-10-15 20:31 | 只看该作者
在中断里,总中断是自动关的(但也可以再次打开),所以不会

使用特权

评论回复
5
boy1990| | 2018-10-15 20:33 | 只看该作者
优先执行中断的。后面还会执行。

使用特权

评论回复
6
CallReceiver| | 2018-10-15 20:35 | 只看该作者

中断下面语句还会执行

使用特权

评论回复
7
hfdy01| | 2018-10-15 20:37 | 只看该作者

都是根据中断设置的。

使用特权

评论回复
8
xia00| | 2018-10-15 20:38 | 只看该作者
可以放在main函数里面。

使用特权

评论回复
9
handleMessage| | 2018-10-15 20:39 | 只看该作者
中断处理子程序没有问题?

使用特权

评论回复
10
handleMessage| | 2018-10-15 20:40 | 只看该作者

DMA中断里面的代码不要太复杂了。

使用特权

评论回复
11
zhouhuanの| | 2018-10-15 20:41 | 只看该作者
怎么不放在主函数里面呢

使用特权

评论回复
12
Listate| | 2018-10-15 20:42 | 只看该作者
中断处理和子程序调用都需要压栈以保护现场

使用特权

评论回复
13
天灵灵地灵灵| | 2018-10-15 22:55 | 只看该作者
可以的,这里面的会执行完。

使用特权

评论回复
14
huzi2099| | 2018-10-16 16:49 | 只看该作者
你这里有个误区,"打开dma中断数据就开始传输了",不是这样的,dma操作都有触发信号,adc+dma就由adc转换完成触发,spi+dma就由spi的收或者发送触发dma,dma的中断只是告诉你本轮dma传输半满全满或出错.

使用特权

评论回复
15
huzi2099| | 2018-10-16 16:52 | 只看该作者
如果你开启dma的循环模式,数据传输不受中断影响.

使用特权

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

本版积分规则

181

主题

1597

帖子

3

粉丝