资源预览内容
第1页 / 共44页
第2页 / 共44页
第3页 / 共44页
第4页 / 共44页
第5页 / 共44页
第6页 / 共44页
第7页 / 共44页
第8页 / 共44页
第9页 / 共44页
第10页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第5章章中断系统和定时器中断系统和定时器/计数器计数器单片型计算机原理及工程应用陕西科技大学吉涛第第5章章中断系统和定时器中断系统和定时器/计数器计数器第五章中断系统和定时器/计数器 第第5章章中断系统和定时器中断系统和定时器/计数器计数器第五章 中断系统和定时器/计数器 内容提要:了解基本输入/输出传送方式;了解51单片机中断系统组成及功能;(重点)了解51单片机的定时器/计数器的组成及功能;(重点)掌握中断程序设计方法,掌握定时器/计数器编程方法。(重点)学习难点:51单片机中断系统的响应过程;51单片机的定时器/计数器的工作方式;定时器/计数器混合应用。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.1输入/输出数据传送方式 CPU和其他外设之间数据传送的方式通常有四种:无条件传送、查询传送、中断传送和DMA(直接存储器存取方式)。1.无条件传送方式,又称为同步传送、直接传送方式,数据随时可以进行传送操作。例: 驱动指示灯、继电器、启动电机等。 适用:随时为数据传送做好准备的外部设备,包括: 外设速度非常快 变化非常慢。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.1输入/输出数据传送方式 2.查询传送方式又称为异步传送方式,数据随时可以进行传送操作。优点:电路简单、软件查询缺点:存在等待,CPU效率降低电路中:电路中:1)输出:输出: M放水放水 P1.0=1时时 M关关P1.0=0时,时,2)输入:输入:水位水位B, P1.1=0,P1.2=0 A水位水位B, P1.1=1,P1.2=0 CLR P1.0 SETB P1.1 SETB P1.2L1: JNB P1.2, L1 SETB P1.0L2: JB P1.1, L2 CLR P1.0 SJMP L1例:水池水位自动控制装置例:水池水位自动控制装置要求:水位要求:水位A BB停放停放第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.1输入/输出数据传送方式 3.中断传送方式。 CPU不不主主动动查查询询外外设设,只只执执行行自自己己的的程程序序,当当外外设设准准备备好好需需要要传传送送数数据据时时,提提出出申申请请,若若CPU准准于于请请求求,放放下下正正在在执执行行的的程序,去传送外设的数据。程序,去传送外设的数据。中断方式可提高中断方式可提高CPU的效率的效率第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 中断的概念:计算机暂停正在执行的程序,去执行中断服务程序,服务完成后回到原程序断开出继续执行。 查询查询中断中断第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 5151系统中断过程示意图系统中断过程示意图为什么要中断呢?当CPU与外设交换信息时,由于外设的速度比较慢,若用查询的方式,则CPU就要浪费很多时间去等待外设。这样就存在一个快速的快速的CPU与慢速的外设之间的矛盾。与慢速的外设之间的矛盾。为了解决这个问题,就发展了中断的概念。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 中断的优点:CPU分时操作(与多个外设并行工作):解决高速CPU与低速外设的深度矛盾,提高工作效率;实现实时处理:及时处理系统随机事件;故障处理:自行处理,而不必停机或报告工作人员。中断的响应过程:中断源提出申请 CPU决定是否响应 若响应转去中断处理 完成后返回原中断处。CPU响应中断的条件:有中断请求中断请求没有被屏蔽中断是开放的或者是允许的在现行指令结束后才响应中断第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 51系统的中断结构 :1.MCS-51中断系统总体结构MCS-51允许5个中断请求源,提供二个中断优先级,可实现二级中断服务程序嵌套。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 51系统的中断结构 :2.MCS-51的中断请求源和中断请求标志MCS-51单片机的中断系统可以提供5个中断申请源,它们的控制与实现由片内4个特殊功能寄存器SFR来完成。 中断源寄存器:TCON(88H),SCON(98H) 中断允许控制寄存器IE(A8H) 中断优先级控制寄存器IP(B8H) MCS-51的中断源:外部中断0:来自P3.2引脚上的外部中断请求;外部中断1:来自P3.3引脚上的外部中断请求;T0:片内定时/计数器0溢出(TF0)中断请求;T1:片内定时/计数器1溢出(TF1)中断请求;串行接口:片内串行接口完成一帧数据的发送或接收后,产生中断请求TI或RI。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 和中断有关的特殊功能寄存器1) 定时定时/计数器控制寄存器计数器控制寄存器 TCON(Timer Control,88H)它锁存2个定时/计数器的溢出中断标志及外部中断( )和( )的中断标志,与中断有关的各位定义如下:位D7D6D5D4D3D2D1D0字节地址TCONTF1TR1TF0TR0IE1IT1IE0IT088H位地址8FH8EH8DH8CH8BH8AH89H88H(1)IT0、IT1 (interrupt trigger mode)外部中断请求触发方式ITi=0 为低电平触发方式;ITi=1 为边沿触发方式;ITi=0 0ITi=1INT0INT1第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 和中断有关的特殊功能寄存器1) 定时定时/计数器控制寄存器计数器控制寄存器 TCON(Timer Control,88H)位D7D6D5D4D3D2D1D0字节地址TCONTF1TR1TF0TR0IE1IT1IE0IT088H位地址8FH8EH8DH8CH8BH8AH89H88H(2)IE0、IE1(external interrupt flag)外部中断标志,当有外部中断请求时,置“1”该位当ITi=0 时,若INTi=0,则置“1”IEi,否则清“0” IEi;当ITi=1 时,若INTi= 置“1”Iei; IEi=1表示外部正在向CPU申请中断,CPU响应中断后自动清IEi(3) TF0、TF1(Timer overflow interrupt flag)定时器溢出中断标志 当定时器/计数器最高位进位时,置“1”TFi表示正在向CPU申请中断,CPU响应中断后,自动清“0” TFi。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 和中断有关的特殊功能寄存器2) 串行接口控制寄存器串行接口控制寄存器SCON(Series Control,98H)串行接口控制寄存器,与中断有关的是它的低位TI和RI。定义如下:位D7D6D5D4D3D2D1D0字节地址SCONSM0SM1SM2RENTB8RB8TIRI98H位地址9FH9EH9DH9CH9BH9AH99H98HTI:串行发送中断,由硬件置位,用户复位;:串行发送中断,由硬件置位,用户复位;RI:串行接收中断,由硬件置位,用户复位;:串行接收中断,由硬件置位,用户复位;第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 和中断有关的特殊功能寄存器3) 中断允许寄存器中断允许寄存器IE(Interrupt Enable,0A8H )中断允许寄存器:控制中断是开放还是屏蔽的。定义如下:位D7D6D5D4D3D2D1D0字节地址IEEAESET1EX1ET0EX0A8H位地址AFHACHABHAAHA9HA8H(1)EA(Enable All)总中断允许标志(2)ES(Enable Series)串行口允许标志(3)ET0、ET1(Enable Timer)定时器/计数器溢出中断标志(4)EX0、EX1(Enable eXternal)外部中断允许标志 上述中:“1”表示允许中断,“0”表示屏蔽中断。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统 和中断有关的特殊功能寄存器4) 中断优先级寄存器中断优先级寄存器 IP(Interrupt priority, 0B8H )中断优先寄存器:控制两个中断优先级,可实现二级中断服务嵌套。定义如下:位D7D6D5D4D3D2D1D0字节地址IPPSPT1PX1PT0PX0B8H位地址BCHBBHBAHB9HB8H(1)PS:串行口中断优先级控制位(2)PT0、PT1:定时器/计数器中断优先级控制位(3)PX0、PX1:外部中断优先级控制位 上述中:“1”表示高优先级,“0”表示低优先级。第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统中断优先级控制原则:CPU同时接收到几个中断时,则由单片机内部硬件查询,按自然响应优先级顺序确定执行哪一个中断;中断过程不能被新的同级或低优先级的中断请求所中断;低优先级中断服务,能被高优先级中断请求所中断。中断源中断源中断标志中断标志中断服务程序入口中断服务程序入口优先级顺序优先级顺序外部中断外部中断IE00003H高高定定时时/计计数器数器0(T0)TF0000BH外部中断外部中断IE10013H定定时时/计计数器数器1(T1)TF1001BH串行口串行口RI或或TI0023H低低各中断源响应优先级及中断服务程序入口表第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统1.中断响应条件 每个周期S5P2 对中断源进行采样在下一个周期按优先级顺序依次查询如果某个中断标志在上一个周期S5P2已被置“1” CPU执行硬件LCALL转向相应中断的特定单元,进入中断服务程序,但是如果遇上下列条件之一,硬件将受阻:(1)正在执行同级或高级中断服务程序。 (2)当前的查询周期不是执行指令的最后一个机器周期。 (3)正在执行RETI或任何仿问IE或IP的指令。 中断服务程序入口:中断服务程序入口:IE0 0003H000AHIT0000BH0012HIE10013H001AHIT1001BH0022HIS0023H002AH2.中断响应过程 CPU响应中断时先置“1”相应的优先级触发器,然后执行硬件LCALL(压栈与转移),同时清“0”中断请求标志(TI、RI除外)条件之一,硬件将受阻:51系统的中断处理过程:分为4个阶段:中断请求中断响应中断服务中断返回第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统3.执行中断服务程序(1) 在主程序中事先进行中断初始化, (2) 在中断服务程序入口地址单元放一条长转移指令LJMP,这样中断服务程序能灵活地安排在64KB程序存储器的任何 地方。(3) 在中断服务程序中,首先用软件保护现场,在中断服务之后、中断返回前恢复现场,以防止中断返回后,丢失原寄存器的内容。4.中断返回在中断服务程序的最后,须放一条指令RETI,(1) 将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序;(2) 将相应中断优先级状态触发器清“0”,通知中断系统,中断服务程序已执行完毕。51系统的中断处理过程:分为4个阶段:中断请求中断响应中断服务中断返回第第5章章中断系统和定时器中断系统和定时器/计数器计数器5.251单片机中断系统51系统的中断处理过程:中断请求的撤出CPU响应中断请求后即进入中断服务程序,在中断返回前,应撤除该中断请求,否则会引起另一次中断。 1、定时器中断请求的撤除、定时器中断请求的撤除 对于定时器0或定时器1溢出中断,CPU在响应中断后即由硬件自动清除其中断标志位TF0或TF1,无需采取其它措施。 2、串行口中断的撤除、串行口中断的撤除 对于串行口中断,在CPU响应中断后,硬件不能清除中断请求标志TI和RI,必须在中断服务程序中由软件来清除相应的标志。 3、外部中断的撤除、外部中断的撤除 1)对于边沿触发的外部中断),C
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号