定时器及应用举例.ppt
《定时器及应用举例.ppt》由会员分享,可在线阅读,更多相关《定时器及应用举例.ppt(91页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、6.1 6.1 定时器概述定时器概述6.2 6.2 定时器的控制定时器的控制 6.3 6.3 定时器的四种模式及应用定时器的四种模式及应用 6.4 6.4 思考题与习题思考题与习题第六章第六章 定时器及应用定时器及应用6.1 6.1 定时器概述定时器概述6.1.1 89C516.1.1 89C51定时器结构定时器结构6.1.2 89C516.1.2 89C51定时器功能定时器功能6.1.1 89C516.1.1 89C51定时器结构定时器结构l89C5189C51定时器的结构如定时器的结构如 图图6-1 6-1 所示。所示。l有两个有两个1616位的定时器位的定时器/计数器,即定时器计数器,即
2、定时器0 0(T0T0)和定时器)和定时器1 1(T1T1)。它们实际上都)。它们实际上都是是1616位加位加1 1计数器。计数器。lT0T0由两个由两个8 8位特殊功能寄存器位特殊功能寄存器TH0TH0和和TL0TL0构构成;成;T1T1由由TH1TH1和和TL1TL1构成。构成。图图6-1 89C51定时器结构定时器结构6.1.2 89C516.1.2 89C51定时器功能定时器功能l每个定时器都可由软件设置为每个定时器都可由软件设置为 定时工作方式定时工作方式或或 计数工作方式计数工作方式及其他灵活多样的可控功能方式。及其他灵活多样的可控功能方式。这些功能由特殊功能寄存器这些功能由特殊功
3、能寄存器TMODTMOD和和TCONTCON所控制。所控制。l定时器工作不占用定时器工作不占用CPUCPU时间,除非定时器时间,除非定时器/计数器计数器溢出,才能中断溢出,才能中断CPUCPU的当前操作。的当前操作。l每个定时器每个定时器/计数器还有四种工作模式。其中模计数器还有四种工作模式。其中模式式0-20-2对对T0T0和和T1T1是一样的,模式是一样的,模式3 3对两者不同。对两者不同。定时工作方式定时工作方式定时器计数定时器计数89C5189C51片内振荡器输出经片内振荡器输出经1212分分频后的脉冲,即每个机器周期使定时器(频后的脉冲,即每个机器周期使定时器(T0T0或或T1T1)
4、的数值加)的数值加1 1直至计满溢出。直至计满溢出。当当89C51采用采用12MHz晶振时,一个机器晶振时,一个机器周期为周期为1s,计数频率为,计数频率为1MHz。计数工作方式计数工作方式l通过引脚通过引脚T0(P3.4)和)和T1(P3.5)对)对外部脉冲外部脉冲信信号号计数计数。当输入脉冲信号产生由。当输入脉冲信号产生由1至至0的下降沿时定的下降沿时定时器的值加时器的值加1。lCPU检测一个检测一个1至至0的跳变需要两个机器周期,故最的跳变需要两个机器周期,故最高计数频率为振荡频率的高计数频率为振荡频率的1/24。l为了确保某个电平在变化之前被采样一次,要求电为了确保某个电平在变化之前被
5、采样一次,要求电平保持时间至少是一个完整的机器周期。平保持时间至少是一个完整的机器周期。l对输入脉冲信号的基本要求如对输入脉冲信号的基本要求如 图图6-2所示。所示。图图6-2 对输入脉冲宽度的要求对输入脉冲宽度的要求6.2 6.2 定时器的控制定时器的控制 l6.2.1 6.2.1 工作模式寄存器工作模式寄存器 TMOD TMODl6.2.2 6.2.2 控制器寄存器控制器寄存器 TCON TCON6.2.1 6.2.1 工作模式寄存器工作模式寄存器 TMOD TMODlTMODTMOD用于控制用于控制T0T0和和T1T1的工作模式。的工作模式。lTMODTMOD不能位寻址,只能用字节设置定
6、时器的工作模不能位寻址,只能用字节设置定时器的工作模式,低半字节设置式,低半字节设置T0T0,高半字节设置,高半字节设置T1T1。l89C5189C51系统复位时,系统复位时,TMODTMOD的所有位被清的所有位被清0 0。lTMODTMOD各位的定义格式如各位的定义格式如 图图6-3 6-3 所示。所示。lTMODTMOD各位的功能:各位的功能:lTMODTMOD各位定义及具体的意义归纳如各位定义及具体的意义归纳如 图图6-46-4所示所示。GATE C/T M1 M0 GATEM1C/TM0定时器定时器T1定时器定时器T0TMOD(89H)D7 D6 D5 D4 D3 D2 D1 D0图图
7、6-3 工作模式寄存器工作模式寄存器TMOD的位定义的位定义图图6-4 TMOD各位定义及具体的意义各位定义及具体的意义TMOD各位的功能各位的功能 M1M1和和M0M0操作模式控制位。操作模式控制位。两位可形成四种编码,对应于四种模式。两位可形成四种编码,对应于四种模式。见见 表表6-16-1。表表6-1 M1,M0控制的四种工作模式控制的四种工作模式 C/T C/T计数器计数器/定时器方式选择位。定时器方式选择位。C/T=0C/T=0,设置为,设置为定时方式定时方式。定时器计数。定时器计数89C5189C51片内脉冲,即对机器周期计片内脉冲,即对机器周期计数。数。C/T=1 C/T=1,设
8、置为,设置为计数方式计数方式。计数器的。计数器的输入输入来自来自T0T0(P3.4P3.4)或或T1T1(P3.5P3.5)端)端的的外部脉冲外部脉冲 。TMOD各位的功能各位的功能 GATE GATE门控位。门控位。GATE=0 GATE=0,只要用软件使只要用软件使TR0TR0(或(或TR1TR1)置)置1 1就可以就可以启动定时器,而不管启动定时器,而不管INT0INT0(或(或INT1INT1)的)的电平是高还是低。电平是高还是低。GATE=1GATE=1,只有只有INT0INT0(或(或INT1INT1)引脚为高电平且由)引脚为高电平且由软件使软件使TR0TR0(或(或TR1TR1)
9、置)置1 1时,才能启动时,才能启动定时器工作。定时器工作。TMOD各位的功能各位的功能6.2.2 控制器寄存器控制器寄存器 TCONlTCONTCON除可字节寻址外,各位还可位寻址除可字节寻址外,各位还可位寻址。l89C5189C51系统复位时,系统复位时,TCONTCON的所有位被清的所有位被清0 0。lTCONTCON各位的定义格式如各位的定义格式如 图图6-56-5所示。所示。lTCONTCON各位的功能:各位的功能:lTCONTCON各位定义及具体的意义归纳如各位定义及具体的意义归纳如 图图6-66-6所示。所示。TF1 TR1 TF0 TR0 IE1IE0IT1IT0TCON(88
10、H)8FH 8EH 8DH 8CH 8BH 8AH 89H 88H图图6-5 控制寄存器控制寄存器TCON的位定义的位定义图图6-6 TCON各位定义及具体的意义各位定义及具体的意义TCON各位的功能各位的功能 TF1 TF1(TCON.7)T1TCON.7)T1溢出标志位。溢出标志位。当当T1T1溢出溢出时,由硬件自动使中断触发器时,由硬件自动使中断触发器TF1TF1置置1 1,并,并CPUCPU申请中断。申请中断。当当CPUCPU响应中断进入中断服务程序后响应中断进入中断服务程序后,TF1TF1由被硬件由被硬件自动清自动清0 0。TF1TF1也可以用也可以用软件清软件清0 0。TF0 TF
11、0(TCON.5)T0TCON.5)T0溢出标志位。溢出标志位。其功能和操作情况同其功能和操作情况同TF1TF1。TR1(TCON.6)T1 TR1(TCON.6)T1运行控制位。运行控制位。可通过软件置可通过软件置1 1(TR1=1TR1=1)或清)或清0 0(TR1=0TR1=0)来)来启动启动或或 关闭关闭 T1T1。在程序中用指令在程序中用指令“SETB TR1SETB TR1”使使TR1TR1位置位置1 1,定,定时器时器T1T1便开始计数。便开始计数。TR0(TCON.4)T0 TR0(TCON.4)T0运行控制位。运行控制位。其功能和操作情况同其功能和操作情况同TR1TR1。TC
12、ON各位的功能各位的功能 IE1IE1,IT1IT1,IE0IE0,IT0(TCON.3IT0(TCON.3TCON.0)TCON.0)外部中断外部中断INT1INT1,INT0INT0请求及请求方式控制请求及请求方式控制位。前一章已经讲过。位。前一章已经讲过。TCON各位的功能各位的功能6.3 定时器的四种模式及应用定时器的四种模式及应用 l 模式模式 0 0 及其应用及其应用l 模式模式 1 1 及其应用及其应用l 模式模式 2 2 及其应用及其应用l 模式模式 3 3 及其应用及其应用l 综合应用举例综合应用举例6.3.1 模式模式 0 及其应用及其应用一、模式一、模式 0 0 的逻辑电
13、路结构的逻辑电路结构二、模式二、模式 0 0 工作特点工作特点三、模式三、模式 0 0 的应用举例的应用举例一、模式一、模式 0 的逻辑电路结构的逻辑电路结构T0T0在模式在模式 0 0 的逻辑电路结构如图所示。的逻辑电路结构如图所示。(T1T1相同)相同)T0(或(或T1)模式)模式0结构结构13位计数器位计数器二、模式二、模式 0 工作特点工作特点l在这种模式下,在这种模式下,1616位寄存器(位寄存器(TH0TH0和和TL0TL0)只)只用了用了1313位。其中位。其中TL0TL0的高的高3 3位未用位未用,其余,其余5 5位位为整个为整个1313位的低位的低5 5为,为,TH0TH0占
14、高占高8 8位。当位。当TL0TL0的的低低5 5位溢出时,向位溢出时,向TH0TH0进位;进位;TH0TH0溢出时,向溢出时,向中断标志中断标志TF0TF0进位(硬件置位进位(硬件置位TF0TF0),并申请),并申请中断。中断。l定时时间为:定时时间为:t=(2 t=(21313T0T0初值初值)振荡周期振荡周期12126.3.2 模式模式 1 及其应用及其应用一、模式一、模式 1 1 的逻辑电路结构的逻辑电路结构二、模式二、模式 1 1 工作特点工作特点三、模式三、模式 1 1 的应用举例的应用举例一、模式一、模式 1 的逻辑电路结构的逻辑电路结构T0T0在模式在模式 1 1 的逻辑电路结
15、构如的逻辑电路结构如 图图6-76-7所示。所示。(T1T1相同)相同)图图6-7 T0(或(或T1)模式)模式1结构结构16位计数器位计数器二、模式二、模式 1 工作特点工作特点l该模式对应的是一个该模式对应的是一个1616位的定时器位的定时器/计数器计数器。l用于定时工作方式时,定时时间为:用于定时工作方式时,定时时间为:t=(2t=(21616T0T0初值初值)振荡周期振荡周期1212l用于计数工作方式时,计数长度最大为:用于计数工作方式时,计数长度最大为:2 21616=65536=65536(个外部脉冲)(个外部脉冲)三、模式三、模式 1 的应用举例的应用举例(例(例6-16-1)l
16、例例6-16-1:用定时器:用定时器T1T1产生一个产生一个50Hz50Hz的的方波,由方波,由 P1.1 P1.1输出。使用程序查询输出。使用程序查询方式,方式,fosc=12MHzfosc=12MHz。三、模式三、模式 1 的应用举例的应用举例(例(例6-16-1)解:解:方波周期方波周期T=1/50=0.02s=20msT=1/50=0.02s=20ms 用用T1T1定时定时10ms10ms 计数初值计数初值X X为:为:X=X=2 2161612101000/1212101000/12 =65536 =6553610000=55536=D8F0H10000=55536=D8F0H(TH
17、1)=D8H (TL1)=F0HGATE C/T M1 M0 GATEM1C/TM0定时器定时器T1定时器定时器T0TMOD(89H)D7 D6 D5 D4 D3 D2 D1 D0图图6-3 工作模式寄存器工作模式寄存器TMOD的位定义的位定义10000000三、模式三、模式 1 的应用举例的应用举例(例(例6-46-4)源程序清单:源程序清单:MOV TMOD,#10H ;设置;设置T1为模式为模式1 SETB TR1 ;启动定时;启动定时LOOP:MOV TL1,#0D8H ;送初值;送初值 MOV TH1,#0F0H JNB TF1,$;查询定时时间到否;查询定时时间到否 CLR TF1
18、 ;产生溢出,清标志位产生溢出,清标志位 CPL P1.1 ;取反;取反 SJMP LOOP ;重复循环;重复循环6.3.3 模式模式 2 及其应用及其应用一、模式一、模式 2 2 的逻辑电路结构的逻辑电路结构二、模式二、模式 2 2 工作特点工作特点三、模式三、模式 2 2 的应用举例的应用举例一、模式一、模式 2 的逻辑电路结构的逻辑电路结构lT0T0在模式在模式 2 2 的逻辑电路结构如的逻辑电路结构如 图图6-86-8所示。(所示。(T1T1相同)相同)lTL0TL0计数溢出时,不仅使溢出中断标志位计数溢出时,不仅使溢出中断标志位TF0TF0置置1 1,而且还自,而且还自动把动把TH0
19、TH0中的内容重新装载到中的内容重新装载到TL0TL0中。中。lTL0TL0用作用作8 8位计数器,位计数器,TH0TH0用以保存初值。用以保存初值。图图6-8 T0(或(或T1)模式)模式2结构结构8位计数器位计数器二、二、模式模式 2 工作特点工作特点l该模式把该模式把TL0(TL1)TL0(TL1)配置成一个可以自动重装载的配置成一个可以自动重装载的8 8位定时器位定时器/计数器。计数器。l程序初始化时,程序初始化时,TL0TL0和和TH0TH0由软件赋予相同的初值。由软件赋予相同的初值。l用于用于定时工作定时工作方式时,定时时间为:方式时,定时时间为:t=(2t=(28 8TH0TH0
20、初值初值)振荡周期振荡周期1212l用于用于计数工作计数工作方式时,计数长度最大为:方式时,计数长度最大为:2 28 8=256=256(个外部脉冲)(个外部脉冲)l该模式可省去软件中重装常数的语句,并可产生相该模式可省去软件中重装常数的语句,并可产生相当精确的定时时间,当精确的定时时间,适合于作串行口波特率适合于作串行口波特率发生器。发生器。三、模式三、模式 2 的应用举例的应用举例(例(例6-26-2)l例例6-26-2:当:当P3.4P3.4引脚上的电平发生负引脚上的电平发生负跳变时,跳变时,从从P1.0P1.0输出一个输出一个500s500s的的同步脉冲。请编程序实现该功能。同步脉冲。
21、请编程序实现该功能。查询方式,查询方式,fosc=6MHzfosc=6MHz。三、模式三、模式 2 的应用举例的应用举例(例(例6-26-2)解:解:(1 1)模式选择)模式选择 选选T0T0为模式为模式2 2,外部事件计数方式。,外部事件计数方式。当当P3.4P3.4引脚上的电平发生负跳变时,引脚上的电平发生负跳变时,T0T0计数器加计数器加1 1,溢出标,溢出标志志TF0TF0置置1 1;然后改变;然后改变T0T0为为500s500s定时工作方式,并使定时工作方式,并使P1.0P1.0输输出由出由1 1变为变为0 0。T0T0定时到产生溢出,使定时到产生溢出,使P1.0P1.0输出恢复高电
22、平,输出恢复高电平,T0T0又恢复外部事件计数方式。又恢复外部事件计数方式。如如 图图6-96-9 所示。所示。图图6-9 功能描述功能描述三、模式三、模式 2 的应用举例的应用举例(例(例6-26-2)(2 2)计算初值)计算初值l T0工作在外部事件计数方式工作在外部事件计数方式,当计数到,当计数到28-1时,时,再加再加1计数器就会溢出。设计数初值为计数器就会溢出。设计数初值为X,当再出,当再出现一次外部事件时,计数器溢出。现一次外部事件时,计数器溢出。则则:X+1=28 X=28 1=11111111B=0FFHl T0工作在定时工作方式工作在定时工作方式,设晶振频率为,设晶振频率为6
23、MHz,500s相当于相当于250个机器周期。因此,初值个机器周期。因此,初值X为为 (28X)2s=500s X=6=06H三、模式三、模式 2 的应用举例的应用举例(例(例6-26-2)(3 3)程序清单)程序清单START:MOV TMOD,#06H ;设置;设置T0为模式为模式2,外部计数方式外部计数方式 MOV TL0,#0FFH ;T0计数器初值计数器初值 MOV TH0,#0FFH SETB TR0 ;启动;启动T0计数计数 LOOP1:JBC TF0,PTFO1 ;查询;查询T0溢出标志,溢出标志,;TF0=1时转,且清时转,且清TF0=0 SJMP LOOP1 ;三、模式三、
24、模式 2 的应用举例的应用举例(例(例6-26-2)PTFO1:CLR TR0 ;停止计数;停止计数 MOV TMOD,#02H ;设置;设置T0为模式为模式2,定时方式,定时方式 MOV TL0,#06H ;送初值,定时;送初值,定时500s MOV TH0,#06H CLR P1.0 ;P1.0清清0 SETB TR0 ;启动定时;启动定时500s LOOP2:JBC TF0,PTFO2 ;查询;查询T0溢出标志,溢出标志,;TF0=1时转,且清时转,且清TF0=0 ;(第一个(第一个500s到否?)到否?)SJMP LOOP2 ;等待中断,虚拟主程序;等待中断,虚拟主程序 PTFO2:S
25、ETB P1.0 ;P1.0置置1 CLR TR0 ;停止计数;停止计数 SJMP START三、模式三、模式 2 的应用举例的应用举例(例(例6-36-3)l例例6-36-3:利用定时器:利用定时器T1T1的模式的模式2 2对外对外部信号计数。要求每计满部信号计数。要求每计满100100次,将次,将 P1.0P1.0端取反。端取反。三、模式三、模式 2 的应用举例的应用举例(例(例6-36-3)解:解:(1)选择模式)选择模式 外部信号由外部信号由T1(P3.5)引脚输入,每发生一次负)引脚输入,每发生一次负跳变计数器加跳变计数器加1,每输入,每输入100个脉冲,计数器发生个脉冲,计数器发生
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 定时器 应用 举例
限制150内