单片机的中断标志位是有什么作用?

有一个程序是给单片机一个每1毫秒的周期性中断,然后在中断中对中断标志位进行清零。但是我有一个疑问,中断标志位在这里有什么作用?为什么要对中断标志位清零?1毫秒的周期性中断... 有一个程序是给单片机一个每1毫秒的周期性中断,然后在中断中对中断标志位进行清零。但是我有一个疑问,中断标志位在这里有什么作用?为什么要对中断标志位清零?1毫秒的周期性中断是不是从中断标志位清零开始计时的?要是中断程序没有执行完,下一毫秒中断有来了,程序该怎么执行呢? 展开
 我来答
必问
推荐于2017-09-12 · TA获得超过438个赞
知道答主
回答量:94
采纳率:100%
帮助的人:23.1万
展开全部
四个问号分为四点一一解答:
1、一般来说单片机的中断发生有两个条件,一是中断标志位置位,二是中断允许,如果这两个条件都满足则进入中断,因为正常情况下中断一直是允许的,那么只能通过标志位来区分是否有中断挂起,
2、如果进入中断不清除标志位,那么这一中断服务程序结束后由于标志位还是置位的并且中断是允许的,那么还会再次进入该中断,就会发生一直在执行中断程序的情况
3、周期性中断是由定时器辅助完成的,只要定时时间到,硬件就会自动置位标志位,这时中断发生,定时器还在运行,与中断处理是并行的没有冲突,因此周期性的中断不是从中断标志位清零开始的。
4、如果中断程序没有执行完并且一下个中断又来了,那么硬件还是会自动置位标志位的,如果在这之前已经清零标志位那么中断结束后会再进入一次该中断,如果这时还没有清除中断标志位,则第二个1毫秒中断无效。
做而论道
高能答主

2015-03-17 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.1亿
展开全部
有一个程序是给单片机一个每1毫秒的周期性中断,

--是定时器,产生的中断吧?

然后在中断中对中断标志位进行清零。

--中断标志,清零,不用你关心。
--通常都是进入中断就自动清零。

要是中断程序没有执行完,下一毫秒中断有来了,程序该怎么执行呢?

--你的中断程序,就不应该编写这么长。
更多追问追答
追问
是定时器中断。
中断标志清零,我必须要关心,因为我要写程序对他清零,由于不了解这个中断标志位,所以我不懂是在中断程序的一开始就清零还是在中断程序的末尾清零。
至于中断程序,我也知道不应该太长,但是我是想明白太长了,下个中断来了,单片机是怎么执行的。
追答
中断标志清零,我必须要关心,
--你不必关心这个。
--51单片机,进入定时中断程序后,标志就自动清零。

因为我要写程序对他清零,
--画蛇添足。

至于中断程序,我也知道不应该太长,但是我是想明白太长了,
下个中断来了,单片机是怎么执行的。

--将继续执行你的很长的中断程序。
--不理会新产生的中断申请。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式