《MCS中断系统》PPT课件.ppt

上传人:wuy****n92 文档编号:77663652 上传时间:2023-03-16 格式:PPT 页数:78 大小:662KB
返回 下载 相关 举报
《MCS中断系统》PPT课件.ppt_第1页
第1页 / 共78页
《MCS中断系统》PPT课件.ppt_第2页
第2页 / 共78页
点击查看更多>>
资源描述

《《MCS中断系统》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《MCS中断系统》PPT课件.ppt(78页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器第5章MCS-51单片机中断系统与定时/计数器5.1输入输出数据传送的控制方式5.2中断概述5.3MCS-51单片机中断源、中断控制和中断响应5.4 定时/计数器的概述5.5 定时/计数器的工作方式及应用第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.1 输入输出数据传送的控制方式输入输出数据传送的控制方式单片机常用的输入/输出设备有:键盘、A/D转换器、显示器、指示灯、微型打印机、D/A转换器等。计算机与输入输出设备之间交换信息,有三种信息形式:

2、数据信息、状态信息和控制信息。数据信息:数字量、模拟量和开关量;状态信息:外设的工作状态;控制信息:控制外设的启动或停止。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器计算机的CPU与外设,并不直接相连,而是通过接口电路进行连接。单片机系统的运行同其他微机系统一样,CPU不断地与外部输入/输出设备交换信息。CPU与外部设备交换信息通常有以下四种方式:无条件传送方式查询方式中断方式直接存储器存取(DMADirectMemoryAccess)第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器无条件传送方

3、式这种数据传送方式有些类似于CPU和存储器之间的数据传送,即CPU总是认为外设在任何时刻都是处于“准备好”的状态。因此,这种传送方式不需要交换状态信息,只需在程序中加入访问外设的指令,数据传送便可以实现。应用场合:(1)具有常驻的或变化缓慢的数据信号的外部设备,例如直接读取外设状态信息;(2)工作速度非常快,足以和CPU同步工作的外部设备,例如:发光二极管的驱动接口。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.1.2程序查询方式查询传送也称为条件传送,可用于无条件传送不便于使用的场合,以解决外部设备与CPU之间的速度匹配问题。查询方式的过

4、程为:查询等待数据传送,即在执行数据输入/输出之前,CPU先查询外设当前状态,如果外设准备好,就进行数据传送;如果外设忙,就进行循环以等待。流程图如图5-1(a)所示。例如:通过打印机打印文稿。等待也可以不采用循环等待,而用软件插入固定延时的方法来完成,如图5-1(b)所示。例如:显示屏/硬盘的上电初始化。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器查询方式的优点是通用性好,可以用于各类外部设备和CPU间的数据传送。缺点是需要有一个等待过程,比较浪费CPU时间。检查外设状态准备好传送数据传送数据延时启动外部设备NY(a)(b)图5-1查询方式

5、流程图第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.1.3中断方式中断方式与查询方式的主要区别在于如何知道外设是否为数据的传送作好了准备,查询方式是CPU的主动形式,而中断方式则是CPU等待通知(中断请求)的被动方式。查询中断第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.2中断概述5.2.1中断的概念计算机中的中断是指CPU在处理某件事情的时候,外部发生了某一事件请求CPU迅速去处理,于是CPU暂时中断当前的工作,转入处理所发生的事件,中断访问处理完后,再回到原来被中断的地方,继续原来的

6、工作的过程称为中断,如图5-1所示。实现这种功能的部件称为中断系统(中断机构),产生中断的请求源称为中断源。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器看电视中断处理中断请求实际生活中断返回电话铃响接听电话看电视主程序计算机事件发生事件处理主程序中断概念示意图 第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器中断过程示意图第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.2.2中断功能当计算机采用了中断技术后,可大大地提高其工作效率和处理问题的灵

7、活性。其功能主要表现在以下几个方面:1实现CPU与外设的速度配合 2实现实时控制3实现故障的及时发现4实现人机联系第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.2.3中断系统的功能MCS-51的中断系统具有以下中断功能:能实现中断及返回;能实现中断优先级排队;能实现中断嵌套。返回中断中断返回低级中断主程序高级中断中断嵌套流程三类中断:可屏蔽中断、不可屏蔽中断和软件中断。可屏蔽中断指CPU对中断请求输入线上的中断请求是可以通过指令控制的。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.3MC

8、S-51单片机中断源、中断源和中断响应5.3.1中断源 中断源是指能发出中断请求,引起中断的装置或事件。一个单片机系统通常有多个中断源,而单片机CPU在某一时刻只能响应一个中断源的中断请求,当多个中断源同时向CPU发出中断请求时,则必须按照“优先级别”进行排队,CPU首先选定其中中断级别最高的中断源为其服务,然后按由高到低的排队顺序逐一服务,完毕后返回断点地址,继续执行主程序。这就是“中断优先级”的概念。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器MCS-51单片机中断系统结构IE0EX0TF0IE1TF1TIESET1EX1ET0RIIP硬

9、件查询高级中断请求低级中断请求中断源INT0INT1中断入口地址中断源10IEPX0PSPT1PX1PT0111111111100000EA11SCON11T0T1RXTXIT0IT100TCON中断入口地址第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(1)外中断类即外部中断0和外部中断1中断请求信号分别由引脚INT0(P3.2)和INT1(P3.3)引入。外部中断请求有两种信号方式:电平方式:当引脚上出现低电平时就向CPU申请中断,CPU响应中断后应采取措施撤消中断请求信号,使引脚恢复高电平。脉冲方式:当引脚上出现负跳变(下降沿)时,该负跳

10、变经边沿检测器使IE0或IE1置1,向CPU申请中断,CPU响应中断后由硬件自动清除IE0和IE1。CPU在每个机器周期采样INT0和INT1,为了保证检测到负跳变,引脚上的高电平与低电平至少应各自保持一个机器周期。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)定时中断类)定时中断类单片机芯片内部有两个定时器,T0和T1,以计数的方法实现定时或计数功能。定时器/计数器计数溢出时,由硬件分别置TF0=1和TF1=1,向CPU申请中断。CPU响应中断后,由硬件自动清除TF0和TF1。(3)串行接口中断串行接口中断串行接口的中断请求由发送或接收

11、所引起。串行口发送了一帧信息,便由硬件置TI1,向CPU申请中断。串行口接收了一帧信息,便由硬件置RI1,向CPU申请中断。CPU响应中断后必须由软件清除TI和RI。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.3.2中断控制与中断控制有关的寄存器共四个,定时器控制寄存器TCON(TimerController)串行口控制寄存器SCON(SerialController)中断允许控制寄存器IE(InterruptEnable)中断优先控制寄存器IP(InterruptPriority)第第5 5章章 MCS-51 MCS-51单片机中断系统

12、与定时单片机中断系统与定时/计数器计数器(1)定时器控制寄存器(TCON),88HTCON内容及位地址表示如下:位地址8F8E8D8C8B8A8988位符号TF1TR1TF0TR0IE1IT1IE0IT0IE0(IE1)外中断请求标志位当CPU采样到(或)端出现有效中断请求时,此位由硬件置1。在中断响应完成后转向中断服务时,再由硬件自动清零。IT0(IT1)外中断请求信号方式控制位 IT0(IT1)=1脉冲方式(后沿负跳有效)IT0(IT1)=0电平方式(低电平有效)此位由软件置1或清0。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)串行

13、口控制寄存器(SCON)该寄存器地址为98H,其位地址为9FH98H。位地址9F9E9D9C9B9A9998位符号SM0SM1SM2RENTB8RB8TIRITI串行口发送中断请求标志位当发送完一帧串行数据后,由硬件置1,在转向中断服务程序后,必须用软件清0。RI串行口接收中断请求标志位当接收完一帧串行数据后,由硬件置1;在转向中断服务程序后,必须用软件清0。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(3)中断允许控制寄存器(IE)该寄存器地址为A8H,其位地址为AFHA8H。位地址AFAEADACABAAA9A8位符号EA1/0/0ES0

14、ET11EX10ET00EX01EA中断允许总控制位EA=0禁止所有中断,CPU不响应任何中断请求。EA=1开放所有中断,某个中断的禁止或允许由各中断源的中断允许控制位进行设置。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器EX0(EX1)外部中断允许控制位EX0(EX1)0禁止外中断EX0(EX1)1允许外中断ET0(ET1)定时计数中断允许控制位ET0(ET1)0禁止定时/计数T0(T1)中断ET0(ET1)1允许定时/计数T0(T1)中断ES串行中断允许控制位ES=0禁止串行中断ES=1允许串行中断单片机复位后(IE)00H,中断系统处于

15、禁止状态。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(4)中断优先级控制寄存器(IP)IP寄存器地址B8H,位地址为BFHB8H。位地址BFBEBDBCBBBAB9B8位符号/0/0/0PS0PT10PX10PT00PX01PX0 外部中断0优先级设定位PT0 定时中断0优先级设定位PX1 外部中断l优先级设定位PT1 定时中断1优先级设定位PS 串行中断优先级设定位 为0时优先级为低;为1优先级为高。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器中断优先级是为中断嵌套服务的,其控制原则为:

16、低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。如果一个中断请求已被响应,则同级的其它中断请求不能中断它。如果同级多个中断请求同时出现,则按CPU设定的自然优先级确定那个中断请求被响应。其自然优先级由高到低依次为:外部中断0定时中断0外部中断1定时中断1串行中断,这其实是CPU查询各中断的次序。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(5)中断控制寄存器参数设置这四个控制寄存器既可字节寻址又可位寻址的。寄存器参数设置方式:字节操作、位操作等指令。例如,在中断允许控制寄存器IE中,

17、假定要开放外部中断0和定时中断1,为:字节传送操作:MOVIE,#89H或者:ORLIE,#89H位操作:SETB EASETBEX0SETB ET1其它各中断控制寄存器与此类似。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.3.3中断处理过程(1)中断响应条件CPU响应中断的必要条件有:有中断源发出中断请求;CPU开放中断,即中断总允许位EA1;申请中断的中断源允许中断,即中断允许位为1;无同级或更高级中断正在被服务;当前的指令周期已经结束。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器中

18、断受阻条件:满足中断响应条件的,如果遇上下列条件之一,该中断响应过程将被阻断:正在执行同级或高级中断服务程序;当前的查询周期还不是执行指令的最后一个机器周期,即下在执行的指令完成前,任何中断请求都得不到响应。正在执行的是一条RET、RETI或者任何访问IE或IP的指令。在指令这些指令之后,不会马上响应中断请求,至少还要执行一条其他指令。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)中断响应过程1)使相应优先级状态触发器置1;2)将当前PC内容压入堆栈保护断点;3)硬件清零相应中断请求标志(TI、RI除外);4)将中断服务子程序入口地址送P

19、C转移。中断响应过程相当于一条隐含的调用指令(或称隐指令)LCALL。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(3)中断响应时间指从查询中断请求标志位到转向中断服务入口地址所需的机器周期数。1)最快响应时间以外部中断的电平触发为最快。1个周期(查询)2个周期(长调用LCALL)2)最长响应时间若当前指令是RET、RETI和IP、IE指令,紧接着下一条是乘除指令发生时:2个周期执行当前指令(其中含有1个周期查询)4个周期乘除指令2个周期长调用8个周期。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器

20、计数器(4)中断处理中断处理(又称中断服务)程序从入口地址开始执行,直到返回指令“RETI”为止,这个过程称为中断处理。此过程一般包括两部分内容,一是保护现场,二是处理中断源的请求。(5)中断返回中断处理程序的最后一条指令是RETI,它使CPU结束中断处理程序的执行,返回到断点处,继续执行主程序。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.3.4中断程序设计中断程序指为实现中断而设计的有关程序,包括主程序和中断服务程序。主程序实现对中断的控制,

21、中断服务程序则完成中断源所要求的各种操作。(1)主程序1)主程序的起始地址:MCS-51单片机复位后,PC=0000H,而各中断源的入口地址为0003H0023H。因此,在编写程序时应在0000H处使用一条转移指令,跳过上述区域。主程序则以转移指令的目的地址作为其起始地址。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器 ORG0000HLJMPMAINORG0003HLJMPSUMORG1000HMAIN:SUM:第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器2)中断系统的初始化:MCS-51中

22、断系统的功能是通过前述特殊功能寄存器进行统一管理的,中断系统的初始化是指用户对这些特殊功能寄存器中的各控制位进行赋值。初始化包括:设定所涉及中断源的中断优先级;相应中断源开中断;若为外部中断,应规定其触发方式,堆栈设置(SP)。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器例:编写INT1为低电平触发的初始化程序。(1)采用位操作指令实现CLRIT1;电平触发方式SETB PX1;设置INT1为高优先级断SETB EA;总中断允许SETB EX1;设置外部中断1允许(2)采用字节操作指令MOV TCON,#00H;MOV IE,#84H;MOV

23、 IP,#04H;第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)中断服务程序编写中断服务程序时要注意以下三点:1)五个中断入口地址范围:0003H0023H,每个中断源的入口地址间仅相差8存储单元,一般无法用于容纳一个完整的中断服务程序,因此通常在中断服务程序入口自己用LJMP指令,这样可以安排中断服务程序在64K程序存储器的任何地方。2)开始处需要保护现场,中断结束前需要恢复现场;3)最后一条指令必须是中断返回指令RETI。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器ORG0000HL

24、JMPMAINORG0003HLJMPSUMORG1000HMAIN:MOVSP,#30H;开辟堆栈MOVA,#00H;主程序开始CLRP1.0;清除SETBIT0;脉冲触发方式SETBIE0;允许外部中断0SETBEA;总中断允许SJMP$;等待中断SUM:INCACJNEA,#100,QUITCLREA;总中断禁止CLRIE0;外部中断0禁止SETBP1.0;置位QUIT:RETI;中断返回END3.中断程序设计举例例:统计脉冲触发方式下INT0的个数,若满100个,则停止统计并将置1。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器例:外部

25、中断源扩展当外部中断源多于2个时,可采用硬件申请与软件查询的方法扩展外部中断。80511EXT0EXT1EXT2EXT3P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7LEDR第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器ORG0000HJLMPMAINORG0003HLJMPEXINT;转外部中断1服务程序ORG0040HMAIN:ORG1000HEXINT:PUSHPSWPUSHA;保护现场,EXT0,EXT1,EXT2,EXT3DONE:POPAPOPPSW;恢复现场RETI;中断返回 AJMP DONEAJMP DONE

26、EXT2:SETBP1.6AJMPDONEEXT3:SETBP1.7AJMP DONEEND第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.4定时/计数器的概述定时器/计数器的结构定时器/计数器的结构如图所示。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器8051单片机有2个16位的定时/计数器:定时器0(T0)和定时器1(T1)。它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。T0由2个特殊功能寄存器TH0和TL0构成,T1则由TH1和TL1构成。这些功能都

27、由特殊功能寄存器TMOD和TCON所控制。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.4.2定时和计数两种功能(1)计数功能计数:对外部事件进行计数。外部事件的发生以输入脉冲表示,因此计数功能的实质就是对外来脉冲进行计数。计数输入端:T0(P3.4)和T1()。外部输入的脉冲在负跳变时有效,进行计数器加1(加法计数)。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器定时器/计数器在每个机器周期的S5P2期间采样T0/T1引脚,若采样结果表明上一周期为高电平,下一周期为低电平,则TL0/TL1

28、加1。新的计数值在检测到负跳变后的S3P1期间置入加法计数器。由于需要两个机器周期才能识别高电平到低电平的跳变,所以外部计数脉冲的频率应小于fosc/24,且高电平与低电平的持续时间均不得小于一个机器周期。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)定时功能实现方法:通过计数器的计数实现。与计数功能的不同之处:计数脉冲来自单片机的内部,即每个机器周期产生一个计数脉冲,也就是每个机器周期计数器加1。一个机器周期=12个振荡周期,故计数频率为振荡频率的1/12。若:单片机晶振6MHz,则计数频率为,2微秒计数器加1。第第5 5章章 MCS-

29、51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器定时器工作方式的特点:当定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。因此,定时器/计数器是一种可编程部件。编程:在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时器/计数器,决定T0、T1的工作方式。将控制字写入定时器/计数器的过程叫定时器/计数器的初始化。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器定时/计数器初始化内容:设定T0、T1的工作方式:(TMO

30、D)将工作方式控制字写入方式寄存器设定定时/计数初值:(TH0,TL0;TH1,TL1)设定T0、T1的工作状态:(TR0/TR1)将工作状态控制字写入控制寄存器第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器工作模式寄存器和控制寄存器(1)定时器工作方式寄存器(TMOD,89H)作用:设置两个定时器/计数器工作方式。但TMOD不能位寻址,只能用字节传送指令设置其内容。位序号D7D6D5D4D3D2D1D0位符号GATEC/TM1M0GATEC/TM1M0T1T0第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/

31、计数器计数器GATE门控位0以运行控制位TR0(TR1)启动定时器1以外中断请求信号和TR0(TR1)共同启动定时器C/T:定时方式/计数方式选择位。=1:选择计数器工作方式,对T0/T1引脚输入外部事件的负脉冲计数;=0:选择定时器工作方式,对机器周期脉冲计数定时。M1M0工作方式选择位。可形成4种编码,对应于四种工作方式。=00:13位定时器/计数器;=01:16位定时器/计数器(常用);=10:可自动重装的8位定时器/计数器(常用);=11:T0分为2个8位定时器/计数器;仅适用于T0。复位时,TMOD0。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时

32、/计数器计数器例如:设定时器1为定时工作方式,要求由软件启动定时器1,按方式2工作。定时器0为计数方式,要求由软件启动定时器0,按方式1工作。位序号位序号 D7D6D5D4 D3D2D1D0位符号位符号GATE 0C/T0M11M00GATE0C/T1M10M01MOVTMOD,#25H。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)定时器控制寄存器(TCON,88H)位地址8F8E8D8C8B8A8988位符号TF1TR1TF0TR0IE1IT1IE0IT0TR0(TR1)定时器T0(T1)运行控制位当TR0(TR1)1时,启动定时器开

33、始工作。当GATE0时,TR0(TR1)置1,启动定时器开始工作。当GATE=1时,且为高电平时,TR0(TR1)置1启动定时器工作;由软件清零关闭定时器。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器TF0(TF1)计数溢出标志位若有溢出,TF0(TF1)1无溢出,TF0(TF1)0有溢出时,当转向中断服务时,再由硬件自动清0。TF0(TF1)的使用方式:中断方式时,作中断请求标志位来使用,查询方式时,作查询状态位来使用。TF0(TF1)也可以用程序置位或清零。例如执行指令SETBTF1后TF11。所以定时器/计数器1的中断请求还能用程序产生

34、(软中断)。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器5.5定时器/计数器的工作方式及应用四种工作方式:即方式0、方式1、方式2和方式3。其中:方式0、1和2下,T0和T1的工作方式相同,方式3下,两个定时器的工作方式不同。(1)方式013位计数结构的工作方式。下图是定时器/计数器0在工作方式0下的逻辑结构。T1的结构和操作与T0完全相同。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器T0(或T1)方式0结构13位计数器第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断

35、系统与定时/计数器计数器当GATE0时,若TR0=1,接通计数控制K,启动T0在原计数值上加1计数,直至溢出。若TR00,则关断控制开关,停止计数。当GATE1,且TR01时,开启定时器计数。,关断控制开关,停止计数。由于定时器/计数器以加1方式计数,当定时器/计数器用于计数工作方式时,假定要求的计数长度为N,则应装入定时器/计数器的初值X213N。在方式0下,计数的长度N大小范围为18192。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器当工作于定时状态时,定时器/计数器是计数内部机器周期每个机器周期包括12个振荡周期,若晶振频率为6MHz,

36、则:机器周期Tp12/晶振频率12/(6106)2us若需要的定时时间:Tc,则需要的机器周期数NTc/Tp。则应装入定时器/计数器的初值X213N。则当X8191时,具有最小的定时时间为2us;当X0时,具有最大的定时时间为16384us。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器定时器/计数器的应用举例主要任务:编程。编程时应注意的问题:1.能正确写入控制字(即初始化定时器/计数器)2.会进行定时/计数初值的计算。写入控制字的次序:1.把工作方式控制字写入TMOD寄存器;2.把定时/计数初值装入TL0、TH0(或TL1、TH1)3.置位

37、TR0(或TR1)以启动计数4.置位ET0(或ET1)允许定时器/计数器中断(如果需要);5.置位EA使CPU开放中断。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器例1:设单片机晶振频率fosc6MHz,使用定时器1以方式0产生周期为500us的等宽正方波脉冲,并由输出。以查询方式完成。(1)计算计数初值实现正方波脉冲的方法:端以250us为周期交替输出高低电平。则:定时时间应为250us。若晶振为6MHz,则一个机器周期2us。设待求的计数初值为X,则:(213X)2us250us得:X80671111110000011BTH1FCH,TL

38、103H。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)TMOD寄存器初始化T1在方式0下,M1M000;定时功能,应使0;实现T1的运行控制,则GATE0。所以:TMOD00H。(3)由定时器控制寄存器TCON中的TR1位控制定时的启动和停止,则TR11,启动;TR10,停止。位序号D7D6D5D4D3D2D1D0位符号GATEC/TM1M0GATEC/TM1M000000000第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(4)程序清单:ORG1000HMOVTMOD,#00H;设置T

39、1工作方式0MOVTH1,#0FCH;设置计数初值MOVTL1,#03HMOVIE,#00H;禁止中断SETBTR1;启动T1运行SETBP1.7;高电平LOOP:JBTF1,LOOP1;查询计数溢出AJMPLOOPLOOP1:MOVTH1,#0FCH;重新设置计数初值MOVTL1,#03HCLRTF1;计数溢出标志位清零CPLP1.7;输出取反AJMPLOOP;重复循环END;程序结束第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(2)方式1T0(或T1)方式1结构16位计数器第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片

40、机中断系统与定时/计数器计数器方式1工作原理与方式0基本相同,只是计数器变为16位,由TH(8位)和TL(8位)构成。当定时器/计数器用于计数工作方式时,假定要求的计数长度为N,则应装入定时器/计数器的初值X216N。在方式1下,计数的长度范围为165536。当工作于定时状态时,若需要的定时时间为Tc,则需要的机器周期数NTc/Tp(Tp机器周期),则应装入定时器/计数器的初值X216N。若晶振频率为12MHz,则当X65535时,具有最小的定时时间为1us;当N65536时,具有最大的定时时间为65536us65ms。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系

41、统与定时/计数器计数器例:设单片机晶振频率fosc6MHz,使用定时器1以方式1产生周期为500us的等宽正方波脉冲,并由输出。以中断方式完成。(1)计算计数初值设待求的计数初值为X,则:(216X)2us250us得:X654110FF83H,则:TH1FFH,TL183H。(2)TMOD寄存器初始化位序号位序号 D7D6D5D4 D3D2D1D0位符号位符号GATEC/TM1M0GATEC/TM1M000010000TMOD10H第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(3)程序清单:ORG 0000HAJMP MAINORG001B

42、HAJMP TIMER1ORG1000HMAINMOV TMOD,#10H;设置T1工作方式1MOV TH1,#0FFH;设置计数初值MOV TL1,#83H;SETB EA;开中断第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器SETB ET1;定时器1允许中断LOOP:SETB TR1;定时开始HERE:SJMP$;等待中断TIMER1:MOV TH1,#0FFH;T1中断服务程序;重新设置计数初值MOV TL1,#83H;CPLP1.7RETIEND;程序结束第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时

43、/计数器计数器(3)方式2方式2具有自动重新加载功能,即自动加载计数初值。在该工作方式下,把16位计数器分为两部分,即以TL作计数器,以TH作预置寄存器,初始化时把计数初值分别装入TL和TH中。当计数溢出时,由预置寄存器TH以硬件方法自动给计数器TL重新加载,继续计数,循环重复。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器T0(或T1)方式2结构8位计数器第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器当定时器/计数器用于计数工作方式时,假定要求的计数长度为N,则应装入定时器/计数器的初值X28

44、N。在方式2下,计数的长度范围为1256。当工作于定时状态时,若需要的定时时间为Tc,则需要的机器周期数NTc/Tp,(Tp为机器周期),则应装入定时器/计数器的初值X28N。若晶振频率为6MHz,则当X255时,具有最小的定时时间为2us;当X0时,具有最大的定时时间为512us。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器例:有一自动罐装药粒系统,每瓶罐装药粒100片,每满一瓶,累加器A加1操作,若满200瓶,向输出0,然后停止计数。要求用定时器1以工作方式2计数。(查询方式)(1)计算计数初值设待求的计数初值为X,则:(28X)100得

45、:X1569CH,则:TH19CH,TL19CH。(2)TMOD寄存器初始化位序号位序号 D7D6D5D4 D3D2D1D0位符号位符号GATEC/TM1M0GATEC/TM1M001100000TMOD60H第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(3)程序清单:ORG1000HMOVTMOD,#60H;设置T1工作方式MOVTH1,#9CH;设置计数初值MOVTL1,#9CHMOV A,#00HMOVIE,#00H;禁止中断SETBTR1;启动计数CHECK:JBCTF1,LOOP;查询计数溢出AJMPCHECKLOOP:INCACJ

46、NEA,#200,CHECKCLRP1.0;清零CLRTR1;停止计数器1的运行END;程序结束第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(4)方式3前三种工作方式下,T0和T1的设置和使用是完全相同的。但是在工作方式3下,二者的设置和使用却是不同的。1)在工作方式3下,T0被拆成两个独立的8位计数器TL0和TH0。其中TL0既可以作计数使用,又可以作定时使用。T0的各控制位、引脚和中断源,即GATE、TR0、TF0和T0()引脚、()引脚全归它使用。功能和操作与方式1完全相同,而且逻辑电路结构也很相似,如图所示。第第5 5章章 MCS-5

47、1 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器T0工作方式3逻辑结构第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器此时TH0只可用作简单的定时器使用。而且由于T0的控制位已被TL0独占,因此只好借用定时器/计数器1的控制位TR1和TF1,即以计数溢出去置位TF1,而定时的启动和停止则受TR1的状态控制。由于TL0既能作定时器使用也能作计数器使用,而TH0只能作定时器使用,却不能作计数器使用。因此,在工作方式3下,定时器/计数器0可以构成两个定时器或一个定时器和一个计数器。第第5 5章章 MCS-51 MCS-51单片机中

48、断系统与定时单片机中断系统与定时/计数器计数器方式0、1(2)工作方式3下的定时器/计数器1如果T0已工作在工作方式3,则T1只能工作在方式0、1或方式2下,因为它的运行控制位TR1及计数溢出标志位TF1已被T0借用,如图所示。第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器此时,T1通常是作为串行口的波特率发生器使用,以确定串行通信的速率。因为已经没有计数溢出标志位TF1可供使用,因此只能把计数溢出直接送给串行口。若将T1强行设置为模式3,就会使T1立即停止工作。方式2第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统

49、与定时/计数器计数器初值计数值定时时间方式0(13位)0819118192(18192)S方式1(16位)065535165536(165536)S方式2(8位重装)02551256(1256)S方式3TL002551256(1256)STH00255(1256)S以晶振fosc=12MHz计算第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器例:设定时器/计数器T0工作于方式3,T1工作于方式0,TL0和TH0作为两个独立的8位定时/计数器分别产生250us和500us的定时中断,使和产生500us和1000us的方波。设晶振频率为6MHz。(1

50、)计算计数初值TL0的计数初值256250us/2us=13183HTH0的计数初值256500us/2us=06H因此,TL083H,TH006H。(2)TMOD寄存器初始化第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器M1M011,0,GATE0,T1工作于方式0因此:TMOD03H位序号位序号 D7D6D5D4 D3D2D1D0位符号位符号GATEC/TM1M0GATEC/TM1M000000011第第5 5章章 MCS-51 MCS-51单片机中断系统与定时单片机中断系统与定时/计数器计数器(3)程序清单:ORG0000HAJMPMAI

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

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com