51单片机定时器计数器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
89C51 单片机原理及应用
89C51单片机 定时器/计数器
单片机的定时/计数器
单片机应用系统中定时计数的需求: 如用单片机控制的打铃器、空调的定时开关、啤酒自动生产
线上对酒瓶的计数装置等。 89C51单片机片内的定时/计数器: 两个16位可编程的定时/计数器:T0和T1,都能定时和对
外部事件进行计数。 此外,T1还可以作为串行接口的波特率发生器。
四、方式3
方式3只有定时/计数器T0才有,当M1M0两位为11时,定时/计数器 T0工作于方式3,定时/计数器T0被分为两个部分TL0和TH0,其中, TL0可作为定时/计数器使用,占用T0的全部控制位:GATE、C/T、 TR0和TF0;而TH0固定只能作定时器使用,对机器周期进行计数, 这时它占用定时/计数器T1的TR1位、TF1位和T1的中断资源。
获得标准时间
由单片机的晶振经过12分频后得到。由于晶振的频率很准, 所以这个时钟脉冲的时间间隔也很准。当单片机采用12MH z的晶振时,它提供给计数器的脉冲频率是12MHz/1 2=1MHz,脉冲单脉周片 冲期机 是就内 如是部 何的 获1标 得微准 的秒时 呢。钟 ?
定时/计数器T0的结构示意图
工作方式控制寄存器TMOD
8位分为两组,高4位控制T1,低4位控制T0。
(1)GATE——门控位
0:以TRX(X=0,1)来启动定时器/计数器运行。
1:用外中断引脚(INT0*或INT1*)上的高电平和TRX来启动 定时器/计数器运行。
(2)M1、M0——工作方式选择位
M1 M0
工作方式
0Hale Waihona Puke 0方式0,13位定时器/计数器。
X=65536-N 如定时/计数器T0的计数值为1000,则初值为655361000=64536,转换成二进制数为1111110000011000B,则 TH0=11111100B,TL0=00011000B。
三.方式2
方式2,16位的计数器只用了8位来计数,用的是TL0(或TL1)的 8位来进行计数,而TH0(或TH1)用于保存初值。当TL0(或TL1) 计满时则溢出,一方面使TF0(或TF1)置位,另一方面溢出信号又会 触发三态门,使三态门导通,TH0(或TH1)的值就自动装入TL0(或 TL1)。 TLX作为常数缓冲器,当TLX计数溢出时,在置“1”溢出标志
定时/计数器的结构
单片机内部的16位定时/计数器由高8位和低8位两个寄存 器组成: T0由TH0和TL0组成, T1由TH1和TL1组成,
定时/计数器的计数值就存放在这里面。定时/计数器T1的 结构与T0相同。
定时器/计数器的控制寄存器 TMOD:选择定时器/计数器T0、T1的工作模式和工作
T数F。X的同时,还自动的将THX中的初值送至TLX特,别使适TL合X从于初产值开生始比重较新计精 确的连续脉冲信号。
由于是8位的定时/计数方式,因而最大计数值为 2的8次幂,等于 256。如计数值为N,则置入的初值X为:
X=256-N 如定时/计数器T0的计数值为100,则初值为256-100=156,转换成 二进制数为10011100B,则TH0= TL0=10011100B。 注意: 由于方式2计满后,溢出信号会触发三态门自动地把TH0(或TH1) 的值装入TL0(或TL1)中,因而如果要重新实现N个单位的计数,不用 重新置入初值。
X=8192-N 例如定时/计数器T0的计数值为1000,则初值为7192,转换成二进 制数为1110000011000B,则TH0=11100000B,TL0=00011000B。
工作方式0为13位的计数器 ,C/T* 位决定工作模式:
0:开关打在上面,为定时器工作模式;
1:开关打在下面,为计数器工作模式,计数脉冲为P3.4 、P3.5引脚上的外部输入脉冲,当引脚上发生负跳变时, 计数器加1。
工作方式3相当于增加一个附加的8位定时器/计数器,从 而具有3个定时器/计数器。
只适用于定时器/计数器T0。T1不能工作在方式3,
0
1
方式1,16位定时器/计数器。
10
方式2,8位常数自动重新装载
1
1
方式3,仅适用于T0,T0分成
两个8 位计数器,T1停止计数。
(3) C/T*——计数器模式和定时器模式选择 位
0:定时器模式。 1:计数器模式。
定时/计数器的工作方式
一.方式0
方式0是13位的定时/计数方式,因而最大计数值为 2的13次幂,等 于8192。如计数值为N,则置入的初值X为:
(2)定时 单片机内部的计数器用作定时器时,是对标准的 时钟进行了计数,每来一个时钟脉冲,计数器加1, 只要保证计数脉计冲数的器如间何隔能作相为等定,时 则计数值就代表了 时间的流逝。 器使用呢?
单片机中的定时器和计数器其实是一个器件: 计数器:是对外部发生的事件进行计数, 定时器:是对单片机内部的标准时钟脉冲进行 计数。
GATE位:决定定时器/计数器的运行取决于TRx一个条件还是 TRx和INTx*引脚两个条件。
(1)0:A点是否计数,仅取决于TRx的状态。
(2)1:B点电位由INTX*的输入电平和TRX的状态这两个条件 来确定。是否计数是由TRx和INTx*二个条件来控制的。
二、方式1
方式1是16位的定时/计数方式,因而最大计数值为 2的16次幂, 等于65536。如计数值为N,则置入的初值X为:
定时/计数器的结构
1.定时和计数的原理
(1)计数
单片机是对脉冲个数计数,计数器
定时/计数器的实质是在处置每基接收础到上一个的脉加冲,1计数计值数加1,
器(16位),
当接收满65535个脉冲后,再 来一个脉冲,计数值清0表明 这一轮计数结束,同时将标
志位TF0或TF1置1。
16位定时/计数器的计数容量是65536
方式。 TCON:控制T0、T1的启动和停止计数,同时包含了
T0、T1的状态。
单片机复位时,两个寄存器的所有位都被清0。
定时器/计数器控制寄存器TCON
低4位与外部中断有关,已介绍。高4位的功能如下: (1) TF1、TF0——计数溢出标志位 (2) TR1、TR0——计数运行控制位 1:启动定时器/计数器工作 0:停止定时器/计数器工作
89C51单片机 定时器/计数器
单片机的定时/计数器
单片机应用系统中定时计数的需求: 如用单片机控制的打铃器、空调的定时开关、啤酒自动生产
线上对酒瓶的计数装置等。 89C51单片机片内的定时/计数器: 两个16位可编程的定时/计数器:T0和T1,都能定时和对
外部事件进行计数。 此外,T1还可以作为串行接口的波特率发生器。
四、方式3
方式3只有定时/计数器T0才有,当M1M0两位为11时,定时/计数器 T0工作于方式3,定时/计数器T0被分为两个部分TL0和TH0,其中, TL0可作为定时/计数器使用,占用T0的全部控制位:GATE、C/T、 TR0和TF0;而TH0固定只能作定时器使用,对机器周期进行计数, 这时它占用定时/计数器T1的TR1位、TF1位和T1的中断资源。
获得标准时间
由单片机的晶振经过12分频后得到。由于晶振的频率很准, 所以这个时钟脉冲的时间间隔也很准。当单片机采用12MH z的晶振时,它提供给计数器的脉冲频率是12MHz/1 2=1MHz,脉冲单脉周片 冲期机 是就内 如是部 何的 获1标 得微准 的秒时 呢。钟 ?
定时/计数器T0的结构示意图
工作方式控制寄存器TMOD
8位分为两组,高4位控制T1,低4位控制T0。
(1)GATE——门控位
0:以TRX(X=0,1)来启动定时器/计数器运行。
1:用外中断引脚(INT0*或INT1*)上的高电平和TRX来启动 定时器/计数器运行。
(2)M1、M0——工作方式选择位
M1 M0
工作方式
0Hale Waihona Puke 0方式0,13位定时器/计数器。
X=65536-N 如定时/计数器T0的计数值为1000,则初值为655361000=64536,转换成二进制数为1111110000011000B,则 TH0=11111100B,TL0=00011000B。
三.方式2
方式2,16位的计数器只用了8位来计数,用的是TL0(或TL1)的 8位来进行计数,而TH0(或TH1)用于保存初值。当TL0(或TL1) 计满时则溢出,一方面使TF0(或TF1)置位,另一方面溢出信号又会 触发三态门,使三态门导通,TH0(或TH1)的值就自动装入TL0(或 TL1)。 TLX作为常数缓冲器,当TLX计数溢出时,在置“1”溢出标志
定时/计数器的结构
单片机内部的16位定时/计数器由高8位和低8位两个寄存 器组成: T0由TH0和TL0组成, T1由TH1和TL1组成,
定时/计数器的计数值就存放在这里面。定时/计数器T1的 结构与T0相同。
定时器/计数器的控制寄存器 TMOD:选择定时器/计数器T0、T1的工作模式和工作
T数F。X的同时,还自动的将THX中的初值送至TLX特,别使适TL合X从于初产值开生始比重较新计精 确的连续脉冲信号。
由于是8位的定时/计数方式,因而最大计数值为 2的8次幂,等于 256。如计数值为N,则置入的初值X为:
X=256-N 如定时/计数器T0的计数值为100,则初值为256-100=156,转换成 二进制数为10011100B,则TH0= TL0=10011100B。 注意: 由于方式2计满后,溢出信号会触发三态门自动地把TH0(或TH1) 的值装入TL0(或TL1)中,因而如果要重新实现N个单位的计数,不用 重新置入初值。
X=8192-N 例如定时/计数器T0的计数值为1000,则初值为7192,转换成二进 制数为1110000011000B,则TH0=11100000B,TL0=00011000B。
工作方式0为13位的计数器 ,C/T* 位决定工作模式:
0:开关打在上面,为定时器工作模式;
1:开关打在下面,为计数器工作模式,计数脉冲为P3.4 、P3.5引脚上的外部输入脉冲,当引脚上发生负跳变时, 计数器加1。
工作方式3相当于增加一个附加的8位定时器/计数器,从 而具有3个定时器/计数器。
只适用于定时器/计数器T0。T1不能工作在方式3,
0
1
方式1,16位定时器/计数器。
10
方式2,8位常数自动重新装载
1
1
方式3,仅适用于T0,T0分成
两个8 位计数器,T1停止计数。
(3) C/T*——计数器模式和定时器模式选择 位
0:定时器模式。 1:计数器模式。
定时/计数器的工作方式
一.方式0
方式0是13位的定时/计数方式,因而最大计数值为 2的13次幂,等 于8192。如计数值为N,则置入的初值X为:
(2)定时 单片机内部的计数器用作定时器时,是对标准的 时钟进行了计数,每来一个时钟脉冲,计数器加1, 只要保证计数脉计冲数的器如间何隔能作相为等定,时 则计数值就代表了 时间的流逝。 器使用呢?
单片机中的定时器和计数器其实是一个器件: 计数器:是对外部发生的事件进行计数, 定时器:是对单片机内部的标准时钟脉冲进行 计数。
GATE位:决定定时器/计数器的运行取决于TRx一个条件还是 TRx和INTx*引脚两个条件。
(1)0:A点是否计数,仅取决于TRx的状态。
(2)1:B点电位由INTX*的输入电平和TRX的状态这两个条件 来确定。是否计数是由TRx和INTx*二个条件来控制的。
二、方式1
方式1是16位的定时/计数方式,因而最大计数值为 2的16次幂, 等于65536。如计数值为N,则置入的初值X为:
定时/计数器的结构
1.定时和计数的原理
(1)计数
单片机是对脉冲个数计数,计数器
定时/计数器的实质是在处置每基接收础到上一个的脉加冲,1计数计值数加1,
器(16位),
当接收满65535个脉冲后,再 来一个脉冲,计数值清0表明 这一轮计数结束,同时将标
志位TF0或TF1置1。
16位定时/计数器的计数容量是65536
方式。 TCON:控制T0、T1的启动和停止计数,同时包含了
T0、T1的状态。
单片机复位时,两个寄存器的所有位都被清0。
定时器/计数器控制寄存器TCON
低4位与外部中断有关,已介绍。高4位的功能如下: (1) TF1、TF0——计数溢出标志位 (2) TR1、TR0——计数运行控制位 1:启动定时器/计数器工作 0:停止定时器/计数器工作