- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MCS-51的时器
定时方法
在控制系统中,常常要求有一些实时时钟以实现定时或延时控制,如定时中断、定时检测、定时扫描等,也往往要求有计数器能对外部事件计数。要实现定时或延时控制,有3种主要的方法:软件定时、不可编程的硬件定时和可编程的硬件定时器定时。
软件定时
即让机器执行一个程序段,这个程序段本身没有具体的执行目的,但由于执行每条指令都需要时间,则执行一个程序段就需要一个固定的时间。通过正确地挑选指令和安排循环次数很容易实现软件懂事,但软件定时占用CPU,降低了CPU的利用率。
不可编程的硬件定时
可以采用如小规模集成电路器件555,外接定时不见(电阻和电容)构成。这样的定时电路简单,而且通过改变电阻和电容,可以使定时在一定的范围内改变。但是,这种定时电路在硬件连接好以后,定时值及定时范围不能由程序(软件)来控制和改变,由此就产生了可编程的定时器电路
可编程定时器
为方便微型计算机系统的设计和应用而研制的计数电路。它的定时值及其范围,可以很容易地由软件来确定和改变,能够满足各种不同的定时要求,因而在微型计算机系统的设计和应用中得到广泛的应用。
定时和计数功能
为了使用方便,并增加单片机的功能,就干脆把计数电路集成在MCS-51单片机芯片中,称为定时器。AT89C51有两个可编程的定时器/计数器:T0和T1。它们可以工作在定时状态,也可以工作在计数工作状态。作为定时器时,不能再作为计数器;反之亦然。
定时器/计数器是“加1计数器”
AT89C51有两个16位的定时器/计数器(T0和T1),其核心是一个“加1计数器”,其基本功能是加1功能。
计数器
当定时器/计数器作“计数器”用时,可对接到14引脚(T0/P3.4)或15引脚(T1/P3.5)的脉冲信号数进行计数。每当引脚上发生从“1”到“0”的负跳变时,计数器加1。单片机内部的操作是:在一个机器周期内检测到该引脚为高电平“1”,在相邻的下一机器周期内检测到低电平“0”时,计数器确认加1。所以,每检测一个外来脉冲信号,至少需要两个机器周期。显然,所能检测的最高外部脉冲信号频率为晶振频率的1/24。若晶振频率为12MHz,所能检测的最高外部信号频率为500kHz。还要注意,当作为“计数器”用时,要求外部计数脉冲的高电平、低电平的持续时间至少各要一个机器周期,但占空比无特别要求。
定时器
当定时器/计数器作“定时器”用时,定时信号来自内部时钟发生电路,每个机器周期等于12个振荡周期,每过一个机器周期,计数器加1。当晶振频率为12MHz,则机器周期为1us;在此情况下,若计数器中的计数为100,则“定时”=100*1us=100us。
与定时器/计数器有关的特殊功能寄存器
为实现定时器/计数器的各种功能,还用到SFR中的几个特殊功能寄存器,见表1-1
表1-1 与定时器/计数器有关的特殊功能寄存器
定时器/计数器的SFR 用途 地址 有无位寻址 TCON 控制寄存器 88H 无 TMOD 方式寄存器 89H 无 TL0 定时器T0低字节 8AH 无 TL1 定时器T1低字节 8BH 无 TH0 定时器T0高字节 8CH 无 TH1 定时器T1高字节 8DH 无
定时/计数器的控制
AT89C51单片机定时器/计数器的工作由两个特殊功能寄存器TMOD和TCON的相关位来控制。TMOD用于设置它的工作方式,TCON用于控制其启动和中断请求。
工作方式寄存器TMOD
TMOD用于设置定时器/计数器的工作方式,其字节地址为89H。低4位用于T0,高4位用于T1。虽有位名称,但无位地址,不可进行位操作。TMOD中的结构和各位名称见表1-2。
表1-2 TMOD中的结构及各位名称
T1 T0 位名称 GATE C/ M1 M0 GATE C/ M1 M0
(1)M1、M0:工作方式选择位。M1、M0为二位二进制数可表示四种工作方式,见表1-3
表1-3 M0/M1的工作方式
M1M0 工作方式 功能 容量 00 0 13位计数器,N=13 213=8192 01 1 16位计数器,N=16 216=65536 10 2 两个8为计数器,初值自动装入,N=8 28=256 11 3 两个8为计数器,仅适用于T0,N=8 28=256
(2)C/:计数/定时方式选择位。
C/=1,为计数工作方式,对输入到单片机T0、T1引脚的外部信号脉冲计数,负跳变脉冲有效,用作计数器。
C/=0,为定时工作方式,对片内机器周期(1个机器周期等于12个晶振周期)信号计数,用作定时器。
(3)GATE:门控制位。
GATE=0,定时器/计数器的运行之手只受TCON中的运行控制位TR0/TR1的控制。
GATE=1,定时器/计数器的运行同
文档评论(0)