【mcuclub】定时器/计数器

一、简介

定时器实际上就是Soc当中的一个内部外设。定时器常与计数器扯到一起,计数器也是Soc当中的一个内部外设,计数器顾名思义是用来计数的,就和我们的秒表一样,秒表实际上就是一个计数器,每隔一个单位走一个格(就是计一个数),因为计数器的计数时间周期是固定的,因此到了一定时间只要用计数值*计数时间周期,就能得到一个时间段,这个时间段就是我们定的时间(这就是定时器了)。计数器和定时器其实是一回事。

二、定时器的原理

定时器计时其实是通过计数来实现的。定时器内部有一个计数器,每隔一个时钟周期,计数器就计数一次,定时器的时间就是计数器计数值x时钟周期。

  • 振荡周期:为单片机提供定时信号的振荡源周期。
  • 状态周期:2个振荡周期为一个状态周期。
  • 机器周期:一个机器周期包含六个状态周期,十二个振荡周期。
  • 指令周期:完成一条指令所占用的全部时间

三、51单片机的定时器

STC89C52有三个16位定时器,T0、T1、T2,单片机内的定时器和CPU是相互独立的,互不影响,所以它们的执行不需要CPU的参与,而软件延迟利用若干次空循环实现,占用CPU。

四、内部结构

定时/计数器的实质是加一计数器(16位),由高8位和低八位两个寄存器TH和TL组成,TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0,T1的启动和停止及设置溢出标志位。

五、定时器/计数器0和1的相关寄存器

1、定时器/计数器控制寄存器TCON

TCON为定时器/计数器TO、T1的控制寄存器,同时也锁存TO、T1溢出中断源和外部请求中断源等,TCON格式如下:

TF1:定时器/计数器T1溢出标志。T1被允许计数以后,从初值开始加1计数。当最高位产生溢出时由硬件置“1”TF1,向CPU请求中断,一直保持到CPU响应中断时,才由硬件清“0”TF1 (TF1也可由程序查询清“0”)。

TR1:定时器T1的运行控制位。该位由软件置位和清零。当GATE(TMOD.7) =O,TR1=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单片机俱乐部--官方

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值