单片微机原理与应用第2版 罗印升part_04

上传人:E**** 文档编号:89108505 上传时间:2019-05-18 格式:PPT 页数:57 大小:958KB
返回 下载 相关 举报
单片微机原理与应用第2版 罗印升part_04_第1页
第1页 / 共57页
单片微机原理与应用第2版 罗印升part_04_第2页
第2页 / 共57页
单片微机原理与应用第2版 罗印升part_04_第3页
第3页 / 共57页
单片微机原理与应用第2版 罗印升part_04_第4页
第4页 / 共57页
单片微机原理与应用第2版 罗印升part_04_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《单片微机原理与应用第2版 罗印升part_04》由会员分享,可在线阅读,更多相关《单片微机原理与应用第2版 罗印升part_04(57页珍藏版)》请在金锄头文库上搜索。

1、2019/5/18,1,“单片机原理与应用”课程,第 4 章 中断系统,2019/5/18,2,第4章:中断系统,4.1 中断系统概述,4.2 51系列单片机的中断系统,4.3 中断处理过程,4.4 中断系统应用,2019/5/18,3,第4章:中断系统,【基本知识点与要求】 (1)理解中断的概念和中断的功能。 (2)掌握51系列单片机的中断系统结构、中断响应、中断处理、中断系统的初始化和应用方法。,【重点与难点】 重点和难点是51系列单片机的中断系统结构、中断响应、中断处理、中断系统的初始化和应用方法。,中断系统是计算机系统实现人机交互、处理实时性任务的重要组成部分。本章首先介绍中断的概念、

2、特点和功能;其次介绍51系列单片机的中断系统结构、中断源与中断控制;然后接着对中断的处理过程进行详细的介绍;最后结合举例介绍51系列单片机的中断系统应用。,2019/5/18,4,4.1 中断系统概述,4.1.1 中断的概念,中断技术是计算机在实时处理和实时控制中不可缺少的一 个很重要的技术,中断系统是计算机中实现中断功能的各种软、 硬件的总称。计算机采用中断技术能够极大的提高工作效率和处 理问题的灵活性。,2019/5/18,5,4.1 中断系统概述,CPU正在执行程序时,计算机外部或内部发生某一事件,CPU暂时中止当前的工作,转到中断服务程序处理所发生的事件。处理完该事件后,再回到原来被中

3、止的地方,继续原来的工作,这个过程称为中断。CPU处理事件的过程,称为CPU的中断响应过程。,某人看书 电话铃响 暂停看书 书中作记号 电话谈话 谈话结束 继续看书,执行主程序 中断信号INTx=0 暂停执行主程序 当前PC值入栈 执行中断程序 返回主程序,中断过程 中断请求 中断响应 保护断点 中断服务 中断返回,2019/5/18,6,中断源提出的服务请求称为中断请求。,原来正在运行的程序称为主程序,主程序被断开的位置(地址)称为断点。,向CPU发出中断请求的来源,或引起中断的原因称为中断源。,4.1 中断系统概述,中断源可分为两大类:一类来自计算机内部,称之为内部中断源;另一类来自计算机

4、外部,称之为外部中断源。,一般微型计算机中断处理包括4个步骤:中断请求、中断响应、中断处理和中断返回。中断过程示意图,2019/5/18,7,中断系统是指能实现中断功能的硬件和软件。,1. 中断系统的功能,(1)进行中断优先级排队 当有几个中断源同时向CPU发出中断请求,或者CPU正在处理某中断源服务程序时,又有另一中断源申请中断,那么CPU既要能够区分每一个中断源,且要能够确定优先处理哪一个中断源,即中断的优先级。按中断源级别高低依次响应的过程称为优先级排队。 这个过程可以由硬件电路实现,也可以由软件查询来实现。,4.1 中断系统的功能及特点,(2)实现中断嵌套,2019/5/18,8,当C

5、PU响应了某一中断请求进行中断处理时,若有优先级更高的中断源发出请求,则CPU 会停止正在执行的中断服务程序,并保留此程序的断点,转去执行优先级更高的中断服务程序,等处理完这个高优先级的服务程序后,再返回继续执行被暂停的中断服务程序。这个过程称为中断嵌套。,4.1 中断系统的功能及特点,2019/5/18,9,(3)自动响应中断 当某一个中断源发出中断请求时,CPU将根据有关条件(是否允许中断、中断的优先级等)进行相应的判断,以决定是否响应该中断请求。若响应该中断请求,CPU在执行完当前指令后,再把断点处的PC值压入堆栈保存起来,这个过程称为保护断点,由硬件自动完成。在中断服务程序开始,由用户

6、把相关寄存器和标志位的状态也压入堆栈保存起来,这称为保护现场。随后开始执行中断服务程序。,(4)实现中断返回 执行中断服务程序到最后时,需要从堆栈中恢复相关寄存器和标志位的状态,这称为恢复现场。再执行RETI指令,恢复PC值,即恢复断点,继续执行主程序。,4.1 中断系统的功能及特点,2019/5/18,10,2. 中断的特点 (1)可以提高CPU的工作效率 (2)实现实时处理 (3)处理故障,4.1 中断系统的功能及特点,2019/5/18,11,4.2.1 中断系统结构与中断源,1. 51系列单片机的中断系统结构,51系列单片机的中断系统是8位单片机中功能较强的一种,包括中断源、中断允许寄

7、存器IE、中断优先级寄存器IP、中断矢量等。可以提供5个中断源(AT89S52有6个中断源),具有2个中断优先级,可实现2级中断服务程序嵌套。AT89S51单片机的中断系统结构示意图如图4-3所示。它有4个用于中断控制的寄存器IE、IP、TCON和SCON,用来控制中断的类型、中断的开关和各种中断的优先级别。,4.2 51系列单片机的中断系统,2019/5/18,12,4.2 51系列单片机的中断系统,2019/5/18,13,2. 51系列单片机的中断源,4.2 51系列单片机的中断系统,AT89S51单片机的5个中断源为:,(1)外部中断源0请求,通过P3.2引脚输入。,(2)外部中断源1

8、请求,通过P3.3引脚输入。 外部中断请求有二种信号触发方式,即电平触发方式和边沿触发方式,可通过设置有关控制位进行定义。 当设定为电平触发方式时,若CPU从或引脚上采样到有效的低电平,则中断标志位置1,并向CPU提出中断请求;当设定为边沿触发方式时,若CPU从或引脚上采样到有效的负跳变信号,则中断标志位置1,并向CPU提出中断请求。,(3)TF0定时器计数器T0溢出中断请求标志。,2019/5/18,14,4.2 51系列单片机的中断系统,(4)TF1定时器计数器T1溢出中断请求标志。 定时中断是为满足定时或计数的需要而设置的。当定时器/计数器发生溢出时,表明设定的定时时间到或计数值已满,这

9、时定时器计数器溢出中断请求标志置1,并向CPU申请中断。由于定时器/计数器在单片机芯片内部,所以定时中断属于内部中断。,(5)TIRI串行口中断请求。串行口接收中断标志RI,串行口发送中断标志TI。 串行口中断是为串行数据传送的需要而设置的。每当串行口发送或接收完毕一帧串行数据时,就产生一次中断请求。,2019/5/18,15,4.2.2 中断控制,AT89S51单片机中与其中断系统密切相关的特殊功能寄存器有4个:,(1)定时器控制寄存器TCON (2)串行口控制寄存器SCON (3)中断允许寄存器IE (4)中断优先级寄存器IP,4.2 51系列单片机的中断系统,其中,TCON和SCON有一

10、部分位用于中断控制。通过对4个特殊功能寄存器的各位进行置位或复位操作,可实现各种中断控制功能。,2019/5/18,16,定时器控制寄存器TCON的作用是控制定时器的启动和停止、保存T0和T1的溢出中断标志和外部中断的中断标志、触发方式。其各位的位地址和定义如下:,(1)IT0外部中断0的触发方式选择位。该位可由软件置“1”或清“0” (SETB IT0或CLR IT0)。,4.2 51系列单片机的中断系统,1定时器控制寄存器TCON,2019/5/18,17,IT0=1 为边沿触发方式,负跳变有效。在边沿触发方式中,CPU响应中断后硬件自动使IE0清0。要求外部输入的高电平或低电平的持续时间

11、必须大于12个时钟周期,才能保证检测到先高后低的负跳变。,4.2 51系列单片机的中断系统,(2)IE0外部中断请求0的中断请求标志位。,IE0=0,无中断请求。 IE0=1,有中断请求。当CPU响应该中断时,则程序转向中断服务程序。,IT0=0 为电平触发方式,低电平有效。在电平触发方式中,CPU响应中断后硬件自动使IE0清0,但是在中断返回前必须撤销引脚上的低电平,否则将再次引起中断,导致出错。,2019/5/18,18,(5)TF0T0溢出中断请求标志位。T0可以对内部时钟信号或从外部输入(P3.4)的脉冲进行计数。当计数器计数溢出时,即表明定时时间到或计数值已满,这时由硬件将TF0置“

12、1”,并向CPU发出中断请求,CPU响应TF0中断时,硬件自动将TF0清“0”,TF0也可由软件清“0”。,4.2 51系列单片机的中断系统,(6)TF1T1的溢出中断请求标志位,功能和TF0类似。,51系列单片机复位后TCON为0,初始无中断标志位。,(3)IT1外部中断1的请求方式选择位,其含义、设置与IT0类似。 (4)IE1外部中断请求1的中断请求标志位,其含义、设置与IE0类似。,2019/5/18,19,2. 串行口控制寄存器 SCON,4.2 51系列单片机的中断系统,SCON中低两位为串行接口的接收中断和发送中断标志RI和T1。其各位的位地址和定义如下:,RI串行口接收中断请求

13、标志位。 当串行口接收完一帧数据后,RI由硬件自动置1,向CPU申请中断。转向中断服务程序后,RI必须用软件清0。,2019/5/18,20,TI串行口发送中断请求标志位。 当发送完一帧串行数据后,TI由硬件自动置1,向CPU申请 中断。转向中断服务程序后,TI必须用软件清0。 串行口中断请求由TI和RI的逻辑或得到。即无论是发送中 断标志还是接收中断标志,都会产生串行口中断请求。,4.2 51系列单片机的中断系统,3. 中断允许控制寄存器IE,51系列单片机对中断源的开放或禁止是由中断允许寄存器 IE控制的。中断允许寄存器IE对中断的开放或禁止实现两级控制 所谓两级控制,就是除有一个总中断控

14、制位EA(IE.7)外,还 有5个中断源各自的中断允许控制位(见图4-2)。IE中位地址 和定义如下:,2019/5/18,21,4.2 51系列单片机的中断系统,IE中位的含义如下: EX0 外部中断0中断允许位。 EX0=1,允许外部中断0中断; EX0=0,禁止其中断。,ET0 定时器计数器T0的溢出中断允许位。 ET0=1,允许定时器计数器T0溢出时提出的中断请求; ET0=0,禁止其中断。,2019/5/18,22,4.2 51系列单片机的中断系统,EXl 外部中断1中断允许位。 EXl=1,允许外部中断1中断; EXl=0 ,禁止其中断。,ETl 定时器计数器T1的溢出中断允许位。

15、 ETl=1,允许定时器计数器T1溢出时提出中断请求; ETl=0,禁止其中断。,EA 中断允许总控制位。 EA=0时,CPU禁止所有的中断请求; EA=1时,CPU开放中断。此时每个中断源的中断是否允许,还取决于各中断源的中断允许控制位的状态。,ES 串行口中断允许位。 ES=1,允许串行口中断; ES=0 ,禁止其中断。,2019/5/18,23,【注意】 51系列单片机复位后寄存器IE被清0,所以单片机是处于禁止中断的状态。若要开放中断,必须使EA位为1且相应的中断允许位也为1。开、关中断既可使用位操作指令,也可使用字节操作指令实现。,4.2 51系列单片机的中断系统,【例4-1】若允许

16、片内2个定时器/计数器中断,禁止其它中断源的中断请求。编写设置IE的相应程序段。,解:(1)用字节操作指令来编写: MOV IE,#8AH 或者用: MOV 0A8H,#8AH ; A8H为IE寄存器字节地址,2019/5/18,24,(2) 用位操作指令来编写如下程序段: CLR ES ;禁止串行口中断 CLR EX1 ;禁止外部中断1中断 CLR EX0 ;禁止外部中断0中断 SETB ET0 ;允许定时器/计数器T0中断 SETB ET1 ;允许定时器/计数器T1中断 SETB EA ;CPU开中断,4.2 51系列单片机的中断系统,2019/5/18,25,4.2 51系列单片机的中断系统,PX0外部中断0的中断优先级控制位。 PX01,外部中断0为高中断优先级; PX00 ,外部中断0为低中断优先级。,PT0定时器计数器T0中断优先级

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

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