51单片机的时钟系统

1.简介

51内置的时钟系统可以用来计时,与主程序分割开来,在计时过程中不会终端主程序,还可以通过开启时钟中断来执行相应的操作。

2.单片机工作方式

单片机内部有两个十六位的定时器T0T1 。每个定时器有两种工作方式选择,分别为计数方式定时方式

定时器的工作原理其实就是将一个计数器,将数值进行累加,接收一次脉冲就累加一次数据。这个数值只能累加到65535,因为数值存储的大小只有16位。

2.1定时模式

如果接收的脉冲信号来着单片机本身那么就是定时方式 。定时器每6个周期或者12个周期会接收一个计数脉冲,例如单片机的晶振频率为12MHz,如果设置的是12个周期接收一个脉冲信号,系统会以1MHz的频率发送计数脉冲,即1us增加一次,设置的是6个周期就是,2MHz的频率发送脉冲,即0.5us增加一次。

我们下载程序的时候可以修改模式(默认为12个周期):

2.2计数模式

如果接收的脉冲信号来着外部引脚(T0为P3.4,T1为P3.5)就是计数方式。通过对外部引脚来发送脉冲,计数器累加。我们可以接入时钟芯片,达到更加精确的时间。

3.相关寄存器

TCON

TCON可以位寻址,寄存器地址为88H。

TF1、TR1控制T1。IE1、IT1控制外部中断1。

TF0、TR0控制T0。IE0、IT0控制外部中断2。

下面只对1说明,0基本是一样的。
TF1: 当累加溢出时(数值累加到65535)TF1置1,同时会向cpu请求中断,只有中断处理完毕TF1才会置0,也可以手动清零。
TR1: 如果为0,禁止计数。为1,可以开始计数。
IE1: 外部中断请求源,对应单片机引脚的P3.3/INT1(IE0对应的引脚为P3.2),为1外部请求中断,中断处理完毕后置0。(这个是外部中断的引脚,和定时器没有关系)
IT1: 外部中断控制位,IT1=0,低电平触发中断,IT1=1,脉冲下降沿触发中断。

TMOD

TMOD的寄存器地址为89H,初始值为00H,不可以按位寻址。
GATE: 为1,需要INT引脚为1和TR为1时才能开始计数;为0,TR为1就可以开始计数。
C/T: 用来控制是使用内部还是外部(外部引脚P3.4或P3.5)触发计数。为0是内部,1为外部。
M1、M0控制计数的模式:

M1=0、M0=0:13位计数。8191溢出

M1=0、M0=1:16位计数。65535溢出 (常用)

M1=1、M0=0:8位计数。255溢出

M1=1、M0=1:很少用不解释。

可以看看下图,可能会有好的理解:

4.一般初始化操作

定时器0

c 复制代码
void Timer0_Init(){
	TMOD = TMOD&0xF0;
	TMOD = TMOD|0x01;//设置16位计数模式(我自己取得名qwq)
	TF0 = 0;//中断标志位置0
	//这里如果是12MHZ,就是1000us溢出一次,
	TH0 = 64535/255;
	TL0 = 64535%255;
	ET0=1;//开启时钟0的中断
	EA=1;//开启所有中断
	TR0 = 1;//开始计数
}
//计数器溢出后会调用下面方法
void Timer0_Routine() interrput 1 {
	TH0 = 64535/255;
	TL0 = 64535%255;
}

定时器1类似

相关推荐
ye150127774553 分钟前
220V转5V单片机供电电源芯片WT5102
单片机·嵌入式硬件·其他·硬件工程
HUI-4748 分钟前
EG12523|集成 600V 半桥驱动,带内置正激恒流功能的正反激 PWM 控制器
单片机·嵌入式硬件
2601_9667990430 分钟前
酷嗨米J300:单相机三平台同步推流,硬件级方案告别卡顿与限流
嵌入式硬件
謓泽33 分钟前
『51单片机』AD/DA
单片机·嵌入式硬件·51单片机·模拟·ad·da·謓泽
风雨中的蜜蜂1 小时前
PHY6217/PHY6257是支持蓝牙低功耗 (BLE) 与私有 2.4G 应用的 SoC 芯片
单片机·嵌入式硬件·物联网·射频工程
芯片设计-曾工2 小时前
YL1621(SSOP28)国产段码LCD驱动芯片|PIN‑PIN兼容HT1621,储能电量显示板CH2505B国产化替换方案
stm32·单片机·嵌入式硬件·mcu·硬件工程
hongmai6668883 小时前
竖插专用:ESP8684-WROOM-07-H2X模组上手记录
笔记·单片机·嵌入式硬件·物联网·risc-v
深圳市宝华视联19 小时前
Python 读取 IP 视频流简单 Demo
python·嵌入式硬件·opencv·网络协议·tcp/ip·实时音视频·嵌入式实时数据库
恒锐丰科技韩生20 小时前
RB6005A|晶准 单节锂电池内置 MOS 保护芯片 DFN2×3‑8
嵌入式硬件·硬件工程
youshi666820 小时前
stm32-PWR、低功耗模式
stm32·单片机·嵌入式硬件