单片机知识第4章MCS51单片机的中断系统_第1页
单片机知识第4章MCS51单片机的中断系统_第2页
单片机知识第4章MCS51单片机的中断系统_第3页
单片机知识第4章MCS51单片机的中断系统_第4页
单片机知识第4章MCS51单片机的中断系统_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微机原理及应用微机原理及应用第第4章章 mcs-51单片机单片机的中断系统的中断系统 4.1 中断的概念 中断是指在cpu正在处理某项事务的时候,如果外界或内部发生了紧急事件,要求cpu暂停正在运行的工作转而去处理这个紧急事件,待处理完后再回到原来被中断的地方,继续原来被打断了的工作的过程。中断是计算机中一个很重要的概念,中断技术的引入使计算机的发展和应用都大大地推进了一步。可以说:没有中断技术,就没有目前计算机的广泛应用。 中中断断服服务务程程序序主主程程序序继继续续主主程程序序响应中断响应中断返回返回低低级级中中断断主主程程序序继继续续主主程程序序中断中断返回返回高高级级中中断断中断中断返

2、回返回 4.2 8051中断系统结构及中断控制中断系统结构及中断控制 mcs-51系列单片机有系列单片机有5个中断源和个中断源和其相应的控制寄存器。其相应的控制寄存器。 1. 中断源中断源 产生中断的请求源叫中断源。产生中断的请求源叫中断源。 mcs-51系列单片机的系列单片机的5个中断源个中断源,包括,包括2个外部中断源个外部中断源和和3个内部中断源个内部中断源。 mcs-51系列单片机能提供系列单片机能提供两个中断优先两个中断优先级级,实现,实现两级中断嵌套两级中断嵌套。振荡器和时序振荡器和时序osc程序存储器程序存储器4kb rom数据存储器数据存储器4kb ram64kb总线总线扩展控

3、制器扩展控制器可编程可编程i/o可编程全双工可编程全双工串行口串行口8051cpu216位位定时器定时器/计数器计数器外时钟源外时钟源内中断内中断外中断外中断控制控制并行口并行口串行通信串行通信外部事件计数外部事件计数 1 mcs-51单片机总体构框图 2个外部中断源个外部中断源是是外部中断外部中断0和外部中断和外部中断1,相应的中断请求信,相应的中断请求信号输入端是号输入端是int0和和int1。 3个内部中断源个内部中断源是是定时器定时器/计数器计数器0溢出中溢出中断,断,定时器定时器/计数器计数器1溢溢出中断,串行口的发出中断,串行口的发送和接收中断送和接收中断(ti和和ri)。 外部中

4、断请求有两种触发方式:外部中断请求有两种触发方式:电电平触发平触发和和边沿触发边沿触发。电平触发电平触发边沿触发边沿触发高高低低 2. tcon寄存器 tcon是定时器是定时器/计数器计数器0和和1(t0、t1)的控制寄存器,同时也用来)的控制寄存器,同时也用来锁存锁存t0、t1的的溢出中断申请标志溢出中断申请标志和和外部中断请求外部中断请求标志标志。tcon(88h)d7d6 d5d4 d3d2d1d0tf1tf0tf0ie1 it1 ie0 it0定时器定时器/计数器计数器1定时器定时器/计数器计数器0溢出中断请求标溢出中断请求标志志,由硬件置位。由硬件置位。int1、int0请求标志,请

5、求标志,由硬件置位。由硬件置位。int1、int0触发方式控制位,触发方式控制位,由软件置位或复位。由软件置位或复位。it1=0时,时, int1为电平触发,为电平触发, it1=1为边为边沿触发;沿触发;it0同理同理(对应对应int0)。 3. scon寄存器 scon为串行口控制寄存器,其中的低2位用作串行口中断请求标志 。 4 . 在在mcs-51单片机中断系统中,中断的单片机中断系统中,中断的允允许许或或禁止禁止是由片内的中断允许寄存器是由片内的中断允许寄存器ie控制控制的。的。ie(a8h)d7 d6d5 d4d3d2d1d0eaeset1ex1 et0 ex0cpu中断允许标志位

6、。中断允许标志位。ea=0时,关中断;时,关中断;ea=1时,开中断。时,开中断。串口串口中断允许标志位。中断允许标志位。ea=0时,关串口中断;时,关串口中断;ea=1时,开串口中断。时,开串口中断。t1、t0溢出中断溢出中断允许标志位。允许标志位。et1=0时,关时,关t1中断;中断;et1=1时,开时,开t1中断。中断。et0同理同理(对应对应t0)。外部外部中断允许标志位。中断允许标志位。ex1=0时,关时,关int1中断;中断;ex1=1时,开时,开int1中断。中断。ex0同理同理(对应对应int0)。例:假设允许片内定时器/计数器中断,禁止其他中断,设置相应的ie值。 mov i

7、e, #8ah 或 setb et0 setb et1 setb ea 5 . mcs-51系列单片机的系列单片机的中断优先级控制中断优先级控制是由是由中断优先级寄存器中断优先级寄存器ip控制的。控制的。 ip(b8h)d7 d6d5 d4d3d2d1d0pspt1px1pt0 px0串口中断串口中断t1中断中断外部中断外部中断1t0中断中断外部中断外部中断0优先级可以用软件进行设置,单片机复位优先级可以用软件进行设置,单片机复位后,后,ip中的各位均被清中的各位均被清0。例:设8031的片外中断为高优先级,片内中断为低优先级,设置ip相应的值。 mov ip, #05h 或 setb px0

8、 setb px1 clr ps clr pt0 clr pt1 mcs-51单片机中断系统应遵循的原则:单片机中断系统应遵循的原则: 1、低优先级中断可被高优先级中断请求所中断,反之、低优先级中断可被高优先级中断请求所中断,反之 则不能。则不能。 2、同级的中断请求不能打断已经执行的同级中断。、同级的中断请求不能打断已经执行的同级中断。中断源外部中断0定时器/计数器0外部中断1定时器/计数器1串行口自然优先级最高最低中断响应条件:中断响应条件: 必须要有中断请求必须要有中断请求 中断源的中断允许位为中断源的中断允许位为1(即(即ie中的总允许位中的总允许位ea1,且,且ie相应的中断允许位为

9、相应的中断允许位为1) 无同级或高级中断正在服务无同级或高级中断正在服务 现行指令执行完最后一个机器周期。现行指令执行完最后一个机器周期。 4.3 中断响应过程中断响应过程 cpu在每个机器周期的s5p2时刻采样各中断源的中断请求信号,并将它锁存在tcon或scon中的相应位。在下一个机器周期对采样到的中断请求标志进行查询。如果查询到中断请求标志,则按优先级高低进行中断处理,中断系统将通过硬件自动将相应的中断矢量地址装入pc,以便进入相应的中断服务程序。 4.4 中断响应时间中断响应时间 在不同的情况下cpu响应中断的时间是不同的。 以外部中断为例,int0和int1引脚的电平在每个机器周期的

10、s5p2时刻经反相锁存到tcon的ie0和ie1标志位,cpu在下一个机器周期才会查询到新置入的ie0和ie1,如果满足响应条件,cpu响应中断时要用两个机器周期执行一条硬件长调用指令“lcall”,由硬件完成将中断矢量地址装入程序指针pc中,使程序转入中断矢量入口。因此,从产生外部中断到开始执行中断程序至少需要三个完整的机器周期。 4.5 中断响应后中断请求的撤除中断响应后中断请求的撤除 中断源提出中断申请,在中断源提出中断申请,在cpu响应此中断请响应此中断请求后,该中断源之中断请求在中断返回之前应求后,该中断源之中断请求在中断返回之前应当撤除,以免引起重复中断,被再次响应。当撤除,以免引

11、起重复中断,被再次响应。 对于对于边沿触发的外部中断边沿触发的外部中断,cpu在响应中断在响应中断后由后由硬件自动清除硬件自动清除相应的中断请求标志相应的中断请求标志ie0和和ie1。 对于对于电平触发的外部中断电平触发的外部中断,必须,必须外加硬件外加硬件来来撤销中断请求。撤销中断请求。 对于对于定时器溢出中断定时器溢出中断,cpu在响应中断后就在响应中断后就由由硬件消除硬件消除了相应的中断请求标志了相应的中断请求标志tf0、tf1。 对于对于串行口中断串行口中断,cpu在响应中断后并不自在响应中断后并不自动清除中断请求标志动清除中断请求标志ri或或ti,因此必须在,因此必须在中断中断服务程

12、序中服务程序中用用软件软件来来清除清除。中断系统应用举例: 外部中断源的扩展int0装置装置1装置装置2装置装置3装置装置48051p1.4p1.5p1.6p1.7org 0003hljmp int0int0: push psw push acc jb p1.7, dv1 jb p1.6, dv2 jb p1.5, dv3 jb p1.4, dv4gb: pop acc pop psw retidv1: ajmp gbdv2: ajmp gbdv3: ajmp gbdv4: ajmp gb 设计一个程序,能够实时显示设计一个程序,能够实时显示int0引脚上出现的负跳变信引脚上出现的负跳变信号的

13、累计数。号的累计数。主程序:主程序: org 0000h ajmp main org 0003h ajmp ip0 org 0030hmain: mov sp, #60h setb it0 setb ea setb ex0 mov r7, #00h lp: acall disp ajmp lp中断服务子程序:中断服务子程序:ip0: inc r7 reti中断程序举例:中断程序举例:例:例: x1、x2、x3为为3个个故障输入,当系统故障输入,当系统无无故障故障时,它们全为时,它们全为低低电平,电平,3个灯不亮;当个灯不亮;当某部分出现某部分出现故障故障时,时,其对应的输入端由低其对应的输入端由低电平变为电平变为高高电平,从电平,从而引起单片机中断,而引起单片机中断,并点亮对应的发光二并点亮对应的发光二极管。极管。主程序:主程序: org 0000h ajmp main org 0003h ajmp servemain: orl p1, #0ffh ;p1口设初值,灯全灭口设初值,灯全灭 setb it0 ;选择边沿触发方式;选择边沿触发方式 setb ex0 ;允许;允许int0中断中断 setb ea ;开;开cpu中断中断 sjmp $

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论