单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元

上传人:E**** 文档编号:89409670 上传时间:2019-05-24 格式:PPT 页数:97 大小:2.72MB
返回 下载 相关 举报
单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元_第1页
第1页 / 共97页
单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元_第2页
第2页 / 共97页
单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元_第3页
第3页 / 共97页
单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元_第4页
第4页 / 共97页
单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元_第5页
第5页 / 共97页
点击查看更多>>
资源描述

《单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元》由会员分享,可在线阅读,更多相关《单片机原理与应用(第二版) 第5章 MCS-51单片机的内部功能单元(97页珍藏版)》请在金锄头文库上搜索。

1、第5章 MCS-51单片机的内部功能单元,学习目标,学习重点,主要内容,主要内容,主要内容,5.1MCS-51单片机的中断系统,5.1.1中断的概念,1什么是中断 所谓中断是指中央处理器CPU正在处理某件事情的时候,外部发生了某一事件(如定时器定时的时间到),请求CPU迅速去处理,CPU暂时中断当前的工作,转去处理所发生的事件,处理完以后,再回到原来被中断的地方,继续原来的工作。这样的过程称为中断。实现这种功能的单元称为中断系统(中断机构)。中断过程如图5-1所示。,表面上看,程序中断类似于子程序调用过程,因此又称中断处理程序为中断服务子程序。但程序中断与子程序调用有着很大的区别:子程序调用是

2、由程序员事先安排好在程序运行到某一步时进行的,通过LCALL或ACALL调用指令来实现,而中断则往往是突发的、无法预知何时发生的事件,程序中无此调用命令,而是由内、外部设备向CPU发出中断请求,CPU响应实现的。,5.1MCS-51单片机的中断系统,5.1.1 中断的概念,图5-1 中断过程示意图,2为什么要用中断 中断技术在实时控制、分时操作、人机交互、多机系统等方面得到了广泛的应用,大大扩大了计算机的应用范围,提高了计算机的性能。例如,在CPU与外设交换信息时,若用查询方式,则CPU会浪费较多时间去等待外设,这就是快速CPU和慢速外设之间的矛盾,为了解决这个问题引入了中断的概念,引入中断后

3、有以下优点:,(1)同步工作 有了中断功能后,就可以使CPU和外设同步工作。例如,CPU启动外设工作后,就继续执行主程序,而外设把数据准备好后,发出中断请求,请求CPU中断原来主程序的运行,转去执行输入/输出操作(中断处理),中断程序执行完后,CPU恢复执行主程序,外设也继续工作,这样CPU就可指挥多个外设同时工作,大大提高了CPU的利用率,也提高了输入/输出速度。,5.1MCS-51单片机的中断系统,5.1.1 中断的概念,(2)实时处理 在实时控制中,现场采集到的各种数据可在任何一时刻发出中断请求,要求CPU处理,若中断是开放的,则CPU 即可马上对这些数据进行处理。 (3)分时处理 利用

4、中断功能,CPU可以同时为多个对象服务。只有服务对象向CPU发出中断请求,CPU才转而为之服务,这样就大大提高了CPU的效率。 (4)故障处理 计算机在运行过程中出现了事先预料不到的情况或故障时(如掉电、存储出错、溢出等),可以利用中断系统自行处理,而不必停机。 3中断源 引起中断的原因,或能发出中断请求的来源,称为中断源,通常的中断源有以下几种:,5.1MCS-51单片机的中断系统,5.1.1 中断的概念, 外部输入/输出设备,如A/D转换器、打印机等。 数据通信设备,如进行双机或多机通信。 定时时钟。 故障源,如掉电保护请求等。 为调试程序而设置的中断源。 每一个中断源可由程序控制为允许中

5、断或禁止中断。当CPU执行“关”中断指令(或系统复位)后,将屏蔽所有的中断请求,当CPU执行“开”中断指令以后才可能接受中断请求。 4中断系统的功能 (1)实现中断并返回 当某一个中断源发出中断请求时,CPU应决定是否响应这个中断请求(当CPU正在执行更重要的工作时,可暂时不响应中断),若响应这个中断请求,CPU必须在现行指令执行完后,保护现场和断点,然后转到需要处理的中断源,5.1MCS-51单片机的中断系统,5.1.1 中断的概念,的服务程序入口,执行中断服务程序。当中断处理完后再恢复现场和断点,使CPU返回去继续执行主程序。 (2)能实现优先排队 通常,在系统中会有多个中断源,有时会出现

6、两个以上的中断源同时提出中断请求的情况,这时CPU应能找到优先级别最高的中断源,响应它的中断请求,在优先级别最高的中断源处理完后,再去响应级别较低的中断源。 (3)高级中断源能中断低级的中断处理 当CPU响应某一中断源的请求,在进行中断处理时,若有优先级别更高的中断源发出中断请求,则CPU应能中断正在执行的中断服务程序,保留这个程序的断点和现场,响应高级中断,在高级中断处理完后,再继续执行被中断的中断服务程序。若当发出新的中断请求的中断源的优先级别与正在处理的中断源同级或更低时,CPU不响应这个中断请求,直到正处理的中断服务程序执行完后,才去处理新的中断请求。,5.1MCS-51单片机的中断系

7、统,5.1.2 MCS-51的中断系统,MCS-51单片机有个中断源(8052有个),其中个为外部请求 (P3.2)和 (P3.3),个片内定时/计数器T0 和T1的溢出中断请求TF0(TCON.5)和TF1(TCON.7),1个片内串行口发送或接收中断请求TI(SCON.1)或RI(SCON.0),这些中源分别由特殊功能寄存器TCON和SCON的相应位锁存。4个用于中断控制的特殊功能寄存器IE、IP、TCON(用位)和SCON(用位),可提供两个中断优先级,实现二级中断嵌套。个中断源对应个固定的中断入口地址(中断向量地址)。,MCS-51的中断系统从面向用户的角度来看,有以下4个特殊功能寄存

8、器: 定时器控制寄存器TCON; 串行口控制寄存器SCON; 中断允许寄存器IE; 中断优先级寄存器IP。 其中TCON和SCON只有一部分位用于中断控制。通过对以上各特殊功能寄存器的有关位进行置位(置1)或复位(清0)等操作,可实现各种中断控制功能。,5.1.3 中断控制,5.1MCS-51单片机的中断系统,1中断源请求标志 (1)定时/计数器控制寄存器TCON中的中断标志位 TCON为定时/计数器T0、T1 的控制寄存器,同时也锁存了T0、T1 的溢出中断源和外部中断请求源等,字节地址为88H。与中断有关的位如下:,5.1.3 中断控制,5.1MCS-51单片机的中断系统,5.1.3 中断

9、控制,1中断源请求标志 (1)各控制位的含义如下: IE0:外部中断标志。 若IE0=1,则表示外部中断( )向CPU 提出了中断请求。 IT0:外部中断触发方式控制位。当IT0=0,外部中断( )控制为电平触发方式。在这种方式下,CPU在每个机器周期的S5P2期间采样 (P3.2)的输入电平,若采到低电平,则认为有中断请求,随即由硬件置IE0=1。若采到高电平,则认为无中断请求或中断请求已撤销,随即对IE0 清。在电平触发方式中,CPU 响应中断后不能自动使IE0 清,也不能由软件使IE0 清,故在中断返回前必须请除 引脚上的低电平,否则会再次响应中断造成出错。 时/计数器控制寄存器TCON

10、中的中断标志位 TCON为定时/计数器T0、T1 的控制寄存器,同时也锁存了T0、T1 的溢出中断源和外部中断请求源等,字节地址为88H。与中断有关的位如下:,5.1MCS-51单片机的中断系统,5.1.3 中断控制,当IT0=1 ,外部中断( )控制为边沿触发方式,CPU 在每个机器周期的S5P2 期间采样 的输入电平,相继两次采样,一个周期采样为高电平,接着的下一个周期采样为低电平,则由硬件置IE0=1,表示外部中断( )正在向CPU 请求中断,直到该中断被CPU 响应时,IE0 由硬件自动清0,在边沿触发方式中,为了保证CPU 在两个机器周期内检测到先高后低的负跳变,输入高低电平的持续时

11、间起码要保持1个机器周期。 IE1:外部中断1标志。功能与IE0类似。 IT1:外部中断1触发方式控制位。功能与IT0 类似。 TF0:定时/计数器T0溢出中断标志。在启动定时/计数器后,T0 从初值开始加1计数,当计满溢出时,由硬件置TF0=1,向CPU请求中断,CPU响应TF0中断后,由硬件对TF0清,TF0也可由软件(指令)清。,5.1MCS-51单片机的中断系统,5.1.3 中断控制,TF1:T1溢出中断标志。功能与TF0类似。 当MCS-51系统复位后,TCON各位均清。 (2)串行口控制寄存器SCON中的中断标志位 SCON为串行口控制寄存器,字节地址为98H,SCON的低位TI和

12、RI锁存串行口的接收中断和发送中断标志。 其格式如下:,TI:串行口发送中断标志。CPU将位数据写入发送缓冲器SBUF时,就启动发送,每发送完一帧串行数据后,由硬件置TI=1,向CPU提出中断请求。但CPU响应中断时不会对TI清,必须由软件(指令)清。,5.1MCS-51单片机的中断系统,5.1.3 中断控制,RI:串行口接收中断标志。 若串行口接收器允许接收,每接收完一个串行帧,硬件置RI=1。RI=1表示串行口接收器正在向CPU请求中断。同样CPU响应中断时不会对RI清,必须由软件(指令)清。 2中断允许控制 对于每个中断源,其中断的开放与禁止由中断允许寄存器IE中的某一位控制,IE的字节

13、地址为A8H。其格式如下:,EA:CPU的中断开放标志。EA=1,CPU开放中断;EA=0,CPU禁止(屏蔽)所有的中断请求。,5.1MCS-51单片机的中断系统,5.1.3 中断控制,ES:串行口的中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。 ET1:定时/计数器T1的溢出中断允许位。ET1=1,允许T1中断;ET1=0,禁止T1中断。 EX1:外部中断1( )的中断允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。 ET0:定时/计数器T0的溢出中断允许位。ET0=1,允许T0中断,ET0=0,禁止T0中断。 EX0:外部中断( )的中断允许位。E

14、X0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。 MCS-51单片机系统复位后,IE中各位均被清0,即禁止所有中断。 3中断优先级控制 MCS-51 单片机有两个中断优先级,对于每一个中断源的中断请求可编程为高优先级中断或低优先级中断,可实现二级中断嵌套。一个正在执行的低优先级中断能被高优先级中断请求所中断,但不能被另一个同优先级的中断请求所中断,一直执行到结束,遇到中断返回指令RETI,返回主程序后再执行一条指令才能响应新的中断请求。,5.1MCS-51单片机的中断系统,5.1.3 中断控制,MCS-51 单片机内有一个优先级寄存器IP,字节地址为B8H ,只要用指令改变其内容

15、,就可对各中断源的中断优先级别进行设置。其格式如下:,PS:串行口中断优先级控制位。PS=1,串行口中断设置为高优先级中断;PS=0,设置为低优先级中断。 PT1:T1中断优先级控制位。PT1=1,定时/计数器T1设置为高优先级中断;PT1=0,设置为低优先级中断。 PX1:外部中断中断优先级控制位。PX1=1外部中断设置为高优先级中断;PX1=0设置为低优先级中断。 PT0:T0中断优先级控制位。PT0=1,定时/计数器T0 设置为高优先级中断;PT0=0,设置为低优先级中断。,5.1MCS-51单片机的中断系统,5.1.3 中断控制,PX0:外部中断中断优先级控制位。PX0=1外部中断设置

16、为高优先级中断;PX0=0设置为低优先级中断。 MCS-51单片机系统复位后,IP各位均为0,各中断源均设定为低优先级中断。 MCS-51单片机中各中断源的优先顺序以及对应的入口地址如表5-1所示。 表5-1 中断优先顺序及对应入口地址表,5.1MCS-51单片机的中断系统,5.1.4中断的响应条件及响应过程,1响应条件 单片机响应中断的条件是:中断源有请求,CPU允许所有中断源请求中断(EA1),中断允许寄存器IE相应位置1。这样,在每个机器周期内,单片机对所有中断源都进行顺序检测,并可在任一个周期的S6期间,找到所有有效的中断请求,并对其优先级排队,只要满足下列条件: 无同级或高级中断正在服务; 现行指令执行到最后一个机器周期且已结束; 若现行指令为RETI或需访问特殊寄存器IE或IP的指令时,执行完成该指令且紧随其后的另一条指令也已经执行完毕。 单片机便在紧接着的下一个机器周期S1期间响应中断,否则将丢弃中断查询的结果。,5.1MCS-51单片机的中断

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

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

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