第06章定时器-计数器.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 定时器/计数器 §6.1 定时器/计数器概述 §6.2 定时器/计数器的控制 §6.3 定时器/计数器的四种模式及应用 §6.4 思考题与习题 §6.1 定时器/计数器概述 §6.1.1 89S51定时器/计数器结构 §6.1.2 89S51定时器/计数器功能 §6.1.1 89S51定时器/计数器结构 89S51定时器/计数器的结构如 图 所示。 有两个16位的定时器/计数器,即定时器0(T0)和定时器1(T1),都是16位加1计数器。 T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1和TL1构成。 §6.1.2 89S51定时器/计数器功能 每个定时器/计数器都可由软件设置为 定时工作方式或 计数工作方式。由特殊功能寄存器TMOD和TCON所控制。 定时器/计数器有四种工作模式。其中模式0-2对T0和T1是一样的,模式3对两者不同。 定时工作方式 定时器计数89S51片内振荡器输出经12分频后的脉冲,即每个机器周期使定时器(T0或T1)的数值加1直至计满溢出。计数速率是fosc/12。 计数工作方式 通过引脚T0(P3.4)和T1(P3.5)能对间隔可能不相等的外部脉冲进行统计计数。当达到所要求的计数值时,单片机进行相应的操作。 当输入脉冲信号产生由1至0的下降沿时计数器的值加1。 CPU检测一个1至0的跳变需要两个机器周期,故最快计数速率是fosc/24。 89S51定时/计数器的工作原理 (1):何时控制启动计数器? 思考: (2):如何控制是定时还是计数? (3):如何控制定时/计数的长短? 由启动控制开关TR来控制计数器是否计数: 当TR=0时:计数器计数脉冲被断开,所以停止工作; 当TR=1时:计数器的计数脉冲输入端与信号源接通, 计数器开始计数(工作)。 定时、计数方式由C/T控制。 当C/T=0时:多路器选择的是系统时钟(fosc/12), 即定时方式; 当C/T=1时:多路器选择的是外部(T0或T1引脚)输入, 即计数方式。 定时/计数的长短由初值寄存器中的计数初值来设定。 §6.2 定时器/计数器的控制 §6.2.1 工作模式寄存器 TMOD §6.2.2 控制器寄存器 TCON §6.2.1 工作模式寄存器 TMOD TMOD用于控制T0和T1的工作模式。 TMOD不能位寻址,只能用字节设置定时器的工作模式,低半字节设置T0,高半字节设置T1。 89S51系统复位时,TMOD的所有位被清0。 TMOD各位的定义格式如图所示。 §6.2.2 控制器寄存器 TCON TCON除可字节寻址外,各位还可位寻址。 89S51系统复位时,TCON的所有位被清0。 TCON各位的定义格式如图所示。 §6.3 定时器/计数器的四种模式及应用 §6.3.1 模式 0 及其应用 §6.3.2 模式 1 及其应用 §6.3.3 模式 2 及其应用 §6.3.4 模式 3 及其应用 §6.3.5 综合应用举例 §6.3.1 模式 0 及其应用 一、模式 0 的逻辑电路结构 (T0模式 0 的逻辑电路结构与T1相同) 二、模式 0 工作特点 三、模式 0 的应用举例 二、模式 0 工作特点 在这种模式下,16位寄存器(TH0和TL0)只用了13位。其中TL0的高3位未用。当TL0的低5位溢出时,向TH0进位;TH0溢出时,向中断标志TF0进位(硬件置位TF0),并申请中断。 三、模式 0 的应用举例 例6-1:设晶振为12MHz,试计算定时器T0工作于模式0时的最大定时时间T。 解:加1计数器为13位,定时时间为: t=(213-T0初值)×振荡周期×12 最大定时时间为“T0初值=0”时。 例6-2:设定时器T0用于定时10ms,晶振为6MHz。试确定T0初值。并编写定时器T0初始化程序段。 解:1)确定T0初值 定时时间: TMOD的低四位为T0的控制位 模式0:M1M0=00, 定时器方式:C/T=0, 门控位不受INT0的影响:GATE=0, ∴ 模式字为 TMOD=0000 0000 B=00H 解:3)编写定时器T0的初始化程序段 主程序: ORG 0100H MAIN: MOV SP,#60H ;设堆栈指针 MOV TMOD,#00H ;选择工作模式 MOV TH0,#63H ;送初值 MOV TL0,

您可能关注的文档

文档评论(0)

rovend + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档