您的位置 首页 汽车

单片机定时器/计数器的结构

单片机定时器/计数器的结构- 每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时器/计数器中断允许时)。如果定时器/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。

LinkedIn守时器/计数器的结构

守时器/计数器的本质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是守时器/计数器的作业方法寄存器,确认作业方法和功用;TCON是操控寄存器,操控T0、T1的发动和中止及设置溢出标志。

单片机守时器/计数器的结构

守时器/计数器的作业原理

计数器输入的计数脉冲源

体系的时钟振动器输出脉冲经12分频后发生;

T0或T1引脚输入的外部脉冲源。

计数进程

每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU宣布中止恳求(守时器/计数器中止答应时)。假如守时器/计数器作业于守时形式,则表明守时时刻已到;假如作业于计数形式,则表明计数值已满。

守时使用

用作守时器:此刻设置为守时器形式,加1计数器是对内部机器周期计数(1个机器周期等于12个振动周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy便是守时时刻t 。

计数运用

用作计数器:此刻设置为计数器形式,外部事情计数脉冲由T0或T1引脚输入到计数器。每来一个外部脉冲,计数器加1。但单片机对外部脉冲有基本要求:脉冲的凹凸电平持续时刻都必须大于1个机器周期。

作业方法寄存器(TMOD)

单片机守时器/计数器的结构

GATE:门控位。

GATE=0时,只需用软件使TCON中的TR0或TR1为1,就能够发动守时器/计数器作业;(即需求一个发动条件)

GATE=1时,要用软件使TR0或TR1为1,一起外部中止引脚也为高电平时,才干发动守时器/计数器作业,即需求两个发动条件。

C/T :守时/计数形式挑选位。

C/T =0为守时形式; C/T =1为计数形式。

M1M0:作业方法设置位。

计数器作业方法挑选

M1 M0 工 作 方 式 功 能 说 明

0 0 方法0 13位计数器

0 1 方法1 16位计数器

1 0 方法2 主动重装8位计数器

1 1 方法3 守时器0:分红两个8位[page]

守时器1:中止计数

守时器/计数器的操控

操控寄存器TCON

TCON的低4位用于操控外部中止,已在前面介绍。TCON的高4位用于操控守时器/计数器的发动和中止恳求。其格局如下:

单片机守时器/计数器的结构

TF1(TCON.7):T1溢出中止恳求标志位。T1计数溢出时由硬件主动置TF1为1。CPU呼应中止后TF1由硬件主动清0。TR1(TCON.6):T1起/停操控位。1:发动 0:中止

TF0(TCON.5):T0溢出中止恳求标志位,其功用与TF1类同。

TR0(TCON.4):T0起/停操控位。1:发动 0:中止

守时器/计数器的作业方法

方法0

方法0为13位计数,由TL0的低5位(高3位未用)和TH0的8位组成TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU宣布中止恳求。

单片机守时器/计数器的结构

方法1

方法1的计数位数是16位,由TL0(TL1)作为低8位、TH0(TH1)作为高8位,组成了16位加1计数器 。

方法2

方法2为主动重装初值的8位计数方法。

单片机守时器/计数器的结构

在方法2下,当计数器计满255(FFH)溢出时,CPU主动把TH 的值装入TL中,不需用户干涉。因而特别适合于用作较准确的脉冲信号发生器。

方法3

单片机守时器/计数器的结构

方法3只适用于守时器/计数器T0,守时器T1方法3时相当于TR1=0,中止计数。

作业方法3将T0分红为两个独立的8位计数器TL0和TH0 。

TMOD和TCON

AT89S52的守时器/计数器是一种可编程部件,在守时器/计数器开端作业之前,CPU必须将一些指令(操控字)写入守时/计数器。

例如:挑选哪一个守时器/计数器在何种作业方法下作业?

是用作守时器计时功用仍是用作计数器的计数功用?

是否发动守时器/计数器的运转?

……

这些设置的功用是经过对特别功用寄存器TMOD和TCON的设置来完成。在初始化进程中,要将作业方法操控字写入方法寄存器(初始化作业的一部分),作业状态字写入操控寄存器,CPU就会按设定的作业方法独立运转。

1.守时器/计数器方法寄存器TMOD

守时器/计数器方法操控寄存器TMOD在特别功用寄存器中,字节地址为89H。TMOD不能进行位寻址,只能用字节传送指令设置守时器作业方法,低半字节界说为守时器/计数器0,高半字节界说为守时器/计数器1。复位时,TMOD一切位均为0。TMOD的格局

如下表所示。

单片机守时器/计数器的结构

M1、M0:作业方法挑选位。用来界说守时器/计数器的四种作业方法。

C/:功用挑选位:C/位为守时器方法或计数器方法挑选位。C/=1时,为计数器方法;C/=0时,为守时器方法。

GATE:门操控位,确认守时器的敞开与封闭。当GATE=0时,只需守时器操控寄存器TCON中的TR0(或TR1)被置1时,T0(或T1)被答应开端计数(TCON各位意义见后边叙说)。

当GATE=1时,外部中止引脚的输入电平操控T0或T1的敞开与封闭。

2.守时器/计数器操控寄存器TCON

TCON是T0和T1的操控寄存器,它一起也用来锁存T0、T1的溢出中止恳求源和外部中止恳求源。TCON寄存器复位时为00H,能够进行位寻址。守时器/计数器操控寄存器TCON字节地址为88H。TCON寄存器各位界说如下表

单片机守时器/计数器的结构

TCON中各标志位的功用是:

TF1(D7):守时器1溢出标志位。当T1计满溢出时,由硬件使TF1置1,恳求中止。进入中止服务程序后,由硬件主动清0,在查询方法下用软件清0。

TR1(D6):守时器1运转操控位。TR1置1,发动守时器1;TR1置0则中止作业。TR1由软件置1或清零

TF0(D5):守时器0溢出标志。其功用及操作状况同TF1。

TR0(D4):守时器0运转操控位。其功用及操作状况同TR1。

IE1(D3):外部中止1中止恳求标志。IT1=1时,外部中止1引脚上的电平由1变0时,IE1由硬件置位,外部中止1恳求中止。当CPU呼应中止并转向该中止服务程序执行时,由内部硬件主动清0。

IT1(D2):外部中止1()电平触发方法或许脉冲触发方法操控位。IT1=1时,外部中止1为负边缘触发方法,引脚上的电平从高到低负跳变有用。IT1=0时,外部中止1为电平触发方法。上输入低电平有用。

IE0(D1):外部中止0中止恳求标志。假如IT0置1,则当上的电平由1变0时,IE0由硬件置位。在CPU把操控转到中止服务程序时由硬件使IE0复位。

IT0(D0):外部中止源0触发方法操控位,其意义同IT1。

3.TMOD和TCON的操控功用能够经过一个详细的电路结构来加强了解

单片机守时器/计数器的结构

图3TMOD和TCON操控功用的完成

在图3中,清楚的表明了TMOD和TCON中的操控位对作业方法、守时/计数形式、发动、溢出中止的操控的完成。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/345047.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部