(16)--5.2 中断控制系统单片机原理及应用.ppt
-
资源ID:96426845
资源大小:234.94KB
全文页数:7页
- 资源格式: PPT
下载积分:15金币
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
(16)--5.2 中断控制系统单片机原理及应用.ppt
IED7D6D5D4D3D2D1D0A8HEAESET1EX1ET0EX0其中:其中:(1)EX0:外部中断0(INT0)的中断允许设置位,EX0=“0”表示禁止外部中断0中断,即屏蔽中断;EX0=“1”表示允许中断。(2)ET0:定时/计数器0(T0)的中断允许设置位,ET0=“0”表示禁止定时/计数器0中断,即禁止中断;ET0为“1”表示允许中断。(3)EX1:外部中断1(INT1)的中断允许设置位,EX1=“0”表示禁止外部中断1中断,即屏蔽中断;EX1=“1”表示允许中断。(4)ET1:定时/计数器1(T1)的中断允许设置位,ET1=“0”表示禁止定时/计数器1中断,即屏蔽中断;ET1=“1”表示允许中断。(5)ES:串口的中断允许设置位,ES=“0”表示禁止串口中断,即屏蔽中断;ES为“1”表示允许中断。(6)EA:中断允许总开关设置位,中断允许总开关中断允许总开关EA是一个很重要的角色,只有当通过软件将某中断源对应的位设为“1”且中断允许总开关中断允许总开关EA也设为“1”时,这个中断请求信号才是有效的。5.2 中断允许寄存器IE 中断允许寄存器中断允许寄存器IE:用来屏蔽或者允许某些中断源的中断请求信号,字节地字节地址为址为A8H,也可以位寻址,与中断有关的位,也可以位寻址,与中断有关的位如下图所示。5.2.5.2.中断优先级寄存器中断优先级寄存器IPIP当有两个或两个以上的中断源同时向当有两个或两个以上的中断源同时向CPUCPU发送中断请求且都被允许发送中断请求且都被允许中断时,由于在同一时刻中断时,由于在同一时刻CPUCPU只能响应一个中断源,只能响应一个中断源,CPUCPU到底先响到底先响应哪个中断源的中断请求呢?为了避免中断系统引起混乱,应哪个中断源的中断请求呢?为了避免中断系统引起混乱,MCS-51MCS-51单片机事先给每个中断源的中断请求设置一个独一无二的优先级。单片机事先给每个中断源的中断请求设置一个独一无二的优先级。在哪里设置呢?在中断优先级寄存器在哪里设置呢?在中断优先级寄存器IPIP中设置。中设置。IPD7D6D5D4D3D2D1D0B8HPSPT1PX1PT0PX0IPIPD7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0B8HB8HPSPSPT1PT1PX1PX1PT0PT0PX0PX0CPUCPU按照优先级的高低顺序,先响应优先级高的中断请求,最后响按照优先级的高低顺序,先响应优先级高的中断请求,最后响应优先级最低的中断请求。那么:应优先级最低的中断请求。那么:当当CPUCPU同时接收到几个相同优先级的中断请求信号时,同时接收到几个相同优先级的中断请求信号时,CPUCPU应该应该首先响应哪个中断源呢?原来首先响应哪个中断源呢?原来MCS-51MCS-51单片机的五个中断源优先级相单片机的五个中断源优先级相同时,同时,CPUCPU的响应顺序早就安排好了,称为的响应顺序早就安排好了,称为“同级有安排同级有安排”,外部中断外部中断0 0 定时定时/计数器计数器0 0 外部中断外部中断1 1 定时定时/计数器计数器1 1 串口串口当当CPUCPU正在执行高优先级中断服务程序时,又收到同级或者低级正在执行高优先级中断服务程序时,又收到同级或者低级的中断请求信号,此时此刻的中断请求信号,此时此刻CPUCPU又该怎么办呢?又该怎么办呢?CPUCPU继续执行高优继续执行高优先级中断,称为先级中断,称为“高不睬低高不睬低”。当当CPUCPU正在执行一个低优先级中断服务程序时,又收到一个高优正在执行一个低优先级中断服务程序时,又收到一个高优先级的中断请求信号,此时此刻先级的中断请求信号,此时此刻CPUCPU应该怎么办呢?应该怎么办呢?CPUCPU有非常严有非常严重的尊卑观念,所以它会停止执行低优先级中断服务程序,转去重的尊卑观念,所以它会停止执行低优先级中断服务程序,转去响应高优先级的中断源,称为响应高优先级的中断源,称为“停低转高停低转高”。那么如果再来一个优。那么如果再来一个优先级更高的中断请求,先级更高的中断请求,CPUCPU还会还会“暂停当前的中断服务程序转去响暂停当前的中断服务程序转去响应更高级的中断源吗?不会了,由于应更高级的中断源吗?不会了,由于CPUCPU的能力有限,在执行中断的能力有限,在执行中断服务程序时,只能服务程序时,只能“停低转高停低转高”一次,也就是说,仅能实现二级嵌一次,也就是说,仅能实现二级嵌套,中断嵌套示意图如图所示。套,中断嵌套示意图如图所示。MCS-51MCS-51单片机的中断控制装置单片机的中断控制装置如图所示如图所示,从图中我们可以看出:某,从图中我们可以看出:某中断源发送中断请求给中断源发送中断请求给CPUCPU,它的中断标志位由硬件置,它的中断标志位由硬件置1 1,如果中,如果中断允许寄存器断允许寄存器IEIE中对应的中断允许位为中对应的中断允许位为1 1,且中断总开关,且中断总开关EA=1EA=1,这,这个中断请求信号是有效的,个中断请求信号是有效的,CPUCPU在每个机器周期的在每个机器周期的S5P2S5P2期间对这些期间对这些有效的中断请求按优先级排队,响应优先级最高的中断请求。有效的中断请求按优先级排队,响应优先级最高的中断请求。