《基于C语言的MCS-51单片机教程》_第18次课-定时计数器.pptxVIP

《基于C语言的MCS-51单片机教程》_第18次课-定时计数器.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

5.1学习目标:

·会描述如何使用定时器进行定时和计数。

·会分析、设置单片机定时器方式寄存器TMOD和控制寄存器TCON,计算定时或计数初值并送入THO和TLO,TH1和TL1。

·会编写定时器TO和T1的中断函数和延时函数。

·会完成开关型传感器与单片机接口电路的设计和编程。

·会进行定时器/计数器和中断系统、LED数码管显示的综合应用,进一步熟悉开发工具。;

5.3.1单片机定时器/计数器

在单片机系统中,常常会有定时控制需求,也经常

要对外部事件进行计数。

·定时,就是设定好一个时间。

·计数,就是计算某段时间内事件发生的次数。

在AT89C51单片机内部集成有两个可编程的定时/计数器:TO和T1,它们既可以用于定时,也可以用于对外部脉冲进行计数。此外T1还常用作串行接口的波特率发生器。;

(1)定时/计数器概述

·8051单片机内部有两个16位的可编程定时/计数

器,称为定时/计数器0(TO)和定时/计数器1(T1)

·8051定时/计数器由TO、T1、方式寄存器TMOD和

控制寄存器TCON四部分组成;

外部启

计数器外

部输人端

T1(P3.5)

TO

8DH8BH

TH1TL1

8位8位

CPU

内部总线

计数溢出

TMOD(89H)

方式寄存器;

定时/计数器的工作过程:

·8051的定时/计数器实质上是加1计数器,根据计数的对象不同可以作为定时器,也可以作为计数器

·作为定时器是对机器周期进行计数

·作为计数器是对TO(P3.4)、T1(P3.5)引脚上输入的外部脉冲进行计数;

THO;

·定时计数器是加法计数器,每来一个计数脉冲,加法器中的内容加1个单位,当由全1加到全0时计满溢出,因而,如果要计N个单位,则首先应向计数器置初值为X,且有:;

(2)定时/计数器的控制寄存器

AT89C51单片机用于定时/计数器的工作由两个特殊功能寄存器

控制。

TMOD用于设置其工作方式

TCON用于控制其启动和中断申请;

M1M0;

·C/T:定时或计数方式选择位

0:工作于定时方式,对片内机周脉冲计数,用作定时器。

1:工作于计数方式,对外部事件脉冲计数,用作计数器

■GATE:门控位

0:运行只受TCON中运行控制位TRO/TR1的控制

1:运行同???受TRO/TR1和外中断输入信号的双重控制。只

有当INTO/INT1=1且TRO/TR1=1,TO/T1才能运行。;

练习:

1.T1,方式1,定时TMOD=

2.T0,方式2,定时TMOD=

D7D6D5D4D3D2D1DO;

其中:

■TF1:T1的溢出标志位

当定时/计数器T1计满时,由硬件使它置位

TR1:定时/计数器T1的启动位

GATE=0时,TR1=0时定时/计数器T1停止工作,TR1=1时定时/计数器T1开始工作。

GATE=1时,在P3.3引脚(INT1)为高电平时,TR1=0时定时/计数器T1停止工作,TR1=1时定时/计数器T1开始工作。;

TF0:定时/计数器TO的溢出标志位

当定时/计数器T0计满时,由硬件使它置位

■TRO:定时/计数器TO的启动位

GATE=0时,TRO=0时定时/计数器TO停止工作,TRO=1时定时/计数器T0开始工作。

GATE=1时,在P3.2引脚(INTO)为高电平时,TRO=0时定时/计数器TO停止工作,TRO=1时定时/计数器TO开始工作。;

M1MO;

振荡器

定时功能

中断

C/T=0

TLXTHX

C/T=1

TX(P3.4/P3.

控制

GATE一

INTX;

·方式1是16位定时/计数器,最大计数值为65536

·工作于计数模式,有:计数值N=65536-初值X

·工作于定时模式,定时时间T计算公式为

定时时间T=(65536-初值X)*机器周期Tcy

·注意:方式1一次最大的定时时间

·晶振为12MHZ时,一次最大定时时间为65.536MS

·晶振为6MHZ时,一次最大定时时间为131.072MS

·方式1定时时间到时,需要软件重新装载计数初值X,

才能实现设定的定时时间;

振荡器÷12

定时功能

C/T=0

TFX

C/T=1

TX(P3.4/P3.5)

控制

TR

8位

INTX—

(P3.2/P3.3);

·方式2是8位定时/计数器,最大计数值为256

文档评论(0)

乐毅淘文斋 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8121131046000040

1亿VIP精品文档

相关文档