AT89S51单片机的定时器计数器.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AT89S51单片机片内两个可编程的定时器/计数器T1、T0 结构与功能 两种工作模式和4种工作方式 TMOD和TCON各位的定义及其编程 编程应用案例;6.1 定时器/计数器的结构 定时器/计数器结构如图6-1,定时器/计数器T0由特殊功能寄存器TH0、TL0构成,定时器/计数器T1由特殊功能寄存器TH1、TL1构成。 图6-1 定时器/计数器结构框图 ;两种工作模式(定时器、计数器); 4种工作方式(方式0、方式1、方式2和方式3)。 TMOD用于选择定时器/计数器T0、T1的工作模式和工作方式。 TCON用于控制T0、T1的启动和停止计数,同时包含了T0、T1的状态。;T0、T1不论是工作在定时器模式还是计数器模式,实质都是对脉冲信号进行计数,只不过是计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上的外部脉冲进行计数(见图6-1); 定时器工作模式是对系统的时钟振荡器信号经片内12分频后的内部脉冲信号计数。由于时钟频率是定值,所以12分频后的脉冲信号周期也为定值,所以可根据对内部脉冲信号的计数值计算出定时时间。 ; 计数器的起始计数都是从计数器的初值开始。单片机复位时计数器的初值为0,也可用指令给计数器装入一个新的初值。AT89S51的定时器/计数器属于增1计数器。 6.1.1 工作方式控制寄存器TMOD AT89S51单片机的定时器/计数器工作方式寄存器TMOD用于选择定时器/计数器的工作模式和工作方式,字节地址为89H,不能位寻址,其格式如图6-2所示。 ; 图6-2 TMOD格式 8位分为两组,高4位控制T1,低4位控制T0。 TMOD各位功能。 (1)GATE—门控位。 ?0:仅由运行控制位TRx(x?=?0,1)来控制定时器/计数器运行。 ?1:用外中断引脚INT0*( 或 INT1* )上的电平与运行控制位TRx来共同控制定时器/计数器运行。;(2)M1、M0—工作方式选择位 M1、M0共4种编码,4种工作方式选择,见表6-1。 ;(3)C/T* —计数器模式和定时器模式选择位 0:定时器工作模式,对单片机的晶体振荡器12分频后的脉冲进行计数。 1:计数器工作模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。 ; 6.1.2 定时器/计数器控制寄存器TCON 字节地址为88H,可位寻址,位地址为88H~8FH。格式见图6-3。 ;(1)TF1、TF0—计数溢出标志位。 当计数器计数溢出时,该位置“1”。使用查询方式时,此位作为状态位供CPU查询,但应注意查询有效后,应使用软件及时将该位清“0”。使用中断方式时,此位作为中断请求标志位,进入中断服务程序后由硬件自动清“0”。 (2)TR1、TR0—计数运行控制位。 TR1位(或TR0位)=1,启动定时器/计数器工作的必要条件。 TR1位(或TR0位)=?0,停止定时器/计数器工作。 该位可由软件置“1”或清“0”。 ;6.2 定时器/计数器的4种工作方式 4种工作方式如下。 6.2.1 方式0 M1、M0=00时,被设置为工作方式0,等效逻辑结构框图见图6-4(以定时器/计数器T1为例,TMOD.5、TMOD.4?=?00)。 ; 图6-4 定时器/计数器方式0逻辑结构框图 13位计数器,由TLx(x?=?0,1)低5位和THx高8位构成。TLx低5位溢出则向THx进位,THx计数溢出则把TCON中的溢出标志位TFx置“1”。;图6-2的C/T* 位控制的电子开关决定了定时器/计数器的两种工作模式。 (1)C/T*=0,电子开关打在上面,T1(或T0)为定时器模式,把时钟振荡器12分频后的脉冲作为计数信号。 (2)C/T*=1,电子开关打在下面,T1(或T0)为计数器模式,计数脉冲为P3.4(或P3.5)引脚上的外部输入脉冲,当引脚上发生负跳变时,计数器加1。 GATE位状态决定定时器/计数器的运行控制取决TRx一个条件还是TRx和INTx*(x?=?0,1)引脚状态两个条件。 ; (1) GATE?=0,A点(见图6-4)电位恒为1,B点电位仅取决于TRx状态。TRx?=?1,B点为高电平,控制端控制电子开关闭合,允许T1(或T0)对脉冲计数。TRx?=0,B点为低电平,电子开关断开,禁止T1(或T0)计数。 (2) GATE?=1,B点电位由 INTx* (x=?0,1)的输入电平和TRx的状态这两个条件来确定。当TRx?=?1,且 INTx* =1时,B点才为1,控

文档评论(0)

159****7880 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档