单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章

上传人:w****i 文档编号:102579767 上传时间:2019-10-03 格式:PPT 页数:31 大小:1.80MB
返回 下载 相关 举报
单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章_第1页
第1页 / 共31页
单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章_第2页
第2页 / 共31页
单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章_第3页
第3页 / 共31页
单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章_第4页
第4页 / 共31页
单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章》由会员分享,可在线阅读,更多相关《单片机原理与应用第2版) 教学课件 作者 张旭涛 第四章(31页珍藏版)》请在金锄头文库上搜索。

1、中断控制、定时/计数器,本章知识点:,1、中断的基本概念; 2、MCS51单片机中断系统的结构、基本 应用及其对外部中断源的扩展; 3、MCS51单片机片内定时/计数器的作用、 结构,控制寄存器TMOD、TCON的功能; 4、定时/计数器的4种工作方式及其应用举例。,中断概述,在单片机中,实现输入输出操作有多种方式,常用的有3种,即无条件传送方式、查询方式和中断方式。其中,中断方式使得CPU与外部设备可以并行工作,大大提高了CPU的运行效率,所以被广泛应用。 一、中断的定义和作用 1、什么是中断 单片机在执行某一程序的过程中,由于某种原因,如外部设备请求输入、输出操作等,CPU暂时中止当前正在

2、执行的程序,而转去执行相应的处理程序,待处理结束后,再回到原来被中止的程序继续执行的过程,称为“中断”。 中断又可以定义为CPU自动执行中断服务程序并返回原程序执行的过程。中断类似于程序设计中的调用子程序,但它们还是有本质区别的。调用子程序是程序员事先安排好的,而中断的产生是由一些特殊事件触发的,会不会产生中断,什么时候产生中断完全是随机的。,可以提高CPU的工作效率。大多数外部设备的速度比CPU慢,通过中断方式实现CPU与外部设备之间的协调,即CPU执行主程序,而外设也可以执行它自己的工作,这称为并行工作。 具有实时处理能力。所谓实时处理就是要对外部设备的操作请求即刻做出处理。 具有故障处理

3、能力。计算机在运行过程中,可能会出现事先预料不到的故障,可利用中断系统事先安排好的故障中断服务程序由计算机自行处理。 具有人机联系能力。操作人员利用键盘与单片微型计算机交互联系是随机的,中断技术很好地解决了人机联系问题。,2、中断的作用,二、中断源,能够中断当前程序的设备或事件称为中断源。 1、外部设备中断源:外部设备主要为单片机输入和输出数据,故它是最原始和最广泛的中断源,在用作中断源进行输入或输出数据操作时,外部设备自动产生一个“中断请求”信号送到CPU的中断请求输入线或,以供CPU检测和响应。 2、控制对象中断源:微型计算机在实时控制中,被控对象常常作为计算机的中断源,通过产生中断请求信

4、号,使CPU及时采集系统的控制参量、超限参数以及要求发送和接收的数据等。 3、故障中断源:故障源是产生故障信息的源泉,把它作为中断源是要CPU以中断方式对已发生故障进行及时分析处理。 4、定时脉冲中断源:定时脉冲中断源又称为定时/计数器中断源,实际上是一种定时脉冲电路或定时器。,单片机处理各类中断的综合服务系统称为中断系统。不同 单片机中断系统的组成及其复 杂程度差别很大,在此仅概念 性地作一说明。 1、中断请求 中断源向计算机中断系统发 出要求中断的信号称中断请求 2、中断优先级 一台机器往往带有多个中断 源,而每个中断源在实际工作 中的重要程度都不同,在中断 系统中采用了中断优先级排队 和

5、中断屏蔽的措施。,三、中断系统的组成,3、中断源的识别,中断处理实际上就是执行一段中断源所需要的处理 程序,这称为中断服务程序 (1) 软件法:当CPU响应某中断源提出的中断请求时, CPU会自动进入一个查询程序。该程序将各中断源 的状态进行检测(即作一次输入操作),然后逐位检 查哪个中断源的中断请求信号有效。如无效则跳过 ,如有效则由查询程序中的转移指令进入相应中断 服务程序 (2) 硬件法: 也称矢量中断法。当某中断源提出中断 请求时,可由硬件电路向CPU提供一个固定不变的对 应该中断源的中断服务程序入口地址。这一入口地 址又称为中断矢量,四、中断的响应过程,实现一次完整的中断,可分为以下

6、5个步骤: 1、中断请求:一次中断是从某中断源提出有效的中断请求信号开始的。 2、中断判优:CPU检测到中断请求信号后,要经中断优先级判别系统进行判定,如没有比它更高级的中断请求,该中断源的中断请求信号才可能被CPU响应,否则不予处理。 3、中断响应:所谓中断响应是指从CPU接到中断请求信号起到进入相应中断服务程序为止的整个过程。 (1) 中断是开放的:当CPU每次接受一个中断请求后,都会自动用硬件关闭中断允许触发器,以防中断断点发生混乱。 (2) 必须在当前指令执行完毕才能响应中断。 4、中断处理: 所谓中断处理就是指CPU执行某中断源的中断服务程序。 (1) 保护进入中断服务前的断点的现场

7、信息。 (2) 根据中断源的需要进行输入/输出操作或其他处理。 (3) 恢复现场信息,为返回主程序作好准备。 (4) 为下一次响应中断而安排一条开中断指令。 5、中断返回:所谓中断返回就是将堆栈中所保存的断点地址送回到PC 。,MCS-5l单片机的中断系统,一、 MCS51中断系统的结构 中断系统是MCS51单片机的重要组成部分,其中断系统结构主要由片内特殊功能寄存器组成:中断源寄存器TCON及SCON的相关位、中断允许控制寄存器IE、中断优先级控制寄存器IP及两个不可寻址的优先级状态触发器组成。,二、 MCS51的中断源和中断请求标志,1、中断源 MCS51系列单片机8031及8051提供了

8、5 个中断源,即(P3.2、P3.3引脚输入)2个外部中断源,片内定时/计数器TO、T1的2个溢出中断源TFO、TF1,还有1个为片内串行口发送与接收中断源TI或RI 2、中断请求标志 中断请求标志的建立就是对定时器控制寄存器TCON及串行口控制寄存器SCON相应位进行置位的过程 5个中断源的请求标志地址如下: TCON(字节地址88H) SCON(字节地址98H),三、MCS51对允许中断请求和中断优先级的控制,1、对中断允许的控制 中断允许就是对中断源的开放,MCS51没有专门 的开中断和关中断指令,中断的开放和关闭是通过中 断允许寄存器IE进行两级控制的。所谓两级是指有一 个中断允许总控

9、位EA,还有一个配合各中断源的中断 允许控制位;所谓控制是指对IE的EA位和对应中断源 的中断允许控制位进行读写操作,通过“置位”和“ 复位”来实现对中断请求的控制。 提出中断请求并建立请求标志后,能否被CPU响应,还要 看相应的中断源是否开放。如果软件设置其开放,则CPU 响应,如果设置为禁止,则CPU不会响应。,2、对中断优先级的控制,MCS51有两种中断优先级来设定5个中断源的优先级别, 即软件设置和硬件设置,软件设定的优先级高于硬件。 软件设置是根据需要用指令程序将每个中断源设置为高级中断或低级中断,高级中断的优先级高于低级中断,最多能实现两级嵌套。 这个寄存器就是中断源优先级控制寄存

10、器IP,它的地址如下:IP(字节地址088H)。 将MCS51的中断优先级作如下总结: (1) 如果多个中断同时提出中断请求,先按软件级别(高级或低级),后按自然优先级的高低顺序予以响应。 (2)同级或低级的中断请求不能嵌套。 (3)优先级的顺序(指自然优先级)不能改变,但用户可以通过改变软件优先级的方法改变中断响应的顺序。,四、MCS51对中断的响应过程及中断系统的初始化,1、MCS51对中断响应的过程 通常也应满足如下条件: (1) 若CPU处在非响应中断状态且CPU的总中断允许及相应某中断源的中断允许是开放的,则MCS51在执行完当前指令后就会自动响应该中断源的中断请求。 (2) 若CP

11、U正处在响应某一中断请求状态时,又来了新的优先级更高的中断请求,则MCS51便会立即响应而实现中断嵌套。 (3) 若CPU正处在执行RETI或任何访问IE/IP指令。 在满足上述3个条件之一时,MCS51均可响应中断请求,则 MCS51必须等待执行完RETI或任何访问IE/IP指令后的下一条指令后才响应该中断请求。,在响应中断的3个机器周期里,MCS51必须自动做3件事: 把中断点的地址(断点地址),也就是当前程序计数器PC中的内容压入堆栈,以便执行到中断服务程序中的RETI指令时按此地址返回原程序执行。 关闭中断,以防在响应中断期间受其他中断的干扰。 根据中断源入口地址转入相应中断服务程序执

12、行(即自动执行一条长转移指令)。 2、MCS51中断系统的初始化 MCS51中断系统功能,是可以通过上述特殊功能寄存器进 行统一管理的,中断系统初始化是指用户对这些特殊功能 寄存器中的各控制位进行赋值。中断系统初始化步骤如下: (1) 开放相应中断源的中断及总中断。 (2) 设定所用中断源的中断优先级。 (3) 若为外部中断,则应规定是电平触发方式还是边沿 触发方式。,例 写出为电平触发方式的中断系统初始化程序 解 方法一: 采用位操作指令 ORG 1000H SETB EA ;开CPU总中断 SETB EX1 ;开中断 SETB PX1 ;令为高级中断 CLR IT1 ;令为电平触发 方法二

13、: 采用字节型指令 ORG 1000H M0V IE,#84H ;开中断 ORL IP,#04H ;令为高级中断 ANL TCON,#0FBH ;令为电平触发,一、 MCS51对外部中断源的应用 下图为单片机控制的数据采集系统示意图。将P1口设置为数据输入口 ,外围设备每准备好一个数据时,发出一个选通信号(正脉冲),使D触发器Q端置1,经非门向送入一个低电平中断请求信号,采用电平触发方式,外部中断请求标志IEl在CPU响应中断后不能由硬件自动清除。因此,在响应中断后,要设法撤除的低电平。系统中撤除的方法是将P2.6线与D触发器复位端相连,因此只要在中断服务程序中由P2.6输出一个上升沿信号,就

14、能使D触发器复位,输入无效电平,从而清除IEl标志。,MCS51对外部中断源的应用及扩展,MCS51对外部中断源的扩展,MCS51共有和两个外部中断源,为使它和更多外部设备联机工作,其中断源个数必须加以扩展。它们是借用定时器溢出中断扩展外部中断源、采用查询法扩展外部中断源和采用8259扩展外部中断源。现对前二种扩展方法的工作原理分述如下: 1、借用定时器溢出中断扩展外部中断源 MCS51内部定时器是16位的,定时器从全“1”变为全“0”时会向CPU发出溢出中断请求,可以把MCS51内部不用的定时器借给外部中断源使用,以达到扩展一个(或二个)外部中断源的目的。借用定时器溢出中断作为外部中断的方法

15、如下: (1)使被借用定时器工作在方式2 。 (2)使被借用定时器装载初值FFFFH,即高8位和低8位均为FFH,以达到每计数一次产生一次溢出中断的目的。 (3)把被借用定时器的计数输入端作为被扩展外部中断源的中断请求输入线。 (4)在被借用定时器中断入口地址000BH(或001BH)处存放一条三字节长转移指令。,用定时器中断来扩展外部中断源,除了 (或)引脚线应作为被扩展外部中断请求输入线外还需要在主程序开头对被借用定时器进行初始化。 例 写出定时器中断源用作外部中断源的初始化程序。 解:定时器方式字06H的选取参见本章第四节中的定时器方式寄存器TMOD各位定义,相应初始化程序为: MOV

16、TMOD,#06H ;定时器方式字送TMOD MOV TL0 ,#0FFH ;送低8位定时器始值 MOV TH0 ,#0FFH ;送高8位定时器始值 SETB EA ;开所有中断 SETB ET0 ;允许定时器中断 SETB TR0 ;启动定时器工作 END 借用定时器来扩展外部中断源实际上相当于使MCS51的线变成了一个边沿触发型外部中断请求输入线,而少了一个定时器溢出中断源。此时,线上外部中断的入口地址应为000BH。,2. 采用查询法扩展外部中断源,右图是采用查询法扩展外 部中断源的一种硬件设计方案其中EX0的优先级别最高,而EX1,EX2,EX3,EX4通过或非门共用一个中断请求通道,只要这4个中断源EX1EX4当中有一个以上请求信号(高电平)就会输出一个跳变脉冲作为的中断请求信号, 向CPU请求中断,ORG 0013H ;中断入口地址 LJMP REINT1 ;实际入口地址 REINT1: P

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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