单片机中,有一个定时中断函数,在中断里有很长的循环程序,这里问题来了。

假如这个中断是定时中断,时间为10ms的中断,每隔10ms中断一次,但是每次执行这个中断却要耗费30ms的时间,那么在执行这个中断里的程序时,执行到20ms时,程序还在里... 假如这个中断是定时中断,时间为10ms的中断,每隔10ms中断一次,但是每次执行这个中断却要耗费30ms的时间,那么在执行这个中断里的程序时,执行到20ms时,程序还在里面执行,还没有跳出中断,那么CPU的这个10ms中断会怎么办?忽略还是?
-------------------------------是不是一定要把这个30ms执行完才会去响应那个10ms的中断?
虽然这种程序没有什么实用的意义,但是从原理上来分析的话,会出现什么情况?
展开
 我来答
lycdl
高粉答主

2014-03-18 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2万
采纳率:94%
帮助的人:4940万
展开全部
的确,这种程序没有什么实用的意义,从原理上分析,更不会有人这么做的。你非要这么做,也没有人管,但不符合逻辑。既然采用中断的方式,就是为了充分利用单片机的时间。像你说的这个问题一种解决的办法是延长中断的时间,中断的时间要长于执行中断程序的时间,因每次中断的执行任务需要30ms,而中断时间是10ms,这根本就不能完成中断的任务吗,当然了,中断时,没有从中断返回,就不会再响应同一个中断的。因此,从中断返回后,已经少响应中断两次了,也就是少执行两次中断任务。可是中断一次执行中断任务就却需要3倍的时间,你自己想想,这么做合乎逻辑吗,所以,根本就不会有人这么做,只有瞎想才能这么想的。
做而论道
高能答主

2014-03-18 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
在中断程序中,不退出,又出现了本中断的申请,
单片机,是不会再一次进入该中断程序的。

只有高级的中断,才能中断本次中断。

当退出本次中断后,回到主程序执行了一条指令,在处于主程序期间,单片机才会顾及已经出现的申请。

但是,如果,该申请标志,已经消失,单片机就不会发生中断。

这个过程,有些书,讲的很详细。有些书,就没有讲。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cc21aee
2014-03-17 · TA获得超过2044个赞
知道小有建树答主
回答量:1273
采纳率:100%
帮助的人:1224万
展开全部
中断只有在无同级或更高级中断发生时才能进入,中断会延迟,为什么要在中断里执行这么长的程序,而且中断时间选的这么短,这样做单片机做不了其他的事了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhxiufan
2014-03-18 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38387
国家科技进步奖

向TA提问 私信TA
展开全部
那是当然的,没有RETI也就是中断返回,是不会继续响应中断的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-18
展开全部
中断标志位会置位,但会继续执行完程序再响应
追答
你确定??我一直以为是又重新重中断开始执行
可以试一下,中断有中断优先级同等级的不会中断嵌套
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式