单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器

上传人:E**** 文档编号:89499887 上传时间:2019-05-25 格式:PPT 页数:40 大小:894.50KB
返回 下载 相关 举报
单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器_第1页
第1页 / 共40页
单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器_第2页
第2页 / 共40页
单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器_第3页
第3页 / 共40页
单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器_第4页
第4页 / 共40页
单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器》由会员分享,可在线阅读,更多相关《单片机原理及应用 教学课件 ppt 作者 张国锋 主编 第5章 中断与定时计数器(40页珍藏版)》请在金锄头文库上搜索。

1、本章总体要求:,掌握中断的概念、MCS-51单片机的中断源,1,掌握特殊功能寄存器TCON、SCON、IE、IP 和TMOD的设置方法,2,了解定时器/计数器的结构、工作方式及应用,3,第5章 中断与定时计数器,本章重点:,中断响应的条件和中断优先级的应用,1,MCS-51单片机中断源,2,定时计数器的工作原理,3,定时计数器的初始化,4,本章难点:,中断响应的条件和中断优先级的应用,1,定时计数器的初始化,2,5.1.1中断系统的概念 1. CPU中止正在运行的程序,转向为外部设备服务的过程称为中断。当完成中断后,CPU再回到原来的“断点”继续原来的程序。,5.1中断系统,主程序,断点,中断

2、响应,中断返回,中断服务程序,2.中断源就是能产生中断的外部和内部事件。 MCS-51单片机有5个中断源: (1)外部中断0( ) (2)外部中断1( ) (3)定时器/计数器T0的溢出中断源TF0 (4)定时器/计数器T1的溢出中断源TF1 (5) 串行口中断RI/TI。,INT0,INT1,3.中断向量为中断服务程序的入口地址。,中断向量就是程序存储器的地址,而CPU是从00H开始执行。 在“ORG 0”之后即执行“JMP START”指令,而START标记是在所有中断向量之后,可避开这些中断向量: ORG 0 ;程序从0地址开始 LJMP START ;跳至START ORG 03H ;

3、外部中断0 LJMP XXX1 ;执行XXX1中断子程序 ORG 0BH ;定时器T0中断 RETI ;没有用定时器T0中断,也可在此放一条 RETI,万一 “不小心”产生了中断,也不会 有太大的后果。 ORG 13H ;外部中断1 LJMP XXX2 ;执行XXX2中断子程序 : START: :,4.中断优先级 当有多个中断源同时请求中断时,CPU响应这几个中断源中优先级最高的;当CPU正在响应某一中断请求时又有另一中断源发出中断申请时,如果新来的中断源优先级高于现执行的中断,则CPU响应中断,否则CPU不响应中断,5.中断的其他概念 中断技术:对中断全过程的分析、研究及实现的方法。 中断

4、请求:中断源中断信号有效时产生中断请求。 中断标志:伴随中断请求在SFR中登录的标记,如IE0、 IF0、TF1等。 中断允许:允许某中断源中断响应的操作,也称开中断。 中断服务程序:指中断响应后,中断源要求的处理操作程序。 中断屏蔽(禁止):屏蔽CPU中断(即禁止某些中断),中断系统中可用程序设置中断允许和中断屏蔽。 中断返回:中断返回是中断服务程序中的最后一条指令RETI,执行该条指令后,程序返回原中断断点处的下一条指令处。,5.1.2 MCS-51中断系统 1.中断系统的结构,2.MCS-51中断的控制 (1)定时器/计数器控制寄存器TCON 字节地址为88H,初始值为00H,可以进行位

5、寻址。,1)IT0:外部中断的触发方式控制位。 2)IE0:外部中断的中断请求标志位。 3)IT1:外部中断的触发方式控制位。其作用与IT0类同。 4)IE1:外部中断的中断请求标志位。其作用与IE0类同。 5)TF0:定时器/计数器T0的中断请求标志位。 6)TF1:定时器/计数器T1的中断请求标志位。其作用与TF0类同。,(2)串行口控制寄存器SCON 字节地址为98H,初始值为00H,可以进行位寻址。,1)RI:串行口接收中断请求标志位。当串行口接收完一个串行数据帧,硬件自动将RI中断请求标志位置“1”。CPU在响应串行口接收中断时,并不清“0”RI标志,必须在中断服务程序中用软件对RI

6、清“0”。 2)TI:串行口发送中断请求标志位。CPU将一个字节的数据写入发送缓冲器SBUF时,就启动一帧串行数据的发送,每发送完一个串行数据帧后,硬件自动将TI置“1”。CPU在响应串行口发送中断时,并不清“0”TI标志,必须在中断服务程序中用软件对TI清“0”。,(3)中断允许寄存器IE 字节地址为0A8H,初始值为00H,可以进行位寻址。,1)EX0:外部中断的中断允许位 2)ET0:定时器/计数器T0的中断允许位 3)EX1:外部中断的中断允许位 4)ET1:定时器/计数器T1的中断允许位 5)ES:串行口中断允许位 6)EA:中断允许总控制位,(4)中断优先级控制寄存器IP 字节地址

7、为0B8H,初始值为00H,可以进行位寻址。,1)PX0:外部中断的中断优先级控制位 2)PT0:定时器/计数器T0的中断优先级控制位 3)PX1:外部中断的中断优先级控制位 4)PT1:定时器/计数器T1的中断优先级控制位 5)PS:串行口中断优先级控制位,5.1.3 MCS-51的中断处理过程,(1)有中断源发出中断请求; (2)中断总允许位EA1,即CPU开中断; (3)申请中断的中断源的中断允许位为1,即中断没有被屏蔽; (4)无同级或更高级中断正在被服务; (5)当前的指令周期已经结束; (6)当前正执行的指令是返回指令(RETI)或访问IP、IE 寄存器的指令,则CPU 将至少再执

8、行一条指令才能响应中断。,1. CPU响应中断的条件,2. 中断响应过程,(1)保护断点: (2)给出中断入口地址: (3)保护现场: (4)中断服务: (5)恢复现场: (6)中断返回:,【例5.1】在8051单片机的引脚外接脉冲信号,要求每送来一个脉冲,把片内40H单元内的数值加1,若40H单元计满则进位41H单元。利用中断结构,编制一个脉冲计数程序。 程序编制如下:,ORG 0000H LJMP MAIN ;设置主程序入口 ORG 0013H ;外部中断1入口 LJMP INT01 ;设置外部中断服务程序入口 ORG 1000H MAIN: SETB IT1 ;设置外部中断1为边沿触发

9、SETB EA ;开总中断 SETB EX1 ;允许外部中断1中断 MOV A,#00H,MOV 40H,A MOV 41H,A MOV SP,#50H ;设置堆栈指针 SJMP $ ;等待中断 ORG 2000H ;中断服务程序 INT01:PUSH ACC ;保护现场 INC 40H MOV A,30H JNZ EXIT ;A0,执行EXIT,中断返回 INC 31H EXIT: POP A ;恢复现场 RETI ;中断返回,5.2 MCS-51单片机的定时器/计数器,单片机中的计数器除了可以作为计数用,还可以用作定时器。 那么单片机的定时/计数器是怎么回事呢?只要计数脉冲的间隔相等,那么

10、计数值就代表了时间的流逝。其实,单片机中的定时器和计数器是一个东西,只不过计数器记录的是外界发生的事情,而定时器则是由单片机提供一个非常稳定的计数源,然后把计数源的计数次数转化为定时器的时间。,5.2.1 定时器/计数器的结构,16位定时器/计数器实际上是16位的加1计数器,其中T0由两个8位特殊功能寄存器TH0和TL0构成;T1由两个8位特殊功能寄存器TH1和TL1构成。 特殊功能寄存器TCON用于控制T0、T1的启动和停止,同时包含了T0、T1的状态。,5.2.2 定时器/计数器的控制,1工作模式寄存器TMOD 字节地址为89H,初始值为00H,不能按位寻址,只能以字节方式设置工作模式。低

11、4位用于设置T0,高4位用于设置T1。,1)M0、M1:工作模式选择位,2)C/T:计数、定时工作方式选择位 当C/T 0时,工作在定时方式,计数器对内部机器周期进行计数; 当C/T 1时,工作在计数方式,计数器对外部输入引脚T0(P3.4脚)或T1(P3.5脚)的外部脉冲(负跳变)计数。 3)GATE:门控位 GATE0时,以运行控制位TRX(X=0,1)来启动定时器/计数器运行; GATE1时,用外部中断引脚(INT0或INT1)上的高电平来启动定时器/计数器运行。,2定时/计数器控制寄存器TCON 字节地址为88H,初始值为00H,可以进行位寻址。,1)TR0:定时器/计数器T0的运行控

12、制位,可软件置1或清0 TR00时,停止定时器/计数器T0工作; TR01时,启动定时器/计数器T0工作。 2)TF0:定时器/计数器T0的计数溢出标志位。 3)TR1:定时器/计数器T1的运行控制位,其作用与TR0类同。 4)TF1:定时器/计数器T1的计数溢出标志位,其作用与TF0类同。,3定时器/计数器的工作模式 (1)模式0 当M1、M0为00时,定时/计数器工作在模式0,称之为13位定时/计数器方式。,为了和51的前辈48系列兼容而设的一种工作模式,1)GATE=0,分析一下逻辑,GATE“非”后是“1”,进入“或”门,“或”门总是输出“1”,和“或”门的另一个输入端INT0无关,在

13、这种情况下,开关的打开、合上只取决于TR0,只要TR0=1,开关就合上,计数脉冲得以畅通无阻;而如果TR0=0则开关打开,计数脉冲无法通过,因此定时/计数是否工作,在这里只取决于TR0。 2)GATE=1,在这种情况下,计数脉冲通路上的开关不仅要由TR0来控制,而且还要受到引脚INT0的控制,只有TR0=1,且INT0也是高电平,开关才能合上,计数脉冲才得以通过。,工作在定时方式时,其定时时间为: T(213T0初值)机器周期 其中,机器周期12 1/ fCSO , fCSO为振荡器的振荡周期。 工作在计数方式时,是13位的计数器,最多可以计到213,也就是8192次。,(2)模式1 当M1、

14、M0为01时,定时/计数器工作在模式1,模式1与模式0类同,区别在计数器的位数,模式1为16位计数器。,工作在定时方式时,其定时时间为: T(216T0初值)机器周期 其中,机器周期12 1/ fCSO , fCSO为振荡器的振荡周期。 工作在计数方式时,是16位的计数器,最多可以计到216,也就是65536次。,(3)模式2 当M1、M0为10时,定时/计数器工作在模式2,此时,16位计数器分成两个独立的8位计数器TH0和TL0。其中,TL0用作计数器,TH0用来保存计数的初值。当TL0计满溢出时,可自动将TH0中的初值再装入TL0中。,工作在定时方式时,其定时时间为: T(28T0初值)机

15、器周期 其中,机器周期12 1/ fCSO , fCSO为振荡器的振荡周期。 工作在计数方式时,是8位的计数器,最多可以计到28,也就是256次。,通常工作模式2 用于波特率发生器,(4)模式3 当M1、M0为11时,定时/计数器工作在模式3。该模式只适用于定时/计数器T0。,在这种工作模式下,T0被拆成2个独立的定时/计数器来用。其中,TL0可以构成8位的定时器或计数器工作方式;而TH0则只能作为定时器用。TL0还是用原来的T0的溢出标记,而TH0则借用T1的溢出标记。 在一般情况下,只有在T1以工作模式2运行时,才让T0工作于模式3。,(1)设置中断向量 定时器/计数器中断向量的设定与外部

16、中断向量类似,其中断向量分别是0BH和1BH。通常会在这些地址上使用“JMP XXX”指令,跳转到中断子程序,在中断子程序中提供真正的服务。 ORG 0 ;程序从0地址开始 LJMP START ;跳至START ORG 0BH ;定时器T0中断 LJMP XXX ;执行XXX中断子程序 : (2)中断设置 中断设置包括开启中断开关(IE)、中断优先级设置(IP)、中断信号设置(TCON)、设置新的堆栈地址等。可以利用MOV指令、SETB指令或CLR指令,进行字节或位设置。 (3)应根据所要求的定时时间的长度和定时的重复性,合理选择定时器的工作模式。 (4)定时器/计数器的初始化,包括设置TMOD、写入初值等。 (5)若定时器/计数器用于计数方式时,外部脉冲必须从P3.4(T0)或P3.5(T1)引脚输入,且外部脉冲的最高频率不能超过时钟频率的1/24。,

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

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

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