当前位置:
文档之家› 51单片机定时器的使用和详细讲解
51单片机定时器的使用和详细讲解
作方式和其它参数,因此使用方便。
4
定时器的基本工作原理是:利用计数器对固定周 期的脉冲计数,通过寄存器的溢出来触发中断。
具体应用步骤: 1)根据需要的定时时间,结合单片机的晶振频率, 计算出寄存器的初始值 2)根据需要开中断 3)启动定时器
若已规定用软件启动,则可把TR0、TR1或TR2置“1”; 若已规定由外中断引脚电平启动,则需给外引脚步加启动 电平。当实现了启动要求后,定时器即按规定的工作方式 和初值开始计数或定时。
8
2.模式寄存器(TMOD) TMOD用来选择定时器0、1的工作模式,低4位 用于定时器0,高4位用于定时器1,其组成如图 8-2所示。
T1 T0
00:模式0
方式 选择 01:模式1 10:模式2 11:模式3 方式 选择
9
图8-2 模式寄存器组成
3.控制寄存器(TCON) TCON高4位用于控制定时器0、1的运行;低4 位用于控制外部中断,与定时器无关。
14
定时器的定时时间
T (8192- X) T cy
计数初始值X
定时时间 X 2 Tcy
n
(此处n 13)
最大定时能力:
T max 8192 T cy
15
模式0的结构图如图8-4所示。
13位加法 计数器
门控位
GATE=0 定时器不受 控于外部信号;仅打 开与门,是定时器仅 有TR位控制; GATE=1 定时器受控 于外部信号,此时要 求TR=1;
3
实现定时和计数的方法一般有:软件定时、专用 硬件电路和可编程定时器/计数器三种方法。
软件定时:执行一个循环程序进行时间延迟。定时准确,不
需要外加硬件电路,但增加CPU开销。
专用硬件电路定时:可实现精确的定时和计数,但参数
调节不便。
可编程定时器/计数器:不占用CPU时间,能与CPU并行工
作,实现精确的定时和计数,又可以通过编程设置其工
定时器0、1运行控 制位TR0(TR1): TR0(TR1)=1 启动 TR0(TR1)=0 停止
图8-3 控制寄存器组成
定时器0、1溢出标志 TF0(TF1): 溢出时该位由硬件自 动置1,响应中断后, 由硬件自动清0
10
4.中断使能寄存器(IEN0) IEN0中的ET0(ET1)位控制定时器0、1是否 产生中断请求信号。为0时不产生中断请求信 号,为1时允许产生中断请求信号。其结构如 图8-4所示。
6
8.2 定时器T0和T1的结构
定时器T0和T1的结构如图8-1所示。
核心寄存 器——16位 加法计数器
定时器模式 寄存器 图8-1 定时器T0和T1结构图
7
1.16位加法计数器
16位加法计数器是定时器的核心,图8-1中用 寄存器TH0、TL0及TH1、TL1表示。 T0加法计数器的高8位和低8位分别用TH0、 TL0表示 T1加法计数器的高8位和低8位分别用TH1、 TL1 表示 高8位和第8为可分别单独使用 当定时器工作时,加法计数器对内部机器周期 Tcy 脉冲Tcy计数。
12
表8-1 定时器0 和定时器1 工作模式
13
1.工作模式0 当T0M(T1M)=00时定时器设定为工作模式0, 此时定时器工作于13位定时状态。 其中TH0是高8位加法计数器,TL0是低5位加 法计数器(TL0只用了低5位,高3位未用)。 TL0加法计数溢出时向TH0进位,TH0加法计 数溢出时硬件置TF0=1。 加法计数器对机器周期脉冲Tcy计数,每个机 器周期TL0加1。
定时器的讲解和使用 有对定时器2的详细讲解
第八章 定时器
1
章节概述 很棒
8.1 8.2 8.3 8.4
概述 定时器T0和T1的结构 定时器工作模式 定时器T2
2
8.1 概述
定时器是单片机的重要功能模块之一,在检测、 控制领域有广泛应用。 定时器常用作定时时钟,以实现定时检测、定 时响应、定时控制,并且可用于产生ms宽的 脉冲信号,驱动步进电机 定时和计数功能最终都是通过计数实现的,若 计数的事件源是周期固定的脉冲,则可以实现 定时功能,否则只能实现计数功能。因此可以 将定时和计数功能由一个部件实现。
图8-4 方式0结构图
16
例题:生成周期为1.2 ms的等宽正方波。机器晶振26.67MHz。使用T0以方 式0工作,由P0.0输出
1.2 ms
机器周期:37.5ns。计数周期Tcy是机器脉冲 的2分频,因此Tcy=75ns; 定时时间0.6ms 。 以0.6 ms为周期在P1.0端交替输出高低电平。
17
定时时间 计数初值 2 Tcy
n
6 0 . 6 * 10 X 213 8192 8000 192 0 xC0 75
高8位TH 0 00000110 0 x06 低5位TL0 00000000 0 x00
T0从192开始计数,直到 超过8192即溢出,置 TF0=1,产生中断信号
图8-3 中断使能寄存器组成
定时器0中 断使能位 定时器0中 断使能位
11
8.3 定时器工作模式
定时器0 和定时器1 完全兼容,均可设定为四 种不同的工作模式,如表8-1 所示。寄存器 TMOD 的位域TxM选择定时器的工作模式。 两个定时器在模式0、1 和2 时独立工作;在 模式3 时具有特定功能。
定时器初始化程 序 MOV TL0, #0X00 MOV TH0,#0X06 MOV
定时器中断服务程序 PUSH …. …… CPL P0_0 …… POP …
18
2.工作模式1 T0M(T1M)=01时定时器设定为工作模式1, 此时定时器0(定时器1)被设置为16位定时器。 此时TH0、TL0都是8位加法计数器。其他与工 作方式0相同。 定时器的定时时间
5
XC866单片机有三个16位的定时器——定时 器0、定时器1和定时器2。 定时器0、1各具有四种工作模式;定时器2 有两种工作模式。 定时器0、1和定时器2的任何一种工作模式 均可通过,可以由程序决定是 否产生中断请求信号,进而判断是否执行中 断程序。 但是,无论中断请求信号是否产生,当定时 器在定时时间到时,定时器的溢出标志位 TF0(TF1)由硬件置“1”。