单片机原理及接口技术-第六章-定时器及应用课件_第1页
单片机原理及接口技术-第六章-定时器及应用课件_第2页
单片机原理及接口技术-第六章-定时器及应用课件_第3页
单片机原理及接口技术-第六章-定时器及应用课件_第4页
单片机原理及接口技术-第六章-定时器及应用课件_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章

定时器及应用主讲:武桐第六章

定时器及应用主讲:武桐第六章定时器及应用在测控系统中,常常需要有实时时钟和计数器,以实现定时控制以及对外界事件进行计数。MCS-51内部的两个16位定时器/计数器就具有这两种功能,可用于定时控制、延时、对外部事件计数和检测等场合。定时器概述定时器的控制定时器的四种模式及应用定时器的结构和功能工作寄存器和控制寄存器模式1、2、3及应用第六章定时器及应用在测控系统中,常常需2

1、定时器的结构这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。§6.1定时器概述1、定时器的结构这些寄存器之间是通过内部总线和控制逻辑电3§6.1定时器概述89C51定时器的结构如图6-1

所示。◆

有两个16位的定时器/计数器,即T0和T1,它们实际上都是16位加1计数器。◆

T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1和TL1构成。这些寄存器用于存放定时和计数初值。0000H~FFFFH0~65535§6.1定时器概述89C51定时器的结构如图6-1所示4§6.1定时器概述◆每个定时器都可由软件设置为定时工作方式或计数工作方式及其他灵活多样的可控功能方式。这些功能由特殊功能寄存器TMOD和TCON所控制。◆

TMOD主要用于选定定时器的工作方式;TCON主要用于控制定时器的启动与停止。§6.1定时器概述◆每个定时器都可由软件设置为定时工5§6.1定时器概述

2、定时器的功能16位的定时器/计数器的实质上是一个加1的计数器,其控制电路受软件控制、切换。计数的次数和时间之间是相关的。只要计数脉冲的间隔相等,计数值就代表时间的流逝§6.1定时器概述2、定时器的功能16§6.1定时器概述※定时工作方式当定时器/计数器为定时工作方式时,加1信号由振荡器的12分频产生,即每过一个机器周期,计数值增1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。由于一个机器周期等于12个振荡周期,所以计数频率fcount=1/12fosc§6.1定时器概述※定时工作方式当定时器/计数器为定7§6.1定时器概述※定时工作方式例:晶振为12MHz,则计数周期为

T=1/(12*106)Hz*1/12=1微秒最短的定时周期当8051采用12MHz晶振时,一个机器周期为1μs,计数频率为1MHz。§6.1定时器概述※定时工作方式例:晶振为12MHz8§6.1定时器概述※计数工作方式当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿触发计数。在每个机器周期的S5P2期间采样引脚。采样过程:当输入脉冲信号产生由1至0的下降沿时定时器的值加1。>Tcy>Tcy§6.1定时器概述※计数工作方式当定时器/计数器为计9§6.1定时器概述※计数工作方式由于CPU检测一个由1到0的跳变需要两个机器周期,所以计数的最高频率为振荡频率的1/24。为了确保给定电平在变化前至少被采样一次,外部计数脉冲的高低电平均需保持一个机器周期以上。§6.1定时器概述※计数工作方式由于CPU检测一个由10§6.1定时器概述

2、定时器的功能

经过分析,我们知道单片机中的定时器和计数器是一个东西,只不过计数器用来记录外界发生的事情,而定时器则是由单片机提供一个非常稳定的计数源。定时器/计数器是一种可编程部件,在其开始工作前,CPU必须将一些命令(控制字)写入定时器/计数器。这个过程称为定时器/计数器的初始化。§6.1定时器概述2、定时器的功能11§6.1定时器概述

2、定时器的功能

当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计数溢出,才可能中断CPU当前操作。每个定时器/计数器还有4种工作模式。其中模式0-2对T0和T1是一样的,模式3对两者不同。§6.1定时器概述2、定时器的功能12§6.2定时器的控制

1、工作模式寄存器TMOD

2、控制寄存器TCON定时器共有两个控制字,由软件写入TMOD和TCON两个8位寄存器,用来设置T0或T1的操作模式和控制功能。当89C51系统复位时,两个寄存器所有位都被清零。§6.2定时器的控制1、工作模式寄存器TMOD13§6.2定时器的控制

1、工作模式寄存器TMODTMOD用于控制T0和T1的工作模式。TMOD不能位寻址,只能用字节设置定时器的工作模式,低半字节设置T0,高半字节设置T1。89C51系统复位时,TMOD的所有位被清0。89H§6.2定时器的控制1、工作模式寄存器TMODT14图6-3工作模式寄存器TMOD的位定义§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0定时器T1定时器T0TMOD(89H)

bit7bit6bit5bit4bit3bit2bit1bit0图6-3工作模式寄存器TMOD的位定义§6.2定时15TMOD各位的功能①

M1和M0—操作模式控制位。

两位可形成四种编码,对应于四种模式。见表6-1。TMOD各位的功能:§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0定时器T1定时器T0

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能①M1和M0—操作模式控制位。TMOD16表6-1M1,M0控制的四种工作模式§6.2定时器的控制表6-1M1,M0控制的四种工作模式§6.2定时器17TMOD各位的功能②

C/T—计数器/定时器方式选择位。§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0◆

C/T=0,设置为定时方式。定时器计数89C51片内脉冲,即对机器周期计数。◆

C/T=1,设置为计数方式。计数器的输入来自T0(P3.4)或T1(P3.5)端的外部脉冲。

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能②C/T—计数器/定时器方式选择位。§618TMOD各位的功能③

GATE—门控位。§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0◆

GATE=0,只要用软件使TR0(或TR1)置1就可启动定时器,而不管INT0(或INT1)的电平的高低;◆

GATE=1,只有INT0(或INT1)引脚为高电平且由软件使TR0(或TR1)置1时,才能启动定时器工作。

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能③GATE—门控位。§6.2定时器的19§6.2定时器的控制§6.2定时器的控制20§6.2定时器的控制

2、控制寄存器TCONTCON除可字节寻址外,各位还可位寻址。89C51系统复位时,TCON的所有位被清0。TCON各位的定义格式如图所示:TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88HTCON各位的功能。88H§6.2定时器的控制2、控制寄存器TCONTCO21TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H①

TF1(TCON.7)—T1溢出标志位。◆

当T1溢出时,由硬件自动使中断触发器TF1置1,并CPU申请中断。◆当CPU响应中断进入中断服务程序后,TF1由被硬件自动清0。TF1也可以用软件清0。②TF0(TCON.5)—T0溢出标志位。

其功能和操作情况同TF1。TMOD各位的功能§6.2定时器的控制TF1TR1TF022TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H③TR1(TCON.6)—T1运行控制位。◆

可通过软件置1(TR1=1)或清0(TR1=0)来启动或关闭

T1。◆

在程序中用指令“SETBTR1”使TR1位置1,定时器T1便开始计数。④TR0(TCON.4)—T0运行控制位。

其功能和操作情况同TR1。TMOD各位的功能§6.2定时器的控制TF1TR1TF023TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H⑤IE1,IT1,IE0,IT0(TCON.3~TCON.0)◆

外部中断INT1,INT0请求及请求方式控制位。前一章已经讲过。TMOD各位的功能§6.2定时器的控制TF1TR1TF024§6.2定时器的控制§6.2定时器的控制25§6.3定时器的4种模式及应用由上节可知,通过对TMOD中的M1、M0的设置,可以选择四种工作方式。也就是每个定时器可构成4种电路结构模式。在模式0、1和2,T0和T1的工作方式相同,在模式3,两个定时器的方式不同。下面以T0为例,分述各种工作方式的特点和用法。§6.3定时器的4种模式及应用由上节可知26

1、模式0§6.3定时器的4种模式及应用模式0为TL0(5位)、TH0(8位)方式,模式1为TL1(8位)、TH1(8位)方式,其余完全相同。13位计数1、模式0§6.3定时器的4种模式及应用27

2、模式1及应用§6.3定时器的4种模式及应用(1)模式1

的逻辑电路结构图6-7T0(或T1)模式1结构-16位计数器2、模式1及应用§6.3定时器的4种模式及应用(28

2、模式1及应用§6.3定时器的4种模式及应用(1)模式1

的逻辑电路结构该模式对应的是一个16位的定时器/计数器。用于定时工作方式时,定时时间为:

t=(216-T0初值)×振荡周期×12用于计数工作方式时,计数长度最大为:

216=65536(个外部脉冲)2、模式1及应用§6.3定时器的4种模式及应用(29例6-1:用定时器T1产生一个50Hz的方波,由P1.1

输出。使用程序查询方式,fosc=12MHz。§6.3定时器的4种模式及应用(2)模式1

应用举例(例6-1)∵方波周期T=1/50=0.02s=20ms∴用T1定时10ms

计数初值X为:

X=216-=65536-10000=55536=D8F0H解:10ms1212MHz例6-1:用定时器T1产生一个50Hz的方波,由P1.1§30源程序清单:

MOVTMOD,#10H;设置T1为模式1

SETBTR1;启动定时LOOP:MOVTH1,#0D8H;送初值

MOVTL1,#0F0HJNBTF1,$;查询定时时间到否

CLRTF1;产生溢出,清标志位

CPLP1.1;P1.1取反输出

SJMPLOOP;重复循环§6.3定时器的4种模式及应用(2)模式1

应用举例(例6-4)源程序清单:§6.3定时器的4种模式及应用(2)模式131

3、模式2及应用§6.3定时器的4种模式及应用(1)模式2

的逻辑电路结构图6-7T0(或T1)模式2结构-8位计数器3、模式2及应用§6.3定时器的4种模式及应用(32

3、模式2及应用§6.3定时器的4种模式及应用(1)模式2的逻辑电路结构TL0计数溢出时,不仅使溢出中断标志位TF0置1,而且还自动把TH0中的内容重新装载到TL0中。用TL0用作8位计数器,TH0用以保存初值。3、模式2及应用§6.3定时器的4种模式及应用(33

3、模式2及应用§6.3定时器的4种模式及应用(2)模式2的工作特点该模式把TL0(TL1)配置成一个可以自动重装载的8位定时器/计数器;在程序初始化时,TL0和TH0由软件赋予相同的初值;用于定时工作方式时,定时时间为:t=(28-TH0初值)×振荡周期×123、模式2及应用§6.3定时器的4种模式及应用(34

3、模式2及应用§6.3定时器的4种模式及应用(2)模式2的工作特点用于计数工作方式时,计数长度最大为:28=256(个外部脉冲);该模式可省去软件中重装常数的语句,并可产生相当精确的定时时间,适合于作串行口波特率发生器。3、模式2及应用§6.3定时器的4种模式及应用(35例6-2:利用定时器T1的模式2对外部信号计数。要求设计满100次,将P1.0端取反。§6.3定时器的4种模式及应用解:(1)选择模式外部信号由T1(P3.5)引脚输入,每发生一次负跳变计数器加1,每输入100个脉冲,计数器发生溢出中断,中断服务程序将P1.0取反一次。例6-2:利用定时器T1的模式2对外部信号计数。§6.336§6.3定时器的4种模式及应用(1)选择模式T1计数工作方式模式2的模式字为(TMOD)=60H。

T0不用时,TMOD的低4位可任取,但不能进入模式3,一般取0。(2)计算T1的计数初值X=28

-100=156D=9CH

因此:TL1的初值为9CH,重装初值寄存器TH1=9CH。§6.3定时器的4种模式及应用(1)选择模式(2)计算T37(3)程序清单MAIN:MOVTMOD,#60H;设置T1为模式2,外部计数方式

MOVTL1,#9CH;T1计数器初值

MOVTH1,#9CHMOVIE,#88H;定时器开中断

SETBTR1;启动T1计数HERE:SJMPHERE;等待中断

ORG001BH;中断服务程序入口

CPLP1.0RETI§6.3定时器的4种模式及应用(3)程序清单§6.3定时器的4种模式及应用38例6-3:已知89C51单片机的fOSC=6MHz,请利用T0和P1.0输出矩形波。矩形波高电平宽为50μs,低电平为300μs。解:(1)输出及模式的确定§6.3定时器的4种模式及应用50μs300μsP1.0T0采用定时工作方式模式2,模式字为(TMOD)=02H例6-3:已知89C51单片机的fOSC=6MHz,39(2)设置定时器初值X§6.3定时器的4种模式及应用T0采用模式2作50μs定时的初值:(28-X)×12/(6×106)=50×10-6sX=256-50×10-6×6×106/12=231=E7H作300μs定时的初值:(28-X)×12/(6×106)=300×10-6sX=256-300×10-6×6×106/12=106=6AH(2)设置定时器初值X§6.3定时器的4种模式及应用T040(3)主程序清单

MOVTMOD,#02H;上电,转向主程序L2:CLRP1.0;P1.0输出低电平 CLRTR0;关闭T0

MOVTH0,#6AH;置入定时300μs初值

MOVTL0,#6AH

SETBTR0;启动T0§6.3定时器的4种模式及应用LOOP1:JBCTF0,L1;查询300μs时间到?到转L1SJMPLOOP1;时间未到,转LOOP1,继续查询

(3)主程序清单§6.3定时器的4种模式及应用LOOP141L1:SETBP1.0;P1.0输出高电平

CLRTR0;关闭T0

MOVTH0,#0E7H;置入定时50μs初值MOVTL0,#0E7H

SETBTR0;启动T0§6.3定时器的4种模式及应用LOOP2:JBCTF0,L2;查询50μs时间到?到转L2SJMPLOOP2;时间未到,转LOOP2,继续查询

L1:SETBP1.042例6-4:已知89C51单片机的fOSC=12MHz,采用T1定时模式2。编写由P1.0和P1.1引脚分别输出周期为2ms和500μs的方波。解:(1)输出及模式的确定§6.3定时器的4种模式及应用500μs2msP1.1T1采用定时工作方式模式2,模式字为(TMOD)=20HP1.0例6-4:已知89C51单片机的fOSC=12MHz,43(2)设置定时器初值X§6.3定时器的4种模式及应用T1采用模式2作250μs定时的初值:(28-X)×12/(12×106)=250×10-6sX=256-250×10-6×12×106/12=6=06H

∴T1的低8位为06H,高8位为06H(2)设置定时器初值X§6.3定时器的4种模式及应用T144(3)主程序清单

MOVR2,#04H;R2为计数器,计1ms,初值为4 CLRP1.0;P1.0,P1.1输出低电平 CLRP1.1 MOVTMOD,#20H;定时器T1工作在模式2L2:

MOVTH1,#06H;置入定时250μs初值

MOVTL1,#06H

SETBTR1;启动T1§6.3定时器的4种模式及应用(3)主程序清单§6.3定时器的4种模式及应用45LOOP:JBCTF1,L1;查询到250μs?

SJMPLOOP L1:

CPLP1.1;P1.1取反,输出

500μs方波CLRTR1;关闭T1DJNZR2,L2;查询到1ms?未到转L2 CPLP1.0;到1ms,P1.1取反,输出2ms方波

MOVR2,#04H;重置计数器初值

LJMPL2§6.3定时器的4种模式及应用LOOP:JBCTF1,L1;查46ThankYou!ThankYou!第六章

定时器及应用主讲:武桐第六章

定时器及应用主讲:武桐第六章定时器及应用在测控系统中,常常需要有实时时钟和计数器,以实现定时控制以及对外界事件进行计数。MCS-51内部的两个16位定时器/计数器就具有这两种功能,可用于定时控制、延时、对外部事件计数和检测等场合。定时器概述定时器的控制定时器的四种模式及应用定时器的结构和功能工作寄存器和控制寄存器模式1、2、3及应用第六章定时器及应用在测控系统中,常常需49

1、定时器的结构这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。§6.1定时器概述1、定时器的结构这些寄存器之间是通过内部总线和控制逻辑电50§6.1定时器概述89C51定时器的结构如图6-1

所示。◆

有两个16位的定时器/计数器,即T0和T1,它们实际上都是16位加1计数器。◆

T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1和TL1构成。这些寄存器用于存放定时和计数初值。0000H~FFFFH0~65535§6.1定时器概述89C51定时器的结构如图6-1所示51§6.1定时器概述◆每个定时器都可由软件设置为定时工作方式或计数工作方式及其他灵活多样的可控功能方式。这些功能由特殊功能寄存器TMOD和TCON所控制。◆

TMOD主要用于选定定时器的工作方式;TCON主要用于控制定时器的启动与停止。§6.1定时器概述◆每个定时器都可由软件设置为定时工52§6.1定时器概述

2、定时器的功能16位的定时器/计数器的实质上是一个加1的计数器,其控制电路受软件控制、切换。计数的次数和时间之间是相关的。只要计数脉冲的间隔相等,计数值就代表时间的流逝§6.1定时器概述2、定时器的功能153§6.1定时器概述※定时工作方式当定时器/计数器为定时工作方式时,加1信号由振荡器的12分频产生,即每过一个机器周期,计数值增1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。由于一个机器周期等于12个振荡周期,所以计数频率fcount=1/12fosc§6.1定时器概述※定时工作方式当定时器/计数器为定54§6.1定时器概述※定时工作方式例:晶振为12MHz,则计数周期为

T=1/(12*106)Hz*1/12=1微秒最短的定时周期当8051采用12MHz晶振时,一个机器周期为1μs,计数频率为1MHz。§6.1定时器概述※定时工作方式例:晶振为12MHz55§6.1定时器概述※计数工作方式当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿触发计数。在每个机器周期的S5P2期间采样引脚。采样过程:当输入脉冲信号产生由1至0的下降沿时定时器的值加1。>Tcy>Tcy§6.1定时器概述※计数工作方式当定时器/计数器为计56§6.1定时器概述※计数工作方式由于CPU检测一个由1到0的跳变需要两个机器周期,所以计数的最高频率为振荡频率的1/24。为了确保给定电平在变化前至少被采样一次,外部计数脉冲的高低电平均需保持一个机器周期以上。§6.1定时器概述※计数工作方式由于CPU检测一个由57§6.1定时器概述

2、定时器的功能

经过分析,我们知道单片机中的定时器和计数器是一个东西,只不过计数器用来记录外界发生的事情,而定时器则是由单片机提供一个非常稳定的计数源。定时器/计数器是一种可编程部件,在其开始工作前,CPU必须将一些命令(控制字)写入定时器/计数器。这个过程称为定时器/计数器的初始化。§6.1定时器概述2、定时器的功能58§6.1定时器概述

2、定时器的功能

当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计数溢出,才可能中断CPU当前操作。每个定时器/计数器还有4种工作模式。其中模式0-2对T0和T1是一样的,模式3对两者不同。§6.1定时器概述2、定时器的功能59§6.2定时器的控制

1、工作模式寄存器TMOD

2、控制寄存器TCON定时器共有两个控制字,由软件写入TMOD和TCON两个8位寄存器,用来设置T0或T1的操作模式和控制功能。当89C51系统复位时,两个寄存器所有位都被清零。§6.2定时器的控制1、工作模式寄存器TMOD60§6.2定时器的控制

1、工作模式寄存器TMODTMOD用于控制T0和T1的工作模式。TMOD不能位寻址,只能用字节设置定时器的工作模式,低半字节设置T0,高半字节设置T1。89C51系统复位时,TMOD的所有位被清0。89H§6.2定时器的控制1、工作模式寄存器TMODT61图6-3工作模式寄存器TMOD的位定义§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0定时器T1定时器T0TMOD(89H)

bit7bit6bit5bit4bit3bit2bit1bit0图6-3工作模式寄存器TMOD的位定义§6.2定时62TMOD各位的功能①

M1和M0—操作模式控制位。

两位可形成四种编码,对应于四种模式。见表6-1。TMOD各位的功能:§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0定时器T1定时器T0

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能①M1和M0—操作模式控制位。TMOD63表6-1M1,M0控制的四种工作模式§6.2定时器的控制表6-1M1,M0控制的四种工作模式§6.2定时器64TMOD各位的功能②

C/T—计数器/定时器方式选择位。§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0◆

C/T=0,设置为定时方式。定时器计数89C51片内脉冲,即对机器周期计数。◆

C/T=1,设置为计数方式。计数器的输入来自T0(P3.4)或T1(P3.5)端的外部脉冲。

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能②C/T—计数器/定时器方式选择位。§665TMOD各位的功能③

GATE—门控位。§6.2定时器的控制

1、工作模式寄存器TMODGATEC/TM1M0GATEM1C/TM0◆

GATE=0,只要用软件使TR0(或TR1)置1就可启动定时器,而不管INT0(或INT1)的电平的高低;◆

GATE=1,只有INT0(或INT1)引脚为高电平且由软件使TR0(或TR1)置1时,才能启动定时器工作。

bit7bit6bit5bit4bit3bit2bit1bit0TMOD各位的功能③GATE—门控位。§6.2定时器的66§6.2定时器的控制§6.2定时器的控制67§6.2定时器的控制

2、控制寄存器TCONTCON除可字节寻址外,各位还可位寻址。89C51系统复位时,TCON的所有位被清0。TCON各位的定义格式如图所示:TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88HTCON各位的功能。88H§6.2定时器的控制2、控制寄存器TCONTCO68TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H①

TF1(TCON.7)—T1溢出标志位。◆

当T1溢出时,由硬件自动使中断触发器TF1置1,并CPU申请中断。◆当CPU响应中断进入中断服务程序后,TF1由被硬件自动清0。TF1也可以用软件清0。②TF0(TCON.5)—T0溢出标志位。

其功能和操作情况同TF1。TMOD各位的功能§6.2定时器的控制TF1TR1TF069TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H③TR1(TCON.6)—T1运行控制位。◆

可通过软件置1(TR1=1)或清0(TR1=0)来启动或关闭

T1。◆

在程序中用指令“SETBTR1”使TR1位置1,定时器T1便开始计数。④TR0(TCON.4)—T0运行控制位。

其功能和操作情况同TR1。TMOD各位的功能§6.2定时器的控制TF1TR1TF070TMOD各位的功能§6.2定时器的控制TF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)

8FH8EH8DH8CH8BH8AH89H88H⑤IE1,IT1,IE0,IT0(TCON.3~TCON.0)◆

外部中断INT1,INT0请求及请求方式控制位。前一章已经讲过。TMOD各位的功能§6.2定时器的控制TF1TR1TF071§6.2定时器的控制§6.2定时器的控制72§6.3定时器的4种模式及应用由上节可知,通过对TMOD中的M1、M0的设置,可以选择四种工作方式。也就是每个定时器可构成4种电路结构模式。在模式0、1和2,T0和T1的工作方式相同,在模式3,两个定时器的方式不同。下面以T0为例,分述各种工作方式的特点和用法。§6.3定时器的4种模式及应用由上节可知73

1、模式0§6.3定时器的4种模式及应用模式0为TL0(5位)、TH0(8位)方式,模式1为TL1(8位)、TH1(8位)方式,其余完全相同。13位计数1、模式0§6.3定时器的4种模式及应用74

2、模式1及应用§6.3定时器的4种模式及应用(1)模式1

的逻辑电路结构图6-7T0(或T1)模式1结构-16位计数器2、模式1及应用§6.3定时器的4种模式及应用(75

2、模式1及应用§6.3定时器的4种模式及应用(1)模式1

的逻辑电路结构该模式对应的是一个16位的定时器/计数器。用于定时工作方式时,定时时间为:

t=(216-T0初值)×振荡周期×12用于计数工作方式时,计数长度最大为:

216=65536(个外部脉冲)2、模式1及应用§6.3定时器的4种模式及应用(76例6-1:用定时器T1产生一个50Hz的方波,由P1.1

输出。使用程序查询方式,fosc=12MHz。§6.3定时器的4种模式及应用(2)模式1

应用举例(例6-1)∵方波周期T=1/50=0.02s=20ms∴用T1定时10ms

计数初值X为:

X=216-=65536-10000=55536=D8F0H解:10ms1212MHz例6-1:用定时器T1产生一个50Hz的方波,由P1.1§77源程序清单:

MOVTMOD,#10H;设置T1为模式1

SETBTR1;启动定时LOOP:MOVTH1,#0D8H;送初值

MOVTL1,#0F0HJNBTF1,$;查询定时时间到否

CLRTF1;产生溢出,清标志位

CPLP1.1;P1.1取反输出

SJMPLOOP;重复循环§6.3定时器的4种模式及应用(2)模式1

应用举例(例6-4)源程序清单:§6.3定时器的4种模式及应用(2)模式178

3、模式2及应用§6.3定时器的4种模式及应用(1)模式2

的逻辑电路结构图6-7T0(或T1)模式2结构-8位计数器3、模式2及应用§6.3定时器的4种模式及应用(79

3、模式2及应用§6.3定时器的4种模式及应用(1)模式2的逻辑电路结构TL0计数溢出时,不仅使溢出中断标志位TF0置1,而且还自动把TH0中的内容重新装载到TL0中。用TL0用作8位计数器,TH0用以保存初值。3、模式2及应用§6.3定时器的4种模式及应用(80

3、模式2及应用§6.3定时器的4种模式及应用(2)模式2的工作特点该模式把TL0(TL1)配置成一个可以自动重装载的8位定时器/计数器;在程序初始化时,TL0和TH0由软件赋予相同的初值;用于定时工作方式时,定时时间为:t=(28-TH0初值)×振荡周期×123、模式2及应用§6.3定时器的4种模式及应用(81

3、模式2及应用§6.3定时器的4种模式及应用(2)模式2的工作特点用于计数工作方式时,计数长度最大为:28=256(个外部脉冲);该模式可省去软件中重装常数的语句,并可产生相当精确的定时时间,适合于作串行口波特率发生器。3、模式2及应用§6.3定时器的4种模式及应用(82例6-2:利用定时器T1的模式2对外部信号计数。要求设计满100次,将P1.0端取反。§6.3定时器的4种模式及应用解:(1)选择模式外部信号由T1(P3.5)引脚输入,每发生一次负跳变计数器加1,每输入100个脉冲,计数器发生溢出中断,中断服务程序将P1.0取反一次。例6-2:利用定时器T1的模式2对外部信号计数。§6.383§6.3定时器的4种模式及应用(1)选择模式T1计数工作方式模式2的模式字为(TMOD)=60H。

T0不用时,TMOD的低4位可任取,但不能进入模式3,一般取0。(2)计算T1的计数初值X=28

-100=156D=9CH

因此:TL1的初值为9CH,重装初值寄存器TH1=9CH。§6.3定时器的4种模式及应用(1)选择模式(2)计算T84(3)程序清单MAIN:MOVTMOD,#60H;设置T1为模式2,外部计数方式

MOVTL1,#9CH;T1计数器初值

MOVTH1,#9CHMOVIE,#88H;定时器开中断

SETBTR1;启动T1计数HERE:SJMPHERE;等待中断

ORG001BH;中断服务程序入口

CPLP1.0RETI§6.3定时器的4种模式及应用(3)程序清单§6.3定时器的4种模式及应用85例6-3:已知89C51单片机的fOSC=6MHz,请利用T0和P1.0输出矩形波。矩形波高电平宽为50μs,低电平为300μs。解:(1)输出及模式的确定§6.3定时器的4种模式及应用50μs300μsP1.0T0采用定时工作方式模式2,模式字为(TMOD)=02H例6-3:已知89C51单片机的fOSC=6MHz,86(2)设置定时器初值X§6.3定时器的4种模式及应用T0采用模式2作50μs定时的初值:(28-X)×12/(6×106)=50×10-6sX=256-50×10-6×6×106/12=231=E7H作300μs定时的初值:(28-X)×12/(6×106)=300×10-6sX=256-300×10-6×6×106/12=106=6AH(2)设置定时器初值X§6.3定时器的4种模式及应用T087(3)主程序清单

MOVTMOD,#0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论