首页 单片机原理及应用第7章 定时计数器

单片机原理及应用第7章 定时计数器

举报
开通vip

单片机原理及应用第7章 定时计数器第7章定时、计数器第7章定时/计数器单片机控制系统中常常用到的定时与计数问题。7.1定时器/计数器的结构与控制 7.2定时器/计数器的四种工作方式及应用 第7章定时、计数器7.1定时/计数器概述1、定时的定义:定时是对周期固定、已知的脉冲计数。2、计数的定义:计数是对外界产生的周期不固定的未知脉冲计数。计数器的计数方式可以是加1计数,也可以是减1计数。3、定时/计数的实现方法:定时/计数的实现方法有3种:⑴硬件数字电路:用555构成的定时器和计数器等。⑵软件编程⑶可编程定时/计数器第7章定时、计数器例:编制一个延时...

单片机原理及应用第7章 定时计数器
第7章定时、计数器第7章定时/计数器单片机控制系统中常常用到的定时与计数问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。7.1定时器/计数器的结构与控制 7.2定时器/计数器的四种工作方式及应用 第7章定时、计数器7.1定时/计数器概述1、定时的定义:定时是对周期固定、已知的脉冲计数。2、计数的定义:计数是对外界产生的周期不固定的未知脉冲计数。计数器的计数方式可以是加1计数,也可以是减1计数。3、定时/计数的实现方法:定时/计数的实现方法有3种:⑴硬件数字电路:用555构成的定时器和计数器等。⑵软件编程⑶可编程定时/计数器第7章定时、计数器例:编制一个延时2mS的子程序。D2MS:MOVR7,#2D2MS0:MOVR6,#250DJNZR6,$DJNZR7,D2MS0RET例:统计开关按动次数,并存于30H单元。MOV30H,#0UP:JBP1.0,$JNBP1.0,$INC30HSJMPUP 软件编程第7章定时、计数器有的控制系统是按时间间隔来进行控制的,如定时的温度检测等。虽然可以利用延迟程序来取得定时的效果,但这会降低CPU的工作效率。如果能用一个可编程的实时时钟,以实现定时或延时控制,则CPU不必通过等待来实现延时,就可以提高CPU的效率。另外也有些控制是按计数的结果来进行的,因此在微机控制系统中常使用可编程的硬件定时/计数器。现在有很多专门用作定时/计数器的接口芯片。单片机内带有硬件定时/计数器可以简化系统设计。不论是独立的定时器芯片还是单片机内的定时器,都有以下特点:1.定时/计数器可以有多种工作方式,可以是计数方式也可以是定时方式等等。2.计数器模值是可变的,当然计数的最大值是有一定限制的,这取决于计数器的位数。计数的最大值也就限制了定时的最大值。3.可以按照 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 的定时或计数值,当定时的时间到或者计数终止时,发出中断申请,以便实现定时或计数控制。除了上述共同特点外,各种定时器还会有各自的特点,各自的工作方式和控制方式。 可编程定时/计数器第7章定时、计数器一、定时器/计数器的初始化MCS51单片机内有2个独立的16位的可编程定时/计数器T0和T1。它们的结构相似。T0的结构如图所示:振荡器÷12C/T=0C/T=1&+加1计数器TF0合/断T0TR0GATE0INT0TCONTMODTH0TL0TH1TL17.2定时器/计数器的四种工作方式及应用第7章定时、计数器TMOD:89H只能按字节操作。振荡器÷12C/T=0C/T=1&+加1计数器TF0合/断T0TR0GATE0INT0GATE1C/T:用来确定To(T1)是工作在计数方式还是工作在定时方式。C/T=0为定时方式,C/T=1为计数方式。即对外部引脚的外部输入脉冲计数。外部引脚上输入的每一个脉冲的负跳变使计数值加1,由于外输入脉冲的每个高、低电平持续时间各应大于一个机器周期,因此最小的计数周期为两个机器周期。例如,若单片机晶振频率为12MHZ,则外部计数脉冲的最高频率只能为500KHZ。M1和M2:两位用来确定To(T1)的具体工作模式。M1、M2的四种组合刚好与四种工作模式对应,分别是方式0、方式1、方式2、方式3。GATE:一般称为门控标志。它对定时/数器的启动起着控制作用。当GATE=1时,定时计数器的启动除了受TR控制外,还受INT引脚的控制。当TR=0且INT引脚上出现高电平时才能启动定时计数器。TMODC/T1M11M10GATE1C/T1M11M10第7章定时、计数器TCON:88H可以按字节操作,也可以按位操作。振荡器÷12C/T=0C/T=1&+加1计数器TF0合/断T0TR0GATE0INT0TCONTF1TR1TF0TR0IE1IT1IE0IT0TF0:T0溢出中断标志位。当T0计数溢出时,TF0=1。在允许中断的情况下,CPU响应T0中断,转向T0中断服务程序,此时由硬件自动将TF0清0。该标志位可由软件查询,也可用软件清0或置1。TR0:为T0启动控制位。当TR0=1时,启动T0;TR0=0时,关闭T0。该位由软件进行设置。TF0:T0溢出中断标志位。当T0计数溢出时,TF0=1。在允许中断的情况下,CPU响应T0中断,转向T0中断服务程序,此时由硬件自动将TF0清0。该标志位可由软件查询,也可用软件清0或置1。TR0:为T0启动控制位。当TR0=1时,启动T0;TR0=0时,关闭T0。该位由软件进行设置。第7章定时、计数器振荡器÷12C/T=0C/T=1&+加1计数器TF0合/断T0TR0GATE0INT0MCS-51单片机内部有两个16位的定时/计数器T0和T1。每个定时/计数器占用两个特殊功能寄存器:T0由TH0和TL0两个8位计数器组成,字节地址分别是8CH和8AH。T1由TH1和TL1两个8位计数器组成,字节地址分别是8DH和8BH。用于存放定时或计数的初值。当计数器工作时,其值随计数脉冲做加1变化。计数寄存器TH0TL0第7章定时、计数器由于T0由TL0(低8位)和TH0(高8位)组成;T1由TH和THl组成。所以T0、T1都是16位计数器。但是若将它们设置成不同的工作方式,其计数长度(最大值)和计数方式都可变化。内部定时/计数器一共有四种工作方式,由TMOD的相关位设置。GATE1C/T1M11M10GATE1C/T1M11M10M1和M2:两位用来确定To(T1)的具体工作模式。M1、M2的四种组合刚好与四种工作模式对应。定时/计数器工作模式如下:方式0方式1方式2方式3二、定时/计数器的工作方式 M1M0 模式 说明 00 方式0 13位定时/计数器(TH高8位加上TL中的低5位) 01 方式1 16位定时/计数器 10 方式2 自动重装初值的8位定时/计数器 11 方式3 模式3只针对T0,T0分成两个独立的8位定时/计数器;T1无模式3第7章定时、计数器振荡器÷12C/T=0C/T=1&+TF0合/断T0TR0GATE0INT0在方式0下,T0构成一个13位的计数器,由TH0的8位和TL0的低5位组成,TL0的高3位未用,满计数值为213。T0启动后立即加1计数,当TL0的低5位计数溢出时向TH0进位,TH0计数溢出则对相应的溢出标志位TF0置位,以此作为定时器溢出中断标志。当单片机进入中断服务程序时,由内部硬件自动清除该标志。TH0D5方式0×××D4D3D2D1D0TL0当选择了定时或计数工作方式后,定时/计数脉冲却不一定能到达计数器输入端,只有当控制开关合上时,计数脉冲才能到达计数器输入端,开始加1计数。控制开关闭合的条件如下:① GATE=0时,开关的打开、合上取决于TR0,只要TR0是1,开关就合上,计数脉冲得以畅通无阻,而如果TR0等于0则开关打开,计数脉冲无法通过,因此定时/计数是否工作,只取决于TR0。②GATE=1时,控制开关不仅要由TR0来控制,而且还要受到引脚的控制,只有TR0为1,且INT0引脚也是高电平,开关才合上,计数脉冲才得以通过。计数器第7章定时、计数器振荡器÷12C/T=0C/T=1&+TF0合/断T0TR0GATE0INT0在方式1下,定时/计数器T0和T1的方式1都是相同的。以下仅以T0为例。T0构成一个16位的计数器,由TH0的8位和TL0的8位组成,满计数值为216。T0启动后立即加1计数,当TL0计数溢出时向TH0进位,TH0计数溢出则对相应的溢出标志位TF0置位,以此作为定时器溢出中断标志。当单片机进入中断服务程序时,由内部硬件自动清除该标志。TH0TL0方式1计数器第7章定时、计数器振荡器÷12C/T=0C/T=1&+TF0合/断T0TR0GATE0INT0在方式2下,定时/计数器T0和T1的方式1都是相同的。以下仅以T0为例。TH0和TL0被当作两个8位计数器,计数过程中,TH0寄存8位初值并保持不变,由TL0进行8位计数。当低8位计数溢出时,除了可产生中断申请外,还将TH0中保存的内容向TL0重新装人,以便于重新计数,而TH0中的初值仍然保留,以便下次再行对TL0进行重装。方式2对于连续计数比较有利。这时不需要在溢出后用软件重新装入计数初值,而是可以自动装入,但此时计数的长度将受到很大的限制,只有28=256次。TH0TL0方式2计数器第7章定时、计数器振荡器÷12C/T=0C/T=1&+TF0合/断T0TR0GATE0INT0方式3只适用于定时/计数器T0。这种工作方式下,定时/计数器T0被拆成2个独立的定时/计数器来用。TL0方式3计数器振荡器÷12TF1TH0计数器TR1合/断在方式3下,T0和T1的工作有很大的不同。⑴若把T1置于方式3,则Tl停止计数,定时器T1保持其内容不变。所以,一般不会把T1置于方式3。⑵若把T0置于方式3,则16位计数器拆开为两个独立工作的8位计数器TL0和TH0。但这两个8位计数器的工作是有差别的。首先是工作方式的不同:①对TL0来说它既可以按计数方式工作,也可以按定时方式工作,②而TH0则只能按定时方式工作。另外是控制方式的不同。一般情况下,当定时/计数器T0处于工作方式3时,定时/计数器T1可工作为方式0、1、2,但由于此时其已没有控制通断和溢出中断的功能,T1只能作为串行口的波特率发生器使用,或不需要中断的场合。第7章定时、计数器MCS-51的定时/计数器是可编程的,因此,在进行定时或计数之前也要用对其进行初始化。初始化一般应包括以下几个步骤:1、对TMOD寄存器赋值,以确定定时器的工作方式。2.置定时/计数器初值,直接将初值写入寄存器的TH0,TL0或TH1,TLl。3.根据需要,对寄存器IE置初值,开放定时器中断。4.对TCON寄存器中的TRl或TR0置位,启动定时/计数器。启动以后,计数器即按规定的工作方式和初值进行计数或开始定时。三定时/计数器的应用例1例2例3第7章定时、计数器定时/计数器初值在初始化过程中,要置入定时值或计数值的初值,这时要作一些计算。方法如下:设计数器的最大值为M(在不同的工作方式中,M可以为213,216或28),则置入的初值X可这样来计算:计数方式时:X=M—计数模值定时方式时:(M—X)·T=定时值,所以X=M—定时值/T。其中T为计数周期,它是单片机时钟周期的12倍。当时钟周期为1/12MHZ时,计数周期为1us。在这种情况下,若定时器工作在方式0,则最大定时值为213·X·1/12MHZs=8.192ms;若工作在方式1,则最大定时值为216·X·1/12MHZs=65.536ms例若单片机的频率为12MHz,请计算2ms所需要的定时器初值。解:计数脉冲个数为2/0.001=2000若方式0,则计数初值为:213-2000=6192=1830HTH0=18H,TL0=30H若方式1,则计数初值为:216-2000=63536=F830HTH0=F8H,TL0=30H第7章定时、计数器方法1:用延时程序实现1mS的延时。UP:SETBP1.0LCALLD2MSCLRP1.0LCALLD2MSSJMPUP方法2:用T0定时2mS,查询TF0①确定工作方式方式0② 计算初值E018H③ 编程MOVTMOD,#00HSETBTR0LOOP:MOVTH0,#0E0HMOVTL0,#18HJNBTF0,$CPLP1.0CLRTF0SJMPLOOP例1使P1.0输出一个周期为2mS的方波。方法3:用T0定时2mS,中断。ORG0000HLJMPMAINORG000BHLJMPAT0MAIN:MOVTMOD,#00HMOVTH0,#0E0HMOVTL0,#18HSETBEASETBET0SETBTR0SJMP$AT0:MOVTMOD,#00HMOVTH0,#0E0HCPLP1.0RETI第7章定时、计数器欲产生周期为2秒的方波,定时器T0必须能定时1秒,这个值已经超过了定时器的最大定时时间。为此,我们只有采用定时器定时和软件计数相结合的方法才能解决问题。例2使P1.1输出一个周期为2S的方波。ORG0000HLJMPMAINORG000BHLJMPAT0MAIN:MOVTMOD,#01HMOVTH0,#0B1HMOVTL0,#0E0HMOVIE,#82HSETBTR0MOVR7,#50SJMP$AT0:MOVTMOD,#00HMOVTH0,#0E0HDJNZR7,AT1CPLP1.0MOVR7,#50AT1:RETI例如:我们可以在主程序中设定一个初值为20的软件计数器和使T0定时50ms。这样,每当T0定时到50ms时CPU就响应它的溢出中断请求,从而进入它的中断服务程序。在中断服务程序中,CPU先使软件计数器减1,然后判断它是否为零。若为零,则说明1S时间到,完成所需操作后返回主程序;若不为零,则说明1S时间未到,不进行任何操作,直接返回主程序。第7章定时、计数器ORG0000HAJMPMAINORG000BHAJMPTIMEORG001BHAJMPDISPMAIN:MOVIE,#8AHMOVTMOD,#11HMOVSP,#70HMOVR3,#0MOVR4,#0MOVR5,#0MOVR6,#0MOVTL1,#30HMOVTH1,#0F8HMOVTL0,#0B0HMOVTH0,#3CHMOVR7,#20SETBTR1SETBTR0MOVR0,#0SJMP$例3分秒 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf TIME:MOVTL0,#0B0HMOVTH0,#3CHDJNZR7,TIMEFMOVR7,#20INCR3CJNER3,#0AH,TIMEFMOVR3,#0INCR4CJNER4,#06H,TIMEFMOVR4,#0INCR5CJNER5,#0AH,TIMEFMOVR5,#0INCR6CJNER6,#06H,TIMEFMOVR6,#0TIMEF:RETIDISP:MOVTL1,#30HMOVTH1,#0F8HMOVDPTR,#TABTINCR0MOVP3,#0FFHDISP1:CJNER0,#01H,DISP2MOVA,R3MOVCA,@A+DPTRMOVP2,ACLRP3.0AJMPDISPFDISP2:CJNER0,#02H,DISP3MOVA,R4MOVCA,@A+DPTRMOVP2,ACLRP3.1AJMPDISPFDISP3:CJNER0,#03H,DISP4MOVA,R5MOVCA,@A+DPTRMOVP2,ACLRP3.6DISP4:CJNER0,#03H,DISPFMOVA,R6MOVCA,@A+DPTRMOVP2,ACLRP3.7DISPF:RETItabt:DB0C0H,0F9H,0A4H,0B0HDB99H,92H,82H,0F8H,80H,98H
本文档为【单片机原理及应用第7章 定时计数器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
孟子73代
暂无简介~
格式:ppt
大小:682KB
软件:PowerPoint
页数:0
分类:工学
上传时间:2019-07-15
浏览量:11