单片机05(10)-第五章MCS-51单片机的定时器计数器ppt_第1页
单片机05(10)-第五章MCS-51单片机的定时器计数器ppt_第2页
单片机05(10)-第五章MCS-51单片机的定时器计数器ppt_第3页
单片机05(10)-第五章MCS-51单片机的定时器计数器ppt_第4页
单片机05(10)-第五章MCS-51单片机的定时器计数器ppt_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、第五章 MCS-51单片机的定时器/计数器 MCS-51单片机内部共有两个16位可编程的定时器/计数器,即 定时器T0和定时器T1它们既有定时功能又有计数功能。5-1 MCS-51单片机定时器结构 定时器/计数器的基本结构如图5.1所示。基本部件是两个8位计 数器(其中TH1和TL1是T1的计数器,TH0和TL0是T0的计数器)。80511TH1TL0TH0TLTMODTCON1T0T)1(T5.3P)T(P04.3图5.1 定时器/计数器结构 在作定时器使用时,输入的时钟脉冲是由晶体振荡器的输出 经12分频后得到的。 当它用作对外部事件计数时,接相应的外部输入引脚T0(P3.4)或T1(P3

2、.5)。5-2 定时器工作方式控制字1. 定时器控制寄存器(TCON) 各位定义:位地址8FH8EH8DH8CH8BH8AH89H88H位符号TF1TR1TF0TR0IE1IT1IE0IT0TF0/TF1:查询方式:禁止中断,软件查询TF0的值,软件清“0”中断方式:硬件查询TF0的值,硬件自动清“0”2. 工作方式寄存器(TMOD) 功能:确定定时器的工作方式及功能选择。 不能位寻址,TMOD各位的定义: D7D6D5D4D3D2D1D0GATEGATET/C1M0MT/C1M0M GATE:门控位 0:定时器/计数器仅受TR的控制 1:只有 INT 为高电平,且TR=1时,定时器/计数器才

3、工作 T/C:功能选择位 0:定时功能 1:计数功能 1M0M:工作方式选择位 00 方式001 方式110 方式211 方式33. 中断允许控制寄存器(1E)0AFH0AEH0ADH0ACH0ABH0AAH0A9H0A8HEA/ESET1EX1EF0EX0每一位的内容在前面已作详细介绍,在此不作赘述。查询方式时:关闭中断,使用软件查询TF0/TF1 中断方式时:开放中断,使用硬件自动查询TF0/TF15-3 定时器的工作方式MCS-51的定时器/计数器共有四种工作方式。工作在方式0、方式1和方式2时,定时器/计数器0和定时器/计数器1的工作原理完全一样,现以定时器/计数器0为例介绍前三种工作

4、方式。1. 方式0(M1M0=00)(1)电路逻辑结构 方式0是13位计数结构的工作方式,其计数器由TH0全部8位和TL0的低5位构成。TL0高三位弃之不用。图5.2 是定时器/计数器0工作在方式0的逻辑结构。晶体振荡器0M1MTCGATE120T1TC0TC0INT00THTL0TF0TR供中断或查询使用+低五位高八位 图5.2 定时器/计数器方式0逻辑结构当 0T/C时,多路转换开关接通 振 荡 脉冲的12分频输出, 13位计数器以此作为计数 脉冲,这时实现定时功能当 1T/C 时, 多路换开关接通计数引脚(T0),计 数 脉冲由外部引入,当计数 脉冲发生负跳变时,计数器加1,这时实现计数

5、功能。不管哪种功 能,当13位计数 发生溢 出时,硬件自动把13位清零,同时硬件置 位溢出标志位TF0。 在这里需要说明门控位(GATE)的用途,当GATE = 0时,或输出的高电平与 0INT无关,此时与门的输出只受运行控制位T R0控 制。如果TR0=0,则与门输出为低电平,则模 拟开关断开,定时器/计数 器不工作。如果TR01,则与门输出为高电平,则模 拟开关闭合,定时器/计数器工作。 当GATE=1时,只有TR0和 0INT 同时为高电平,定时器/计数器才工作,否则,定时器/计数器不工作。(2)定时和计数的应用 计数范围:1213 计数计算公式:计数值213计数初值 定时范围:1机器周

6、期213机器周期 定时计算公式:定时时间(213定时初值)机器周期 如果晶振频率为6MHz ,则最大定时时间为: 2131/6MHz122142. 方式1(M1M0=01) 方式1是16位计数结构的工作方式,其计数器由TH0全部8位和TL0的全部8位构成。其逻辑电路和工作情况与方式0完全相同,所不同的只是计数 器的位数。MCS-51单片机之所以设置几乎完全一 样 的方式0和方式1,是出于与 MCS-48单片机兼容的要求。因为,MCS48单片机的定时器/计数器是13位的计数结构。s 定时和计数的应用 计数范围:1216 计数计算公式:计数值216计数初值 定时范围:1机器周期216机器周期 定时

7、计算公式:定时时间(216定时初值)机器周期 如果晶振频率为6MHz ,则最大定时时间为:2161/6MHz12217( )s【例5-1】设单片机晶振频率为6MHZ,使用T1以工作方式1,产生周 期为500s的等宽正方波,并由0 . 1P输出,以中断方式编程。分析:题目的要求可用下图来表示。0.1P250s 250s 8051。 1)计算计数初值 设计数初值为x,由定时计算公式知:H83TL,FFH0THH83FF0 xB0110,1000,1111,1111xD65411xs250s2)x2(1116 2)专用寄存器的初始化T/C1M0MTC /1M0MD7D6D5D4D3D2D1D0GAT

8、EGATE 所以,TMOD应设置为:10H 开放定时器/计数器1中断,所以IE应设置为:88H 3) 编写程序ORG0000HSJMPMAINORG001BHAJMPINTT1MAIN:MOVTMOD, #10HMOVIE,#88HMOVTH1, #0FFHMOVTL1, #83H;初始化LOOP:SETBTR1;启动HERE:SJMPHERE;等待中断AJMPLOOPINTT1:MOVTH1, #0FFH;中断响应程序MOVTL1, #83HCPLP1.0RETI;中断返回3.方式2(M1M0=10)(1)电路逻辑结构 电路逻辑结构如图5.3所示,由图可以总结出方式2具有以下特点:晶体振荡器

9、0M1MTCGATE120T1TC0TC0INT0TL0TF0TR中断查询0TH重新装入控制+ 图5.3 定时器/计数器方式0逻辑结构8位计数器TL0作计数器,TH0作预置寄存器使用,计数溢出时,TH0中的 计数初值自动装入TL0,即TL0是一个自动恢复初值的8位计数器。在使用时,要把计数初值同时装入TL0和TH0中。优点是提高定时精度,减少了程序的复杂程度。(2)定时和计数的应用 计数范围:128 计数计算公式:计数值28计数初值 定时范围:1机器周期28机器周期 定时计算公式:定时时间(28定时初值)机器周期【例5-2】 用定时器1以工作方式2实现计数,每计数100,累加器进行加1操作,以

10、查询方式编写程序。解:1)计算计数初值CH9TLTHCH9D156x100 x21182)专用寄存器初始化T/C1M0MT/C1M0MD7D6D5D4D3D2D1D0GATEGATE 0 1 1 0 0 0 0 0所以,TMOD60H使用查询方式,所以关闭中断,即IE=00H3) 程序设计MOVIE,#00H;禁止中断MOVTMOD,#60H;T1工作在方式2,计数功能MOVTH1,#9CHMOVTL1,#9CH;装载计数初值START:SETBTR1;启动DEL:JBCTF1, LOOPAJMPDELLOOP:INCA;溢出响应程序AJMPSTART4. 方式3(M1M0=11) 前面介绍的

11、三种工作方式对两个定时器/计数器而言,工作原理是完全一样的。但在工作方式3下,两个定时器工作原理却完全不同,因此要分开介绍。(1)工作方式3下的定时器/计数器0 在方式3下,定时器/计数器0被拆为两个独立的8位的计数器TL0和TH0。其中TL0 既可以作为计数功能使用,又可以作定时功能使用,享用定时器/ 计数器0的运行控制位TR0和溢出标志位TF0。对于TH0,只能作定时器使用,由于定时器/ 计数器0的运行控制位TR0和溢出标志位TF0已被TL0占用,因此TH0占用了定时器/计数器1的运行控制位TR1和溢出标志位TF1。即定时的启动和停止受TR1的状态控制,而计数溢出时则置位TF1。(2)工作方式3下的定时器/计数器1 当定时器/计

温馨提示

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

评论

0/150

提交评论