第6章 中断系统1.doc_第1页
第6章 中断系统1.doc_第2页
第6章 中断系统1.doc_第3页
第6章 中断系统1.doc_第4页
第6章 中断系统1.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

第六章 中断系统日常生活的中断概念某人看书 执行主程序 中断过程电话铃响 中断信号INTx=0 中断请求暂停看书 暂停执行主程序 中断响应书中作记号 当前PC值入栈 保护断点电话谈话 执行中断程序 中断服务继续看书 返回主程序 中断返回 【因为仅隔8个单元】引起CPU中断的根源,称为中断源。中断源如果向CPU提出中断请求,若被响应,CPU就暂时中断原来的事件A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。6.1 51系列中断技术概述 中断技术主要用于实时监测与控制,要求单片机能及时地响应中断请求源提出的服务请求,并作出快速响应、及时处理。这是由片内的中断系统来实现的。 图6-1 中断响应和处理过程如果单片机没有中断系统,单片机的大量时间可能会浪费在查询是否有服务请求发生的定时查询操作上。采用中断技术完全消除了单片机在查询方式中的等待现象,可以大大地提高了单片机的工作效率和实时性。6.1.1 51系列中断系统结构中断系统结构图如图6-2所示。中断系统有5个中断请求源(简称中断源),两个中断优先级,可实现两级中断服务程序嵌套。每一个中断源可用软件独立控制为允许中断(=1)或关中断(=0)状态,中断优先级均可用软件来设置。6.1.2 中断请求源由图6-2可见,AT89C51中断系统共有5个中断请求源:图6-2 AT89C51的中断系统结构示意图(1)中断源信号:2个外部中断源信号:、;2个定时器T0、T1溢出中断请求:TF0、TF1;1个串行口数据发送、接收结束中断请求:TI、RI。(2)中断允许控制:(IE)总允许开关:EA;源允许开关:ES、ET1、EX1、ET0、EX0。(3)2级中断优先级控制:(IP)优先级选择开关:PS、PT1、PX1、PT0、PX0。6.2 51系列单片机的中断系统51系列的中断系统主要由TCON、SCON、IE(Interrupt Enable,中断允许)控制器和中断优先级控制器IP(Interrupt priority)等组成。其中:TCON的相应位用于锁存4个中断请求标志(外部中断0、定时器0、外部中断1、定时器1);设置和的两种触发方式(低电平或下降沿)SCON用于锁存串口发送中断接收中断请求标志。IE(中断允许寄存器)用于控制5个中断源中哪些中断请求被允许向CPU提出,哪些中断源的中断请求被禁止。设置总中断EA。IP(中断优先级控制寄存器)用于控制5个中断源的中断请求的优先级(有高低2个级别)。6.2.1 中断及启停控制寄存器TCON(Timer/Counter Control)控制寄存器TCON的地址为88H,可进行位寻址。单片机复位后,TCON被清“0”,5个中断请求标志均为“0”。D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8FH8EH8DH8CH8BH8AH89H88HTR1和TR0这两位与中断无关,用于定时器/计数器的启、停。中断请求是通过几个特殊功能寄存器中的有关位来表示,只要判别这些位的状态就能确定有无中断请求及中断的来源。(1)2个定时器/计数器中断2个定时器/计数器中断是在其从全“1”变为全“0”溢出【相当于产生进位】时,自动向中断系统提出。(a)TF0:定时器T0溢出中断请求。当定时器T0产生溢出时,T0中断请求标志TF0(TCON.5)置1,请求中断处理。如果允许中断,则进入中断服务程序,由内部硬件自动清零(TF0=0)。(b)TF1:定时器T1溢出中断请求。当定时器Tl产生溢出时,T1中断请求标志TF1(TCON.7)置1,请求中断处理。如果允许中断,则进入中断服务程序,由内部硬件自动清零(TF1=0)。(2)1个串行口中断TIRI:串行口发送接收中断请求。当通过串行口发送或接收完一帧串行数据时,串行口中断请求标志TI或RI置1,请求中断处理。如果允许中断,则进入中断服务程序后,必须由软件清TI或RI为零。(3)2个外部中断(a):外部中断0请求,中断请求信号由(P3.2)引脚输入,它有两种触发方式,通过IT0(TCON.0)来决定是电平触发方式还是边沿触发方式。当置IT0(TCON.0)0时,用低电平触发;当置IT0(TCON.0)1时,用下跳变触发。一旦输入信号有效,将中断标志IE0(TCON.1)置1。当IE0=1时,外部中断0可以向CPU申请中断。【一般用下跳变触发】(定时/计数器也是下跳变计数)(b):外部中断1请求,中断请求信号由(P3.3)引脚输入,它有两种触发方式,通过IT1(TCON.2)来决定是电平触发方式还是边沿触发方式。当置IT1(TCON.2)0时,用低电平触发;当置IT0(TCON.2)1时,用下跳变触发。一旦输入信号有效,将中断标志IE1(TCON.3)置1。当IEl=1时,外部中断1可以向CPU申请中断。【一般用下跳变触发】6.2.2 中断请求标志当IT0=0时,为电平触发方式。在这种方式下,CPU在每个机器周期的S5P2期间采样 (P3. 2 )引脚输入电平,若采样为低电平时,认为有中断申请,则置IE0标志为1;若采样为高电平,认为无中断申请或中断申请已撤除,则将IE0标志清0。注意在电平触发方式下,CPU响应中断后不会自动清除IE0标志,也不能由软件清除IE0标志,所以在中断返回前,一定要撤消引脚上的低电平,使IE0置0,否则将再次引起中断。当IT0=1时,为边沿触发方式,加到引脚上的外部中断请求输入信号电平从高电平到低的负跳变有效。CPU在每个机器周期的S5P2期间采样引脚输入电平,如果连续两次采样,则一个机器周期中采样为高电平,下个机器周期中采样为低电平,则置IE0标志为1,表示外部中断0正在向CPU申请中断。当CPU响应该中断时,IE0由硬件自动清0。由于每个机器周期采样一次外部中断输入电平,所以在下降沿触发方式中,为保证CPU在两个机器周期内检测到由高到低的负跳变,必须保证外部中断源输入的高电平和低电平的持续时间在12个时钟周期以上。【和上面一段相同。、的中断触发方式有两种,电平触发方式,低电平有效;跳变触发方式,电平发生由高到低的跳变时触发。这两种触发方式可由设置TCON寄存中的中断申请方式控制位IT1(TCON.2)和IT0(TCON.0)来设置;设置IT1或IT00,选择电平触发方式;设置IT1或IT01,选择下跳变触发方式,即当、引脚检测到前一个机器周期为高电平、后一个机器周期为低电平时,置位IE0、IE1,且向CPU申请中断。由于CPU每个机器周期采样、引脚一次,为确保中断申请被采样到,外部中断源送、引脚的中断请求信号高、低电平应至少保持一个机器周期。如果是跳变触发方式,则外部中断源送、引脚的中断请求信号高、低电平至少各保持一个机器周期,才能确保CPU采集到电平的跳变;如果是电平触发方式,则外部中断源送、引脚请求中断的低电平有效信号,应一直保持到CPU响应中断为止。】6.2.3 SCON中断标志SCON也是专用寄存器,字节地址为98H,可进行位寻址。其低2位锁存了串行口发送中断接收中断请求标志TI和RI。与中断有关的位如下:D7D6D5D4D3D2D1D0TIRI位地址99H98H(1) TI:串行口发送中断标志位。当CPU将一个数据写入发送缓冲器SBUF时,就启动发送,每发送完一个串行帧,由硬件置TI=1,向CPU发中断申请。由于CPU响应中断时不自动清除TI,所以“TI”必须由软件清除。(2)RI:串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置RI=1,向CPU发中断申请。CPU响应中断时也不会自动清除RI,因此必须由软件指令对“RI”清除。6.2.3 中断请求控制6.2.3.1 中断允许控制寄存器IE(Interrupt Enable Repister)IE是特殊功能寄存器SFR中的一个,其字节地址为A8H,可以进行位寻址。通过对IE的编程写入可以控制CPU对中断源的开放或禁止,以及每一个中断源是否允许中断。其格式如下:D7D6D5D4D3D2D1D0IEEAESET1EX1ET0EX0位地址AFHACHABHAAHA9HA8HIE对中断的开发和关闭实现两级控制。(1)EA(IE.7): CPU中断总允许位。EA=1,CPU开放总中断,这时每个中断源的中断请求被允许或禁止,取决于IE中的低5位所对应的5个中断允许控制位的状态来决定;EA=0,CPU屏蔽所有的中断请求,即禁止所有中断。(2)EX0(IE.0):外部中断0中断允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。(3)ET0(IE.1):定时器/计数器0的溢出中断允许位。ET0=1,允许T0溢出中断;ET0=0,禁止T0溢出中断。(4)EX1(IE.2):外部中断1中断允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。(5)ET1(IE.3):定时器/计数器T1的溢出中断允许位。ET1=1,允许T1溢出中断;ET1=0,禁止T1溢出中断。(6)ES(IE.4):串行口中断允许位。ES =1,允许串行口中断;ES =0,禁止串行口中断。6.2.3.2 中断优先级寄存器IP单片机的中断请求源有两个中断优先级,由软件分别设置为高优先级中断或低优先级中断,可实现:两级中断嵌套。图5-6 两级中断嵌套的过程各中断源的中断优先级关系,可归纳为两条基本规则:(1)高优先级中断源可中断(暂停)正在执行的低优先级中断服务程序,除非在执行低优先级服务程序时,设置了CPU关中断或禁止某些高优先级中断源的中断;(2)同级或低优先级中断源不能中断正在执行的中断服务程序。中断优先级寄存器IP的字节地址为B8H,可进行位寻址。通过对中断优先级寄存器IP的设置,可实现将5个中断源分别设置为高优先级中断或低优先级中断。其格式如下:D7D6D5D4D3D2D1D0IPXXPT2PSPT1PX1PT0PX0位地址XXBDHBCHBBHBAHB9HB8H (比较IE和IP,可以看出中断源的中断允许与中断优先级设定位是相对应的)若设定IP的某位为1,则该位对应的中断源为高优先级中断源;若设定某位为0,则该位对应的中断源为低优先级中断源。(1)PX0(IE.0):外部中断0中断允许位。PX01,高优先级;PX00,低优先级。(2)PT0(IE.1):定时器0中断允许位。PT01,高优先级;PT00,低优先级。(3)PX1(IE.2):外部中断1允许位。PX11,高优先级;PX10,低优先级。(4)PT1(IE.3):定时器1中断优先级设定位。PT11,高优先级;PT10,低优先级。(5)PS(IP.4):串行口中断优先级设定位。PS1,高优先级;P

温馨提示

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

评论

0/150

提交评论