2020-05-13

什么是中断?
比如说我正在厨房用煤气烧一壶水,这样就只能守在厨房里,苦苦等着水开——如果水溢出来浇灭了煤气,有可能就要发生一场灾难了。门外忽然又传来了铿锵有力的歌声,我最喜欢的天龙八部要开演了,听着水壶发出“咕嘟咕嘟”的声音,我清楚:除非等到水开,否则没有我享受人生的时候。这个场景跟中断有什么关系呢?在这个场景中,我是唯一具有处理能力的主体,不管是烧水、还是看电视,同一个时间点上我只能干一件事情。但是,在我专心致志干一件事情时,总有许多或紧迫或不紧迫的事情突然出现在面前,都需要去关注,有些还需要我停下手头的工作马上去处理。只有在处理完之后,方能回头完成先前的任务。中断机制不仅赋予了我处理意外情况的能力,如果我能充分发挥这个机制的妙用,就可以“同时”完成多个任务了。事实上烧水需要10分钟完成,但是提下水壶和关煤气我只要几秒钟就可以完成。为了这几秒,我需要在厨房等候10分钟。如果使用闹钟定时10分钟,10分钟一到,闹钟就会提醒我该去关煤气了,那么我就可以去安心看电视了。实际上就是用了闹钟这样一个中断信号来提示我完成提水壶和关煤气的任务。中断优先级的说明当设置为默认中断固有优先级时:当几个中断同时发生时,则先处理中断优先级高的中断程序,在处理任意中断期间发生中断,都不会响应。当配置了中断优先级,即抢占优先级同时发生中断,优先级高的先响应,在处理任意中断时,发生同级别或低级的中断,则不响应,发生优先级更高的中断时,则先处理高优先级中断,处理完毕,再回来处理当前中断。当设置为默认固有中断优先级时:假设“水开”默认优先级高于“门铃”优先级,当先听到“水开”则先处理“水开”这件事,当先听到“门铃”则先处理“门铃”这件事。只有当两件事同时发生时,则会先去处理“水开”,再处理“门铃”。当人为配置了抢占中断优先级配置“水开”为高优先级,则当“水开”事件发生时,直接处理“水开”,在处理“水开”的过程中,即使“门铃”响了,也不会去理会。当“门铃”响了,正在走向门口时,这个时候,“水开”事件又发生了,那么从门口转向,先去处理“水开”,处理好了后,再回头到门口,处理“门铃”事件。在51单片机中使用中断51单片机中断源51单片机共有6个中断源,分别如下:INT0——外部中断0,由P3_2端口引入,低电平或者下降沿引起;中断级别最高;C语言使用序号为0;T0——定时器/计数器0,由T0计数器计数回零引起;中断级别第二;C语言使用序号为1;INT1——外部中断1,由P3_3端口引入,低电平或者下降沿引起;中断级别第三;C语言使用序号为2;T1——定时器/计数器1,由T1计数器计数回零引起;中断级别第四;C语言使用序号为3;TI/RI——串行口中断,由串行口完成一帧字符发送/接受后引起;中断级别第五;C语言使用序号为4;T2——定时器/计数器2,由T2计数器计数回零引起;中断级别第六;C语言使用序号为5;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值