- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE
PAGE119
第六章 定时器/计数器
第一节概述
8051内部提供两个十六位的定时器/计数器T0和T1,它们既可以用作硬件定时,也可以对外部脉冲计数。
计数功能:
所谓计数功能是指对外部脉冲进行计数。外部事件的发生以输入脉冲下降沿有效,从单片机芯片T0(P3.4)和T1(P3.5)两个引脚输入,最高计数脉冲频率为晶振频率的1/24。
定时功能:
以定时方式工作时,每个机器周期使计数器加1,由于一个机器周期等于12个振荡脉冲周期,因此如单片机采用12MHz晶振,则计数频率为12MHz/12=1MHz。即每微秒计数器加1。这样就可以根据计数器中设置的初值计算出定时时间。
第二节定时器/计数器的基本结构、工作方式及应用
一、定时器/计数器基本结构
定时器/计数器的基本结构如图6-1。T0由TH0和TL0两个八位二进制加法计数器组成十六位二进制加法计数器;T1由TH1和TL1两个八位二进制加法计数器组成十六位二进制加法计数器。
TH1TL1
TH1
TL1
TH0
TL0
CPU
TCON
TMOD
图6-1 定时器/计数器基本组成
二、定时器/计数器控制寄存器
定时器方式控制寄存器TMOD
定时器方式控制寄存器地址89H,不可位寻址。TMOD寄存器中高4位定义T1,低4位定义T0。其中M1,M0用来确定所选工作方式如表6—1:
TMOD
位序
B7
B6
B5
B4
B3
B2
B1
B0
位符号
GATE
C/T
M1
M0
GATE
C/T
M1
M0
定时/计数器T1 定时/计数器T0
符号功能说明
符号
功能说明
GATE
门控位。
GATE=0,用运行控制位TR0(TR1)启动定时器。
GATE=1,用外中断请求信号输入端(INT1或INT0)和TR0(TR1)共同启动定时器。
C/T
定时方式或计数方式选择位。
C/T=0,定时工作方式。C/T=1,计数工作方式。
M1M0
工作方式选择位。
M1
M0=00
方式0,13位计数器。
M1
M0=01
方式1,16位计数器。
M1
M0=10
方式2,具有自动再装入的8位计数器。
M1
M0=11
方式3,定时器0分成两个8位计数器,定时器1停止计数。
定时器控制寄存器TCON
定时器控制寄存器TCON地址88H,可以位寻址,TCON主要用于控制定时器的操作及中断控制。有关中断内容在第四章已说明。此处只对定时控制功能加以介绍。
表6—2给出了TCON有关控制位功能:
TCON
位地址
8F
8E
8D
8C
8B
8A
89
88
位符号
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
表6—2 TCON有关控制位功能
符号
TF1
功 能 说 明
计数/计时1溢出标志位。计数/计时1溢出(计满)时,该位置1。在中断方式时,此位作中断标志位,在转向中断服务程序时由硬件自动清0。在查询方式时,也可以由程序查询和清“0”。
TR1 定时器/计数器1运行控制位。
TR1=0,停止定时器/计数器1工作。
TR1=1,启动定时器/计数器1工作。该位由软件置位和复位。
TF0 计数/计时0溢出标志位。计数/计时0溢出(计满)时,该位置1。在中断方式时,此位作中断标志位,在转向中断服务程序时由硬件自动清0。在查询方式时,也可以由程序查询和清“0”。
TR0 定时器/计数器0运行控制位。
TR0=0,停止定时器/计数器0工作。
TR0=1,启动定时器/计数器0工作。该位由软件置位和复位。
系统复位时,TMOD和TCON寄存器的每一位都清零。
三、工作方式及应用
用户可通过编程对专用寄存器TMOD中的M1,M0位的设置,选择四种操作方式。
(一)方式0(以T0为例)
在此方式中,定时寄存器由TH0的8位和TL0的5位(其余位不用)组成一个13位计数器。当GATE=0时,只要TCON中的TR0为1,13位计数器就开始计;当GATE=1以及TR0=1时,13位计数器是否计数取决于INT0引脚信号,当INT0由0变1时开始计数,当INT0由1变为0时停止计数。
当13位计数器溢出时,TCON的TF0位就由硬件置1,同时将计数器清0。当方式0为定时工作方式时,定时时间计算公式为:
(213
-计数初值X)×晶振周期×12
当方式0为计数工作方式时,计数值的范围是:1-213(8192)。
方式0内部逻辑框图如图6—2所示:
T0 启动 C/T=0
TF0 T
文档评论(0)