实现定时和计数的方法一般有:软件定时、专用电路和可编程定时器/计数器 三种方法。
软件定时:执行一个循环程序进行时间延迟。定时准确,不需要外加硬件电路,但会增加CPU开销。
专用硬件电路定时:可以实现请精确的定时和计数,但参数调节不方波。
可编程定时器/计数器:不占用CPU时间,能与CPU并行工作,实现精确的定时和计数,又可以通过变成设置其工作方式和其他参数,使用方便。
以下说明仅试用宏晶的STC89C52!!
定时器2:
T2MOD,T2CON,TH2,TL2,RC2H,RC2L.
T2MOD:0C9H (不可位寻址)
T2OE:定时器输出使能位
DECN:向上/向下计数使能位。定时器2可配制成向上/向下计数器。
0:向上计数(模式状态) 1:向下计数(尽量不使用)
T2CON:0XC8H(可位寻址)
TF2 |
EXF2 |
RCLK |
TCLK |
EXEN2 |
TR2 |
C/T2 |
CP/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)
CP/RL2:0 捕获/重装
标志。EXEN2=1时,T2EX的负跳变产生捕获。EXEN2=0时,定时器2溢出或T2EX的负跳变都可以使定时器自动重装。RCLK=1或TCLK=1时,该位无效且定时器强制为溢出时自动重装。
定时器2有三种操作模式:捕获,自动重新装载(递增或递减计数)和波特率发生器,这三种模式由T2CON中的位进行选择:
定时器2的工作方式:
RCLK+TCLK |
CP/RL2 |
TR2 |
模式 |
0 |
0 |
1 |
16位自动重装 |
0 |
1 |
1 |
16位捕获 |
1 |
x |
1 |
波特率发生器 |
x |
x |
0 |
关闭 |
关键字:STC89C52 单片机 定时器2
引用地址:
STC89C52单片机定时器2的使用
推荐阅读最新更新时间:2024-03-16 14:00
单片机IO口模拟SPI四种模式的程序
#include iom8535v.h #define _CPOL 1 #define _CPHA 0 #define SCK_IO DDRA|=0X01 #define MOSI_IO DDRA|=0X02 #define MISO_IO DDRA&=0XFB #define SSEL_IO DDRA|=0X08 #define SCK_D(X) (X?(PORTA|=0X01):(PORTA&=0XFE)) #define MOSI_D(X) (X?(PORTA|=0X02):(PORTA&=0XFD)) #define SSEL_D(X) (X?(PORTA|=0X08):(PORTA&=0XF7
[单片机]
51单片机控制蜂鸣器播放5首歌曲汇编程序
;机器人代码:(外部中断用来接红外传感器的) ORG 0000H JMP INIT ORG 0003H JMP INT_0 ORG 000BH JMP INT_T ORG 0023H JMP INT_S ;------------------------------------- FLAG_F EQU 01H ;功能选择,0为播放,1为演奏 FLAG_L EQU 02H ;指示灯选择,0指示灯亮或1亮 FLAG_P EQU 03H ;是否播放标志,0停止,1播放 FLAG_CH EQU 04H ;演奏时是否换音符,1有效 FLAG_LAST EQU 05H ;播放时是
[单片机]
PIC单片机的特点及应用
摘要: 介绍了Microchip公司的PIC单片机PIC16C73的结构特点和工作原理,给出了用PIC16C73设计智能售电系统中PIC通信通道的硬件系统电路和系统软件的设计方法。
关键词: 单片机 哈佛结构 通信 PIC16C73
1 概述
Microchip公司生产的PIC16C72是一款基于EPROM的8位高性能微控制器。与其它价格相当的微控制器相比,它在执行速度和代码压缩方面都有很大的改进。由于随时可以买到需要的OPT(一次性编程)产品,因而缩短了利用PIC16C73进行产品设计开发的周期。
PIC16C73微控制器所具有的优越性能主要归功于它的精简指令集(RISC)和所采用的
[应用]
用汇编写51单片机的开始 之点亮LED
之前一直都是用c写的51,所以想体验一下用汇编写51的感觉。所以特此再开一个系列,希望大家和我一起学习,如有不到之处,还请多多指教。 首先程序的第一步: ORG 0000H ;这句话的意思是确认程序的起始地址,后面的地址都是相对这个地址开始来对应的。 后面的分号是注释,这是汇编的注释。也是一个语句的结尾。 第二步: mov P1,#11011111B; 把这个二进制数据放进P1口处,这个P1口是控制LED的(在我的开发板上) 第三步: sjmp $ ;相当于c语言中的while(1),目的是让程序一直停留在这里。 最后一步: end ;程序的结束 然后下载进单片机中就可以看到点亮了LED。
[单片机]
数码管显示51单片机DS18B20温度测量源程序及仿真
这是一款数码管显示51单片机DS18B20温度测量源程序及仿真资料,特别适合单片机初学者学习参考,这款数码管显示51单片机DS18B20温度测量源程序使用模块化编程,方便移置,单片机使用AT89C51单片机,数码使用四位共阴数码管,这样简化了硬件电路,降低了硬件的制作难度。这款数码管显示51单片机DS18B20温度测量源程序是在Keil4环境下编译通过,并在Proteus7.8仿真软件下仿真通过。温度测量范围是:-55-125度。由于源程序直接贴出来会丢后些重要内容,所以特别将这款数码管显示51单片机DS18B20温度测量源程序及仿真资料打包后放在百度网盘上,需要的爱好者可以自己去下载。更多单片机源程序与仿真请到电子乐屋。 数
[单片机]
单片机学习笔记嵌入式介绍
嵌入式技术体系 一、 模拟电路 (电容电感电阻 二极管三极管 基本放大电路 ) 数字电路 (逻辑运算) 计算机基本原理 (计算机运行原理) 基本编程 (主要是C语言,了解汇编) 二、51单片机 (基础单片机,资源多,流行时间长) AVR单片机 PIC单片机 MSP430单片机 (三种中型单片机 资源也很丰富 速度比51快) 三、ARM7+OS (入门级别ARM) NXP和三星(44B0)的用来跑操作系统 DSP (TI公司2000系列 例如2812 2407) 类似ARM 多用于做
[单片机]
意法半导体STM32 F4系列中最小的微控制器产品已投入量产
意法半导体(STMicroelectronics,简称ST;纽约证券交易所代码:STM)宣布旗下STM32F4系列的STM32F410基本型微控制器已投入量产,配备新的开发板NUCLEO-F410RB,实现尺寸更小、功耗及成本更低的高性能STM32 F4系列入门级产品。 STM32F410搭载ARM Cortex -M4F处理器内核,在100MHz时,运算速度可达125 DMIPS,并在EEMBC CoreMark 测试中取得339分的优异成绩。具有功耗敏感(Power-conscious)的STM32 Dynamic Efficiency 特性,例如意法半导体的ART Accelerator 和电压调节,可将动态功
[单片机]
智能双路数字信号源
实验室常用的信号源一般都是用模拟电路来产生所用的信号。模拟电路有着一些不可避免的缺点,如使用不方便、功能不全、分辨率低、价格昂贵等。用单片机实现的数字信号源具有使用方便、功能强大、性价比高的特点。本项目采用单片机实现,继承了一般数字信号源的优点,特别提供了双路同频有相差的输出信号,以满足实验室与工厂的实际需要。 1 硬件电路描述 本系统采用总线结构,CPU为8031,外挂1个2718RAM,键盘为4×4矩阵键盘,通过244缓冲器与8031接上,138译码器负责给各个终端提供地址,其输出端与个芯片片选端相连。4个发光二极管分别表示电源、正弦波、余弦波、斜波,通过373锁存器挂在总线上。ICM7212AM为LED显
[单片机]