微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > STC89C52单片机定时器2的使用

STC89C52单片机定时器2的使用

时间:12-02 来源:互联网 点击:
实现定时和计数的方法一般有:软件定时、专用电路和可编程定时器/计数器 三种方法。

软件定时:执行一个循环程序进行时间延迟。定时准确,不需要外加硬件电路,但会增加CPU开销。

专用硬件电路定时:可以实现请精确的定时和计数,但参数调节不方波。

可编程定时器/计数器:不占用CPU时间,能与CPU并行工作,实现精确的定时和计数,又可以通过变成设置其工作方式和其他参数,使用方便。

以下说明仅试用宏晶的STC89C52!!

定时器2

T2MOD,T2CON,TH2,TL2,RC2H,RC2L.

T2MOD:0C9H(不可位寻址)

000000T2OEDCEN

T2OE:定时器输出使能位

DECN:向上/向下计数使能位。定时器2可配制成向上/向下计数器。

0:向上计数(模式状态) 1:向下计数(尽量不使用)

T2CON:0XC8H(可位寻址)

TF2EXF2RCLKTCLKEXEN2TR2C/T2CP/RL2
TF2:7 上/下 溢出标志位,定时器2溢出时置位,必须有用软件清零!当RCLK或TCLK=1时,TF2将不会置位。

EXF2:6 定时器2外部标志,当EXEN2=1且T2EX的负跳变产生捕获或重装时,EXF2置位。定时器2中断使能时,EXF2=1将使CPU从中断向量处执行定时器2中断子程序。EXF2位必须用软件清零。在递增/递减计数器模式(DCEN=1)中,EXF2位不会引起中断。

RCLK:5 接收时钟标志。RCLK置位时,定时器2的溢出脉冲作为串口模式1和模式3的接收时钟。RCLK=0时,将定时器1的溢出脉冲作为串口模式1和模式3的接收时钟。

TCLK:4 发送时钟标志位。TCLK置位时,定时器2的溢出脉冲作为串口模式1和模式3的发送时钟。TCLK=0时,将定时器1的溢出脉冲作为串口模式1和模式3发送时钟。

EXEN2:3 定时器2外部使能标志。当其置位且定时器2未作为串口时钟时,允许T2EX的负跳变产生捕获或重装。EXEN2=0时,T2EX的跳变对定时器2无效。

TR2:2 定时器2 启动/停止控制位。置1时启动定时器。

C/T2:1 定时器/计数器选择(定时器2)

0 = 内部定时器(SYS_CLK/12或SYS_CLK/6)

1 = 外部事件计数器(下降沿触发)

CP/RL2:0 捕获/重装标志。EXEN2=1时,T2EX的负跳变产生捕获。EXEN2=0时,定时器2溢出或T2EX的负跳变都可以使定时器自动重装。RCLK=1或TCLK=1时,该位无效且定时器强制为溢出时自动重装。

定时器2有三种操作模式:捕获,自动重新装载(递增或递减计数)和波特率发生器,这三种模式由T2CON中的位进行选择:

定时器2的工作方式:

RCLK+TCLKCP/RL2TR2模式
00116位自动重装
01116位捕获
1x1波特率发生器
xx0关闭


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top