微机原理与单片机接口技术(第2版)教学课件第6章微处理器中断及定时计数器应用设计

举报
资源描述
第6章微处理器中断及定时/计数器应用设计 12一、教学内容一、教学内容1、中断系统2、单片机中断系统概述3、单片机的定时/计数器二、教学重点二、教学重点掌握单片机中断、定时/计数器的编程。二、教学难点二、教学难点中断概念和中断控制寄存器、中断允许寄存器等寄存器的含义。三、教学方式三、教学方式运用PPT讲解,结合软件和实验板演示中断、定时/计数器的编程。6.1中中断断系系统统 1 1中断的定义中断的定义中中断断是是指指微微处处理理器器控控制制系系统统运运行行过过程程中中,出出现现某某些些意意外外情情况况需需主主机机干干预预时时,机机器器能能自自动动停停止止正正在在运运行行的的程程序序并并转转入入处处理理新新情情况况的的程程序序,处处理理完完毕毕后后又又返返回回原原被被暂暂停停的的程程序序继继续续运运行行,这这个个过过程程称称为为中中断断。中中断断装装置置和和中中断断处处理理程程序序统统称称为为中中断断系系统统。中中断断系系统统是是微微处处理理器器控控制制系系统统的的重重要要组组成成部部分分,实实时时控控制制、故故障障自自动动处处理理、微微处处理理器器控控制制系系统统与与外外围围设设备备间间的的数数据据传传送送往往往往采采用用中中断断系系统统。中中断断系系统统的的应应用用大大大大提提高高了了计计算算机机的的效率。效率。不不同同的的微微处处理理器器其其硬硬件件结结构构和和软软件件指指令令是是不不完完全全相相同同的的,因因此此,中中断断系系统统也也是是不不相相同同的的。微微处处理理器器的的中中断断系系统统能能够够加加强强CPU对对多多任任务务事事件件的的处处理理能能力力。中中断断机机制制是是现现代代微微处处理理器器系系统统中中的的基基础础设设施施之之一一,它它在在系系统中起着通信网络的作用,以协调系统对各种外部事件的响应和处理。统中起着通信网络的作用,以协调系统对各种外部事件的响应和处理。4图6-1中断响应和处理过程处理中断源的程序称为中断处理程序。CPU执行有关的中断处理程序称为中断处理。而返回断点的过程称为中断返回,中断响应和处理过程如图6-1所示。中断是CPU对系统发生的某个事件做出的一种反应。引起中断的事件称为中断源。中断源向CPU提出处理的请求称为中断请求。发生中断时被打断程序的暂停点称为断点。CPU暂停现行程序而转为响应中断请求的过程称为中断响应。2中断的处理过程接收中断请求。查看本级中断屏蔽位,若该位为1,则本级中断源参与优先级排队。中断优先级选择。处理机执行完一条指令后或者这条指令已无法执行完,则立即中止现行程序。接着,中断部件根据中断级去指定相应的主存单元,并把被中断的指令地址和处理机当前的主要状态信息存放在此单元中。中断部件根据中断级又指定另外的主存单元,从这些单元中取出处理机新的状态信息和该级中断控制程序的起始地址。执行中断控制程序和相应的中断服务程序。执行完中断服务程序后,利用专用指令使处理机返回被中断的程序或转向其他程序。3中断的程序状态字和中断向量(1)程序状态字:每个程序均有自己的程序状态字。现行程序的程序状态字放在处理机的程序状态字寄存器中。程序状态字中最主要的内容有指令地址、条件码、地址保护键、中断屏蔽和中断响应时的中断源记录等。中断响应和处理操作的第步和第步就是交换程序状态字操作。(2)中断向量:每级中断都对应一个向量,这些向量顺序存放在主存的指定单元中。向量的内容是相应的中断服务程序起始地址和处理机状态字(主要是指令地址)。当中断响应时,由中断部件提供中断向量的地址,就可取出该向量。中断响应和处理操作的第步就是取中断向量操作。在采用向量中断的机器中一般不再使用程序状态字。4中断系统功能(1)实现中断响应和中断返回。(2)实现优先级排队。(3)实现中断嵌套。5中断源分类 中断源是指能够引起中断的原因。一台处理机可能有很多中断源,但按其性质和处理方法,大致可分为如下5类。(1)机器故障中断。(2)程序性中断。(3)输入/输出设备中断。(4)外中断。(5)调用管理程序。6中断优先级 几个中断请求可能同时出现,但中断系统只能按一定的次序来响应和处理。最先被响应的中断具有最高的优先级,按优先级顺序进行处理。优先级的高低是由中断部件的中断排队线路确定的。当机器设置很多中断源时,为了简化设计,对中断源分组管理。具有相同中断优先级的中断源构成一个中断级。同级中断使用同一个中断控制程序起点。7中断屏蔽 对各中断级设置相应的屏蔽位。只有屏蔽位为1时,该中断级才能参加中断优先级排队。中断屏蔽位可由专用指令建立,因而可以灵活地调整中断优先级。有些机器针对某些中断源也设置屏蔽位,只有当屏蔽位为1时,相应的中断源才起作用。6.2 单片机中断系统概述 51系列不同型号单片机的中断源的数量是不同的(511个),本节以8051单片机的中断系统为例分析51系列单片机的中断系统,其它各种51单片机的中断系统与之基本相同,8051单片机的中断系统结构框图如图6-2所示。8051单片机有5个中断源,2个中断优先级,可以实现二级中断服务程序嵌套,每个中断源可以编程为高优先级或低优先级中断,允许或禁止向CPU请求中断。与中断系统有关的特殊功能寄存器有中断允许控制寄存器IE、中断优先级控制寄存器IP和中断源寄存器TCON、SCON。11图图6-28051单片机的中断系统结构框图单片机的中断系统结构框图8051单片机有5个中断源:2个外部中断源,分别为外部中断0(引脚)和外部中断1(引脚);3个内部中断源,分别为定时/计数器T0溢出中断、定时/计数器T1溢出中断和串行口的发送/接收中断。这些中断源分别锁存在TCON和SCON的相应位中。1外部中断2定时/计数器中断3串行中断126.2.1单片机的中断类型单片机的中断类型8051单片机的每个中断请求都对应一个中断请求标志位,它们分别在特殊功能寄存器TCON和SCON的相应位中。运行中,CPU通过查询这些寄存器中的中断请求标志位的值来判断是否有相关的中断请求。1.TCON寄存器 TCON用于保存外部中断请求及定时/计数器的计数溢出。TCON的内容及位地址如表6-1所示。其中与中断有关的位是IE0、IE1、TF0和TF1。136.2.2单片机的中断控制寄存器单片机的中断控制寄存器14TCON的高4位与定时/计数器的设置有关,TCON的低4位与外部中断有关,其含义如下。(1)IT0、IT1:IT0是外部中断0的中断请求触发方式控制位,IT1是外部中断1的中断请求触发方式控制位,二者的含义相同。在程序设计中可以对IT0、IT1直接赋值。(2)IE0、IE1:IE0是外部中断0的请求标志位,IE1是外部中断1的请求标志位,二者的含义相同。当CPU检测到(P3.2)引脚上有中断请求信号时,由CPU硬件置1;当CPU检测到(P3.3)引脚上有中断请求信号时,由CPU硬件置1。(3)TF0、TF1:TF0是定时/计数器T0溢出中断请求标志位,TF1是定时/计数器T1溢出中断请求标志位,二者的含义相同。(4)TR0/TR1:定时/计数器的运行控制位。TR1为定时/计数器T1的运行控制位,TR0为定时/计数器T0的运行控制位,二者的含义和功能完全相同。2.2串行口控制寄存器串行口控制寄存器SCONSCON的内容及位地址如表6-2所示。(1)TI:串行口发送中断请求标志位。(2)RI:串行口接收中断请求标志位。其余位的含义在串行口的内容中介绍。一般情况,以上6个中断源的中断请求标志(IE0、IE1、TF0、TF1、T1和R1)是由中断机构硬件电路自动置位的,但也可以人为地通过指令(SETBBIT)对以上两个控制寄存器的中断标志位置位,即“软件代请中断”,这是单片机中断系统的一个特点。153中断允许控制寄存器中断允许控制寄存器IE16 当某一中断(事件)出现时,相应的中断请求标志位被置1(中断有效),但该中断请求能否被CPU识别,则由IE的相应位的值来决定,IE可对各IT中断源进行开放和关闭两级控制,IE的内容及位地址如表6-3所示。表6-3中各位的含义如下。(1)EA:中断允许/禁止位,它是中断请求的总开关。EA=0,屏蔽所有中断请求;EA=1,开放所有中断请求。(2 2)ESES串行口中断允许位。串行口中断允许位。ES=0ES=0,禁止串行口中断。,禁止串行口中断。ES=1ES=1,允许串行口中断。,允许串行口中断。(3 3)ET1ET1定时器定时器/计数器计数器T1T1的溢出中断允许位。的溢出中断允许位。ET1=0ET1=0,禁止,禁止T1T1溢出中断。溢出中断。ET1=1ET1=1,允许,允许T1T1溢出中断。溢出中断。(4 4)EX1EX1外部中断外部中断1 1中断允许位。中断允许位。EX1=0EX1=0,禁止外部中断,禁止外部中断1 1中断。中断。EX1=1EX1=1,允许外部中断,允许外部中断1 1中断中断(5)ET0定时器/计数器T0的溢出中断允许位。ET0=0,禁止T0溢出中断。ET0=1,允许T0溢出中断。17(6)EX0外部中断0中断允许位。EX0=0,禁止外部中断0中断。EX0=1,允许外部中断0中断。8051单片机复位后,将IE清零,单片机处于关中断状态。若要开放中断,必须使EA=1且响应中断的相应允许位也为1。开中断既可以使用置位指令,也可以使用字节操作指令。184中断优先级控制寄存器IP IP的内容及位地址如表6-4所示。表6-4中各位的含义如下。PS:串行口中断优先级控制位。PT1:定时/计数器T1中断优先级控制位。PX1:外部中断1中断优先级控制位。PT0:定时/计数器T0中断优先级控制位。PX0:外部中断0中断优先级控制位。1951系列单片机同级中断的优先级查询顺序如表6-5所示。各中断源在同一个优先级的条件下,外部中断0的中断优先级最高,串行口中断的中断优先级最低。2021图图6-3两级中断嵌套的过程两级中断嵌套的过程 在CPU执行中断服务的过程中,级别低的或同级的中断申请不能打断正在进行的服务,而级别高的中断申请则能终止正在进行的服务,使CPU转去更高级的中断服务,待服务处理完毕后,CPU再返回原中断服务程序继续执行,即实现两级中断嵌套。两级中断嵌套的过程如图6-3所示。151系列单片机的中断响应条件系列单片机的中断响应条件(1 1)若中断源有请求,并且单片机允许所有中断源申请中断,则中断允许)若中断源有请求,并且单片机允许所有中断源申请中断,则中断允许IEIE总中断开放(总中断开放(EA=1EA=1)。)。(2 2)若允许某个独立中断源的中断请求,则相应的中断控制位()若允许某个独立中断源的中断请求,则相应的中断控制位(EX0EX0、ET0ET0、EX1EX1、ET1ET1、ESES)置)置1 1。(3 3)正在执行的低级中断可以被高级中断请求中断,)正在执行的低级中断可以被高级中断请求中断,CPUCPU先执行高级中断,高级中断结束后再执行低先执行高级中断,高级中断结束后再执行低级中断,一个正在执行的高级中断是不能被低级中断而中断的。级中断,一个正在执行的高级中断是不能被低级中断而中断的。(4 4)若多个同级中断请求同时发出,则单片机按照一定的原则决定执行的顺序。)若多个同级中断请求同时发出,则单片机按照一定的原则决定执行的顺序。5151系列单片机对中系列单片机对中断的查询顺序是断的查询顺序是“外部中断外部中断00定时定时/计数器计数器T0T0外部中断外部中断11定时定时/计数器计数器T1T1串行口中断串行口中断”。(5 5)若程序正在执行读)若程序正在执行读/写写IEIE和和IPIP指令,则指令,则CPUCPU执行该指令结束后,需要再执行一条其他指令才可以执行该指令结束后,需要再执行一条其他指令才可以响应中断。响应中断。(6 6)若程序正在执行返回指令,则执行该指令后,需再执行一条其他指令才可以响应中断。)若程序正在执行返回指令,则执行该指令后,需再执行一条其他指令才可以响应中断。(7 7)任何正在执行的指令在未完成之前,是不会响应中断请求的。)任何正在执行的指
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 高等教育 > 大学课件


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号