第六章 定时器及应用
合集下载
单片机第六章定时器
计数溢出时,TFx置位。如果中断允许,CPU响应中 断并转入中断服务程序,由内部硬件清TFx。TFx也可以 由程序查询和清零。
这种方式下,计数寄存器由13位组成,即THx高八位(作计数器)
和TLx的低5位构成。TLx的高3位未用。
计数时,TLx的低5位溢出后向THx进位,THx溢出后 将TFx置位,并向CPU申请中断。
用软件控制,置 l时,启动 T1;清0时,停止 T1。
TF0(TCON.5)——T0的溢出标志。
TR0(TCON.4)——T0的运行控制位。
用软件控制,置1时,启动T0;清 0时,停止 T0。
• IE1(TCON.3)——外部中断1中断请求标志位。
• IE0(TCON.1)——外部中断0中断请求标志位。
器之外,还可用作串行接口的波特率发生器。
6.2
定时器/计数器T0、T1
T0、T1 的内部结构简图示于图6-1中。从图中 可以看出,T0、T1由以下几部分组成:
• 计数器TH0、TL0和TH1、TL1;
•
•
特殊功能寄存器TMOD、TCON;
时钟分频器;
•
输入引脚T0、T1。
6.2.1 与定时器/计数器T0、T1有关的 特殊功能寄存器
⑵定时器/计数器T1
T0方式3时,T1可以工作在方式0、1、2三种方式 T1的结构如图6–6所示。 由于T0占用了原来T1的启动位TR1和溢出标志TF1, 所以此时T1溢出时不能置位溢出标志,不能申请中断, 其溢出信号送给串行口,此时T1作为波特率发生器。
T1的启停由写入方式字控制,当写入方式0/1/2 时,T1立即启动,写入方式3 时,立即停止工作。
分析:设置T0工作在方式2,计数功能,每记满100个外 部脉冲,从P1.0输出一个低电平脉冲信号(简化的打包 操作)。
这种方式下,计数寄存器由13位组成,即THx高八位(作计数器)
和TLx的低5位构成。TLx的高3位未用。
计数时,TLx的低5位溢出后向THx进位,THx溢出后 将TFx置位,并向CPU申请中断。
用软件控制,置 l时,启动 T1;清0时,停止 T1。
TF0(TCON.5)——T0的溢出标志。
TR0(TCON.4)——T0的运行控制位。
用软件控制,置1时,启动T0;清 0时,停止 T0。
• IE1(TCON.3)——外部中断1中断请求标志位。
• IE0(TCON.1)——外部中断0中断请求标志位。
器之外,还可用作串行接口的波特率发生器。
6.2
定时器/计数器T0、T1
T0、T1 的内部结构简图示于图6-1中。从图中 可以看出,T0、T1由以下几部分组成:
• 计数器TH0、TL0和TH1、TL1;
•
•
特殊功能寄存器TMOD、TCON;
时钟分频器;
•
输入引脚T0、T1。
6.2.1 与定时器/计数器T0、T1有关的 特殊功能寄存器
⑵定时器/计数器T1
T0方式3时,T1可以工作在方式0、1、2三种方式 T1的结构如图6–6所示。 由于T0占用了原来T1的启动位TR1和溢出标志TF1, 所以此时T1溢出时不能置位溢出标志,不能申请中断, 其溢出信号送给串行口,此时T1作为波特率发生器。
T1的启停由写入方式字控制,当写入方式0/1/2 时,T1立即启动,写入方式3 时,立即停止工作。
分析:设置T0工作在方式2,计数功能,每记满100个外 部脉冲,从P1.0输出一个低电平脉冲信号(简化的打包 操作)。
第六章单片微机的定时器计数器原理及应用
中断矢量001BH
⑴T0方式3下的T0
在方式3情况下,T0被拆成二个独立的8位计数器TH0、TL0。 ▲ TL0:8位定时/计数器,使用T0原有的控制寄存器资 源:TF0,TR0,GATE,C/T,INT0,中断矢量等; ▲ TH0:8位定时器,占用T1的中断溢出标志TF1,运行控 制开关TR1,中断矢量001BH,只能对片内机器周期脉冲计数
复位后,两个寄存器全部清零。
6.3.2 定时器/计数器T2的工作方式
T2的工作方式用控制位CP/RL2(T2CON.0)和RCLK +TCLK来选择。T2有3种工作方式,如表6-2所示:捕获方式、 自动重装载方式和波特率发生器方式。
⒈ 捕获方式
在一定条件下,自动将计数器TH2和TL2的数据读入捕获寄存器 RCAP2H和RCAP2L,亦即TH2和TL2内容的捕获是通过捕获寄 存器RCAP2H和RCAP2L来实现的。其工作原理可参见图6-7。
当CP/RL2=0时,选择自动重装载方式。 若T2的中断是被允许的,则无论发生TF2=1还是EXF2 =1,CPU都会响应中断,此中断向量的地址为002BH。响应 中断后,应用软件撤除中断申请。TF2 和EXF2都是直接可寻 址位,可采用CLR TF2和CLR EXF2指令实现撤除中断申请的 功能。
触发 方式
89H IE0
中断 标志
88H IT0
触发 方式
⒊ T0、T1 的数据寄存器——TH1、TL1,TH0、TL0 ⒋ 定时器/计数器中断
⑴ 中断允许寄存器IE
⑵ 中断矢量 ⑶ 中断优先级寄存器IP
6.2.2 定时器/计数器T0、T1 的工作方式
T0:有4种工作方式可选(方式0,1,2,3)
当CP/RL2=l时,选择捕获方式。
数字电子技术之定时器及其应用介绍
定时器广泛应用于各 种电子设备中,如电 子钟表、定时器、电 子设备等。
定时器的分类
1
按照工作原 理分类:机 械式、电子 式、数字式
4
按照控制方 式分类:手 动控制、自
动控制
2
按照功能分 类:单功能、
多功能
5
按照定时精 度分类:普 通精度、高
精度
3
按照应用领 域分类:工 业控制、家 用电器、汽
车电子
2
电子设备控制
工业控制:生产 线自动化、设备
监控等
医疗设备:医疗 仪器定时控制、 医疗设备监控等
家用电器:定时 开关、定时提醒
等
汽车电子:汽车 电子控制单元、 汽车导航系统等
工业自动化
1
工业生产:用于控制生产线上的设备, 提高生产效率
2
工业机器人:用于控制机器人的运动 和操作,实现自动化生产
3
定时器性能优化
提高定时精度:采 用高精度时钟源,
优化定时算法
提高灵活性:采用 可编程定时器,支 持多种定时模式和
参数设置
降低功耗:优化电 路设计,降低静态
功耗和动态功耗
提高集成度:采用 集成电路技术,减
小体积和成本
提高稳定性:优化 电路布局,减少干
扰和噪声
提高可靠性:采用 冗余设计和容错技 术,提高系统可靠
5
智能监控:实时监控家中情况,如漏水、漏气等
6
智能调节:根据个人习惯和需求,自动调节家中环境,如温度、湿度等
3
定时器设计原则
准确性:定时器的输出信号应与输入信号保 持同步,误差应控制在可接受范围内。
稳定性:定时器的输出信号应不受环境因素 的影响,如温度、湿度等。
第6章定时器及应用分析PPT课件
T 1 初 5 值 5 5 D 8 F 30 H 6
解:2)确定工作模式寄存器TMOD的值 ∵ 定时器T1工作于模式1的定时器工作方式, ∴ 高四位: GATE=0,C/T=0,M1M0=01 ,低四位:取0。 ∴ (TMOD)=0001 0000 B = 10H
3)编程
MOV SETB LOOP:MOV MOV JNB CLR CPL SJMP
28
(2) 计算计数初值 因为: (216-X)×12×10-6 ×1/12=50×10-3 所以: X=15536=3CB0H 因此: TH0=3CH,TL0=B0H
(3) 10次计数的实现 设计一个软件计数器,初始值设为10。每隔 50ms定时时间到,产生溢出标志TF0,程序查询 到TF0=1,则软件计数器减1。这样减到0时就获 得了500ms的定时。
• T0为方式0, M1M0=00 • 定时工作状态, C/T=0 • GATE=0,不受INT0控制, • T1不用全部取“0”值。 • 故TMOD=00H
25
第二步: 计算1ms定时的初值X
设初值为X,则有: (213-X) ×12×10-6 ×1/12=1×10-3 可求得:X=8192-1000=7192
第6章 定时器及应用
§6.1 定时器概述 §6.2 定时器的控制 §6.3 定时器的四种模式及应用 §6.4 思考题与习题
*
6.1 定时器概述
• 89C51/S51/S51单片机片内有两个16位定时器/计数器 定时器0(T0) 定时器1(T1)。
• 定时和事件计数 • 用于定时控制、延时、对外部事件计数和检测等场合。
& INT0引脚接一脉冲可 测脉宽
22
模式 1 工作特点
• 该模式对应的是一个16位的定时器/计数器。
解:2)确定工作模式寄存器TMOD的值 ∵ 定时器T1工作于模式1的定时器工作方式, ∴ 高四位: GATE=0,C/T=0,M1M0=01 ,低四位:取0。 ∴ (TMOD)=0001 0000 B = 10H
3)编程
MOV SETB LOOP:MOV MOV JNB CLR CPL SJMP
28
(2) 计算计数初值 因为: (216-X)×12×10-6 ×1/12=50×10-3 所以: X=15536=3CB0H 因此: TH0=3CH,TL0=B0H
(3) 10次计数的实现 设计一个软件计数器,初始值设为10。每隔 50ms定时时间到,产生溢出标志TF0,程序查询 到TF0=1,则软件计数器减1。这样减到0时就获 得了500ms的定时。
• T0为方式0, M1M0=00 • 定时工作状态, C/T=0 • GATE=0,不受INT0控制, • T1不用全部取“0”值。 • 故TMOD=00H
25
第二步: 计算1ms定时的初值X
设初值为X,则有: (213-X) ×12×10-6 ×1/12=1×10-3 可求得:X=8192-1000=7192
第6章 定时器及应用
§6.1 定时器概述 §6.2 定时器的控制 §6.3 定时器的四种模式及应用 §6.4 思考题与习题
*
6.1 定时器概述
• 89C51/S51/S51单片机片内有两个16位定时器/计数器 定时器0(T0) 定时器1(T1)。
• 定时和事件计数 • 用于定时控制、延时、对外部事件计数和检测等场合。
& INT0引脚接一脉冲可 测脉宽
22
模式 1 工作特点
• 该模式对应的是一个16位的定时器/计数器。
单片机定时器及应用
D4
D3
D2
D1
D0
在这种方式下,16位寄存器TH1和TL1只用13位,由TH1的8位和TL1的低6位组成。TL1的高3位不定。 当TL1的低6位计数溢出时,向TH1进位。而TH1计数溢出时,则向中断标志位TF1进位(即硬件将TF1置1),并请求中断。 可通过查询TF1是否置“1”或考察中断是否发生来判定定时器T1的操作完成与否。
P1
P2
S1
振荡周期
状态周期
机器周期
机器周期
指令周期
XTAL2 (OSC)
S2
S3
S4
S6
S6
S1
S2
S4
S6
S3
S6
P1
P1
P1
P1
P1
P1
P1
P1
P1
P1
P1
P2
P2
P2
P2
P2
P2
P2
P2
P2
P2
P2
6.1 定时器的结构及工作原理
返回
6.3 定时器的工作方式——方式0
6.3 定时器的工作方式——方式1
6.3.2 方式1
其定时时间为:
6.3 定时器的工作方式——方式2
01
01
6.3 定时器的工作方式——方式2
方式2工作过程图 (x=0, 1) 。
6.3 定时器的工作方式——方式3
6.3.4 方式3 只适用于定时器/计数器T0。T1不能工作在方式3。 如果将T1置为方式3,则相当于TR1=0,停止计数 (此时T1可用来作串行口波特率产生器) 。 1. 工作方式3下的T0 T0在方式3时被拆成两个独立的8位计数器:TH0和TL0。 8位计数器TL0使用T0的状态控制位C/T*、GATE、TR0、INT0,它既可以工作在定时方式,也可以工作在计数方式。 8位定时器TH0被固定为一个8位定时器(不能作外部计数模式) ,并使用定时器T1的状态控制位TR1,同时占用定时器T1的中断请求源TF1。此时,定时器TH0的启动或停止只受TR1控制。 TR1=1时,启动TH0的计数; TR1=0时,停止TH0的计数
D3
D2
D1
D0
在这种方式下,16位寄存器TH1和TL1只用13位,由TH1的8位和TL1的低6位组成。TL1的高3位不定。 当TL1的低6位计数溢出时,向TH1进位。而TH1计数溢出时,则向中断标志位TF1进位(即硬件将TF1置1),并请求中断。 可通过查询TF1是否置“1”或考察中断是否发生来判定定时器T1的操作完成与否。
P1
P2
S1
振荡周期
状态周期
机器周期
机器周期
指令周期
XTAL2 (OSC)
S2
S3
S4
S6
S6
S1
S2
S4
S6
S3
S6
P1
P1
P1
P1
P1
P1
P1
P1
P1
P1
P1
P2
P2
P2
P2
P2
P2
P2
P2
P2
P2
P2
6.1 定时器的结构及工作原理
返回
6.3 定时器的工作方式——方式0
6.3 定时器的工作方式——方式1
6.3.2 方式1
其定时时间为:
6.3 定时器的工作方式——方式2
01
01
6.3 定时器的工作方式——方式2
方式2工作过程图 (x=0, 1) 。
6.3 定时器的工作方式——方式3
6.3.4 方式3 只适用于定时器/计数器T0。T1不能工作在方式3。 如果将T1置为方式3,则相当于TR1=0,停止计数 (此时T1可用来作串行口波特率产生器) 。 1. 工作方式3下的T0 T0在方式3时被拆成两个独立的8位计数器:TH0和TL0。 8位计数器TL0使用T0的状态控制位C/T*、GATE、TR0、INT0,它既可以工作在定时方式,也可以工作在计数方式。 8位定时器TH0被固定为一个8位定时器(不能作外部计数模式) ,并使用定时器T1的状态控制位TR1,同时占用定时器T1的中断请求源TF1。此时,定时器TH0的启动或停止只受TR1控制。 TR1=1时,启动TH0的计数; TR1=0时,停止TH0的计数
定时器及应用
技术创新
精度提升
随着技术的不断进步,定时器的计时精度越来越高,能够满足各 种高精度应用的需求。
可靠性增强
通过改进材料、优化设计和引入智能诊断技术,定时器的可靠性得 到了显著提升,减少了故障和误差。
微型化与集成化
随着微电子技术的进步,定时器正朝着更小尺寸、更低功耗和更高 集成度的方向发展,便于携带和集成到各种设备中。
智能化发展
自适应调整
01
通过引入人工智能技术,定时器能够根据实际应用需求自适应
调整计时参数,提高应用的灵活性和适应性。
远程控制与监控
02
借助通信技术,定时器可以实现远程控制和实时监控,方便用
户对设备进行远程管理和维护。
数据分析与优化
03
通过收集和分析定时器的使用数据,可以优化计时性能和应用
效果,提高整体效率。
应用领域拓展
1 2
物联网应用
随着物联网的普及,定时器的应用领域不断拓展, 涉及到智能家居、工业自动化、智能农业等多个 领域。
医疗与健康领域
定时器在医疗和健康领域的应用逐渐增多,如智 能药物投放、健康监测等,为医疗保健提供便利。
3
交通与物流领域
定时器在交通控制、智能物流等领域的应用也日 益广泛,提高了运输效率和安全性。
适用于各种操作系统和 硬件平台。
计时精度受限于程序运 行环境和操作系统调度。
硬件实现
01
02
03
04
原理
利用硬件电路(如石英晶体振 荡器)产生稳定的计时脉冲。
• 计时精度
计时精度高,不受软件环境影 响。
• 稳定性
计时稳定,不易受到程序运行 状态的影响。
• 资源消耗
硬件成本较高,且不易动态调 整计时时间。
第六章-STM32-定时器的使用-《基于ARM的单片机应用及实践--STM32案例式教学》课件
第六章 STM32 定时器的使用 通用定时器配置步骤
1)TIM3时钟使能 这里我们通过APB1ENR的第1位来设置TIM3的时钟,因为 Stm32_Clock_Init函数里面把APB1的分频设置为2了, 所以我们的TIM3时钟就是APB1时钟的2倍,等于系统时 钟(72M)。 2)设置TIM3_ARR和TIM3_PSC的值 通过这两个寄存器,设置自动重装的值及分频系数。这 两个参数加上时钟频率就决定了定时器的溢出时间。
计数器寄存器:TIMx_CNT 预分频器寄存器:TIMx_PSC 自动装载寄存器:TIMx_ARR
第六章 STM32 定时器的使用 通用寄存器时基单元 1)计数器寄存器:TIMx_CNT
16位的计数器,设定值从1~65535
第六章 STM32 定时器的使用 计数器模式 向上计数模式:计数器从0计数到设定的数值,然后 重新从0开始计数并且产生一个计数器溢出事件。
在定时器配置完了之后,因为要产生中断,必不可少的 要设置NVIC相关寄存器,以使能TIM3中断。
6)编写中断服务函数 编写定时器中断服务函数,通过该函数处理定时器 产生的相关中断。中断产生后,通过状态寄存器的 值来判断此次产生的中断属于什么类型。然后执行 相关的操作。
第六章 STM32 定时器的使用 通用寄存器时基单元
第六章 STM32 定时器的使用
2)预分频器寄存器:TIMx_PSC 预分频器可以讲计数器的时钟频率按1到65536之间的任 意值分频,它是一个16位寄存器。 这个寄存器带有缓冲区,它能够在工作时被改变。新的 预分频器参数在下一次更新事件到来时被采。
第六章 STM32 定时器的使用 预分频器寄存器在事件更新时采用
定时器的工作频率计算公式为 CK_CNT=定时器时钟/(TIMx_PSC+1) 其中CK_CNT表示定时器工作频率 TIMx_PSC表示分频系数
第六章 MCS-51单片机内部定时器
6.3.1 模式0及应用
在这种模式下,16位寄存器只用了13位。 其中,TL0的高3位未用,TH0占8位。当 TL0的低5位溢出时,向TH0进位。当TH0 溢出时,向中断标志位TF0进位,并申请中 断。 因此,可通过查询TF0 是否置位或考 察中断是否发生来判断定时器/计数器0的 操作完成与否。
(2)计算1ms定时T0的初值:
机器周期为(1/fOSC)×12=[1/(12×106)]×12=1μs, 设T0的 计数初值为X,则 (213-X)×1×10-6=1×10-3ms
X=213-1×10-3/(1×10) -6 =8192-1000=7192D=1110000011000
高8位: E0H 低5位: 18H
fosc=12MHz, 采用查询方式。
解:方波周期 T=1/100Hz=0.01s=10ms 用T1定时5ms 计数初值 X为: X=216-12×5×103/12=60536=EC78H 程序如下:
MOV TMOD, #10H ;T1模式1,定时方式
SETB TR1 LOOP:MOV TH1,#0ECH
例:晶振为12MHZ ,则计数周期为
T=12/(12*106)Hz =1微秒
最短的定时 周期
计数器工作方式:
当定时器/计数器为计数工作方式时,通过
引脚T0和T1对外部信号计数,外部脉冲的下降
沿触发计数
在每个机器周期的
采样过程:
S5P2期间采样引脚
当输入脉冲信号从1到0的负跳变时,计数器就 自动加1。 由于检测一个由1到0的跳变需要两 个机器周期,所以 计数的最高频率为振荡频 率的1/24。为了确保给定电平在变化前至少被 采样一次,外部计数脉冲的高低电平均需保持 一个机器周期以上。(占空比没有限制)
6定时器及应用
8FH 8EH 8DH 8CH 8BH 8AH 89H 88H TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 (88H)
TCON各位的功能。
§6.2
定时器的控制
TMOD 各位的功能 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 (88H)
•定时器的四种模式及应用
模式1、2、3及应用
§6.1
定时器概述
这些寄存器之间是通过 内部总线和控制逻辑电 路连接起来的。
1、定时器的结构
§6.1
定时器概述
89C51定时器的结构如图6-1 所示。
◆
有两个16位的定时器/计数器,即T0和T1,它们实际 上都是16位加1计数器。
◆
T0由两个8位特殊功能寄存器TH0和TL0构成;T1由
前一章已经讲过。
§6.2
定时器的控制
§6.3
定时器的4种模式及应用
由上节可知,通过对TMOD中的M1、M0的设置, 可以选择四种工作方式。也就是每个定时器可构成4种 电路结构模式。 在模式0、1和2,T0和T1的工作方式相同,在模
式3,两个定时器的方式不同。下面以T1为例,分述各
种工作方式的特点和用法。
数器。这个过程称为定时器/计数器的初始化。
§6.1
定时器概述
2、定时器的功能
当CPU用软件给定时器设置了某种工作方式之后,
定时器就会按设定的工作方式独立运行,不再占用
CPU的操作时间,除非定时器计数溢出,才可能中断 CPU当前操作。 每个定时器/计数器还有4种工作模式。其中模式 0-2对T0和T1是一样的,模式3对两者不同。
TCON各位的功能。
§6.2
定时器的控制
TMOD 各位的功能 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 (88H)
•定时器的四种模式及应用
模式1、2、3及应用
§6.1
定时器概述
这些寄存器之间是通过 内部总线和控制逻辑电 路连接起来的。
1、定时器的结构
§6.1
定时器概述
89C51定时器的结构如图6-1 所示。
◆
有两个16位的定时器/计数器,即T0和T1,它们实际 上都是16位加1计数器。
◆
T0由两个8位特殊功能寄存器TH0和TL0构成;T1由
前一章已经讲过。
§6.2
定时器的控制
§6.3
定时器的4种模式及应用
由上节可知,通过对TMOD中的M1、M0的设置, 可以选择四种工作方式。也就是每个定时器可构成4种 电路结构模式。 在模式0、1和2,T0和T1的工作方式相同,在模
式3,两个定时器的方式不同。下面以T1为例,分述各
种工作方式的特点和用法。
数器。这个过程称为定时器/计数器的初始化。
§6.1
定时器概述
2、定时器的功能
当CPU用软件给定时器设置了某种工作方式之后,
定时器就会按设定的工作方式独立运行,不再占用
CPU的操作时间,除非定时器计数溢出,才可能中断 CPU当前操作。 每个定时器/计数器还有4种工作模式。其中模式 0-2对T0和T1是一样的,模式3对两者不同。
第6章 定时器及应用(李海1031)PPT课件
② TF0(TCON.5) —T0溢出标志位。 其功能和操作情况同TF1。 当T0溢出时,由硬件自动使中断触发器TF0置1, 并向CPU申请中断。 当CPU响应中断进入中断服务程序后,TF1被硬 件自动清0。TF1也可以用软件清0。
03.12.2
③ TR1(TCON.6)—T1运行控制位。
可通过软件置1(TR1=1)或清0(TR1=0) 来启动或 关闭 T1工作。
• TCON除可字节寻址外,各位还可位寻址。
• 89C51系统复位时,TCON的所有位被清0。 • TCON各位的定义格式如 图6-5所示。 • TCON各位定义及具体的意义归纳如 图6-6所示。
03.12.2
图6-5 控制寄存器TCON的位定义
8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
03.12.2Leabharlann ⑤ IE1,IT1,IE0,IT0(TCON.3~TCON.0) ——外部中断INT1,INT0请求及请求方式 控制位。前一章已经讲过。
03.12.2
§6.3 定时器的四种模式及应用
§6.3.1 §6.3.2 §6.3.3 §6.3.4 §6.3.5
模式 0 及其应用 模式 1 及其应用 模式 2 及其应用 模式 3 及其应用 综合应用举例
M1 M0 00 01 10
11
工作模式
功能描述
模式0 13 位计数器
模式1 16 位计数器
模式2 自动再装入8 位计数器
模式3
定时器0:分成二个8 位计数器 定时器1:停止计数
03.12.2
② C/T—计数器/定时器方式选择位。 C/T=0,设置为定时方式。定时器计数 89C51片内脉冲,即对机器周期计 数。 C/T=1,设置为计数方式。计数器的输入 来自引脚T0(P3.4)或T1(P3.5) 端的外部脉冲 。
第6章 定时器及应用
二、定时器的控制 在启动 CTC 工作前,必须将一些命令(控制字)写入 CTC 中,即初始化。CTC的初始化是通过TMOD和TCON两个寄存器 来完成的。 1. 定时器方式寄存器TMOD
TMOD
注意:TMOD的低4位为T0的方式字段,高4位为T1的方式 字段,它们的含义完全相同。 ① 门控位GATE: =0为非门控方式(内部启动):TR0/TR1置1即可启动T0/T1 工作; =1门控方式(外部启动):TR0/TR1置1,且引脚P3.2/P3.3 为高电平方可启动T0/T1,即允许外中断启动T0/T1。
二、定时/计数器编程格式 1. 初始化编程格式 MOV TMOD,# 方式字 MOV TH0/TH1,#XH MOV TL0/TL1,#XL (SETB EA) (SETB ET0/ET1) SETB TR0/TR1 ;选择方式 ;预置初值 ;根据需要开中 ;启动定时器
注意:方式0(13位):TL0/TL1的低5位有效 方式2(8位) :TL0/TL1=TH0/TH1=X
确定定时器工作方式指令:MOV TMOD,#方式字 例:设T0用方式2非门控定时,T1用方式1门控计数。 MOV TMOD,# 11010010B
2. 定时器控制寄存器TCON
TCON
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TCON的作用是控制定时器的启动、停止,标志定时器的溢出 和中断情况。 ① 定时器运行控制位TR0、TR1 TR0 =0,停止T0工作; TR0 =1,启动T0工作。 TR1 =0,停止T1工作; TR1 =1,启动T1工作。 例:启动T0: SETB TR0
振荡器
12
C/T=0 C/T=1 T0 TR0 GATE INT0 1 >1 & 控制
第六章 定时器及应用
定时功能和计数功能的设定和控制都是通过软件来设 定的。
8051定时/计数器逻辑结构
T0、T1的内部结构框图
定时器/计数器0、1的初始化编程
定时器的控制
工作模式寄存器TMOD
GATE=1,T0、T1的启动由INTi引脚和TRi位共同控制。只有INTi引脚为高电 平时,TRi置“1”才能启动定时/计数器。
GATE=0,T0、T1由软件设置TRi来控制启动。TRi=1,启动;TRi=0,停止
定时器/计数器的工作方式
TMOD用于控制T0和T1的工作方式,低4位用于控制T0, 高4位用于控制T1
M1M0:工作方式控制位,对应的工作方式如下图:
控制寄存器TCON
TCON用于控制定时/计数器的启、停、溢出标志和外部中断信号 触发方式。
400us计数初值: (28-X) ×2×10-6=400×10-6,X=56=38H
ORG 2000H START:AJMP MAIN
ORG 000BH AJMP PIT0;转入T0中断处理入口 ORG 001BH AJMP PIT1;转入T1中断处理入口 ORG 2100H MAIN: MOV SP,#60H MOV TMOD,#03H;模式3 MOV TL0,#9CH;定时200us初值 MOV TH0,#38H;定时400us初值 MOV TCON,#50H;启动TL0,TH0计数 MOV IE,#8AH,开T0、T1中断
模式1是16位定时/计数器,与模式0的区别是计数器的长 度。比模式0常用。
定时时间T:
T=(216-X) ×12/fosc =(216-X) ×机器周期 计数初值:X=216-计数值
模式1举例
例:用定时器T1产生一个50Hz的方波,由P1.1输 出,采用查询的方式进行控制,设晶体频率为 12MHz。 ① 确定计数初值 方波周期T=20ms,用T1定时10ms,P1.1取反输 出,计数初值X:T =(216-X) ×12/fosc =10 ×10-3
8051定时/计数器逻辑结构
T0、T1的内部结构框图
定时器/计数器0、1的初始化编程
定时器的控制
工作模式寄存器TMOD
GATE=1,T0、T1的启动由INTi引脚和TRi位共同控制。只有INTi引脚为高电 平时,TRi置“1”才能启动定时/计数器。
GATE=0,T0、T1由软件设置TRi来控制启动。TRi=1,启动;TRi=0,停止
定时器/计数器的工作方式
TMOD用于控制T0和T1的工作方式,低4位用于控制T0, 高4位用于控制T1
M1M0:工作方式控制位,对应的工作方式如下图:
控制寄存器TCON
TCON用于控制定时/计数器的启、停、溢出标志和外部中断信号 触发方式。
400us计数初值: (28-X) ×2×10-6=400×10-6,X=56=38H
ORG 2000H START:AJMP MAIN
ORG 000BH AJMP PIT0;转入T0中断处理入口 ORG 001BH AJMP PIT1;转入T1中断处理入口 ORG 2100H MAIN: MOV SP,#60H MOV TMOD,#03H;模式3 MOV TL0,#9CH;定时200us初值 MOV TH0,#38H;定时400us初值 MOV TCON,#50H;启动TL0,TH0计数 MOV IE,#8AH,开T0、T1中断
模式1是16位定时/计数器,与模式0的区别是计数器的长 度。比模式0常用。
定时时间T:
T=(216-X) ×12/fosc =(216-X) ×机器周期 计数初值:X=216-计数值
模式1举例
例:用定时器T1产生一个50Hz的方波,由P1.1输 出,采用查询的方式进行控制,设晶体频率为 12MHz。 ① 确定计数初值 方波周期T=20ms,用T1定时10ms,P1.1取反输 出,计数初值X:T =(216-X) ×12/fosc =10 ×10-3
《定时器及其应用》课件
缺点是需要接入网络,且需要相 应的软件和硬件支持。
03
定时器的使用方法
定时器的设置方法
01
02
03
确定定时时间
根据需要确定定时时间, 可以通过旋转定时器上的 旋钮或使用电子定时器上 的按键进行设置。
启动定时器
在设置好时间后,按下启 动按钮,定时器开始计时 。
停止定时器
当定时时间到达后,定时 器会自动停止计时,并发 出提示音或信号。
数字式定时器具有高精度、高稳定性、多功能等特点,可以设定复杂的定时程序和 多种触发条件。
缺点是价格较高,需要外接电源,且对使用环境有一定的要求。
网络定时器
网络定时器是利用网络技术来实 现远程控制和定时功能的定时器
。
网络定时器可以通过互联网或局 域网进行远程控制和定时设置, 具有高度的灵活性和可扩展性。
。
电子式定时器
电子式定时器是利用电子元件 和电路来控制定时时间的定时 器。
电子式定时器通常由石英晶体 振荡器提供稳定的时间基准, 通过数字逻辑电路来控制定时 时间。
优点是精度高、稳定性好、调 节范围广,缺点是价格相对较 高,需要使用电池或外接电源 。
数字式定时器
数字式定时器是采用微处理器技术来实现定时功能的定时器。
05
定时器的发展趋势和未来展望
定时器的技术发展趋势
1 2 3
智能化
随着人工智能技术的发展,定时器将更加智能化 ,能够实现自适应、自学习等功能,提高自动化 水平。
微型化
随着微电子技术的进步,定时器将进一步微型化 ,便于集成和携带,满足各种小型化设备的需求 。
可靠性提高
随着材料科学和制造工艺的进步,定时器的可靠 性将得到显著提高,能够适应更恶劣的工作环境 。
第6章定时器及其应用
ORG 0000H
CLRD,
STEB TR1;
#60H;
LOOP2:JBC TF1,
MOV TH1,#0FFH; T1S1;
MOV TL1,#0FFH;
SJMP LOOP2;
SETB TR1;
T1S1: SETB P1.0;
LOOP1:JBC TF1,T1S;
CLR TR1;
1 定时方式 T/C记录8051内部振荡器输出经12分频后的脉冲(机 器周期信号)个数。即每个机器周期使T/C0或T/C1的 计数器增加1,直到计满回零后自动产生溢出中断请求, 表示定时时间到。
2 计数方式 T/C的功能是计来自引脚T0(P3.4)和T1(P3.5)的 外部脉冲信号的个数。输入脉冲由1变0的下降沿时, 计数器的值增加1直到回零产生溢出中断,表示计数已 达预期个数。
第6章 定时器/计数器及其应用
§1 MCS-51的定时器/计数器
一 、定时器/计数器的组成
MCS-51单片机内部有2个16位的可编程的定时器、计 数器,即定时器/计数器0(T/C0)和定时器/计数器1 (T/C1),它们都有定时和对外部事件计数的功能。 T/C0是由两个8位的特殊功能寄存器TH0(8CH)和 TL0(8AH)组成的,T/C1是由TH1(8DH)和TL1 (8BH)组成。通过对TH1、TL1、TH0和TL0的初始 化编程来控制T/C0和T/C1的计数初值。
SJMP LOOP1;
AJMP START;
T1S: CLR TR1;
END
MOV TMOD,#20H;
MOV TH1,#06H+4;
例:用定时器T1,采用工作方式2计数,要求每计满 156次,将P1.7取反。
计数初值:X=28-156=100=64H TH1=TL1=64H,TMOD=60H(计数方式2)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定时器的4种模式及应用
每种工作模式对应的最大计数值 模式0 :13位计数器 213=8192 模式1 :16位计数器 216=65536 模式2 :8位计数器 28=256 模式3 :8位计数器 28=256 定时初值: 对机器周期进行计数。T:定时时间,X:初值,N:计数器位数, fosc:系统时钟频率 (2N-X) ×12/fosc=T X=2N-fosc/12×T 计数初值: 对外部脉冲计数,计数值根据要求确定。N:计数器位数,X:初值, 则: X=2N-计数值
② 设置工作模式寄存器TMOD TMOD=0001 0000B=10H ③ 启动定时计数器
模式1举例
ORG 2000H MOV TMOD,#10H SETB TR1 LOOP:MOV TH1,#0D8H MOV TL1,#0F0H JNB TF1,$ CLR TF1 CPL P1.1 SJMP LOOP END
定时/计数器工作模式2
模式2是能自动重装计数初值的8位计数器。低8位作计数 器使用,高8位保存计数初值 定时方式计数初值:X=28-T×fosc/12 计数方式计数初值:X=28-计数值
工作模式2举例
例1、利用定时器T1的模式2对外部信号计数。 要求每计满100次,将 P1.0端取反。
ORG 2000H START:AJMP MAIN ORG 000BH AJMP PIT0;转入T0中断处理入口 ORG 001BH AJMP PIT1;转入T1中断处理入口 ORG 2100H MAIN: MOV SP,#60H MOV TMOD,#03H;模式3 MOV TL0,#9CH;定时200us初值 MOV TH0,#38H;定时400us初值 MOV TCON,#50H;启动TL0,TH0计数 MOV IE,#8AH,开T0、T1中断
LOOP: AJMP LOOP;等待中断 PIP0 : MOV TL0,#9CH;T0中断处理程序 CPL P1.0 RETI PIT1: MOV TH0,#38H;T1中断处理程序 CPL P1.1 RETI
利用GATE测器的启动只受TRi位控制 GATE=1时,定时器的启动受TRi位和外部中 断信号INTi的共同控制。只有当INTi引脚为1, 同时TRi=1时才能启动计数; INTi引脚为0时 停止计数。 换个角度看,当GATE=1时,定时器实际记录 的时间就是相应INTi引脚上高电平的持续时间。 通过反相器,则可测得相应引脚的低电平的持 续时间。两个时间之和即为该引脚上输入波形 的周期,其倒数为输入波形的频率,还可算出 占空比等参数。
8051定时/计数器逻辑结构
T0、T1的内部结构框图
定时器/计数器0、1的初始化编程
定时器的控制
工作模式寄存器TMOD
GATE=1,T0、T1的启动由INTi引脚和TRi位共同控制。只有INTi引脚为高电 平时,TRi置“1”才能启动定时/计数器。 GATE=0,T0、T1由软件设置TRi来控制启动。TRi=1,启动;TRi=0,停止
定时/计数器工作模式3
在T0模式3时,T1仍可设置为方式0~2。由于 TR1和TF1被T0的TH0占用,计数器开关K已 被接通,此时仅用T1的C/T控制T1运行。计数 器溢出时,只能将输出送入串行口或用于不需 要中断的场合。 在一般情况下,当T1用作串行口波特率发生器 时,T0才设置为工作模式3。此时,常把定时 器T1设置为模式2,用作波特率发生器。
采用定时器溢出中断方式的程序 ORG 0000H ; 主程序 RESET: AJMP MAIN ; 跳过中断服务程序区 ORG 000BH ;定时器T0中断矢量 AJMP PE ;转入中断服务程序 ORG 0030H MAIN: MOV TMOD,#00H;设置T0为模式0 MOV TL0,#0CH;计数初值写入 MOV TH0,#0F0H SETB EA ;CPU开中断 SETB ET0 ;T0中断允许 SETB TR0 ;启动定时 HERE:SJMP HERE ;等待中断 ORG 0120H ;中断服务程序 PE: MOV TL0,#0C0H;重装计数初值 MOV TH0,#0F0H CPL P1.0 ;P1.0取反 RETI ;中断返回
T0模式3结构图
T0模式3下,T1结构
工作模式3举例
例:应用T0模式3,分别设定200us和400us定时, 并使P1.0和P1.1分别产生周期为400us和800us 方波,已知晶振频率为6MHz,采用中断方式。 200us计数初值: (28-X) ×2×10-6=200×10-6,X=156=9CH 400us计数初值: (28-X) ×2×10-6=400×10-6,X=56=38H
定时/计数器工作模式1
模式1是16位定时/计数器,与模式0的区别是计数器的长 度。比模式0常用。 定时时间T: T=(216-X) ×12/fosc =(216-X) ×机器周期 计数初值:X=216-计数值
模式1举例
例:用定时器T1产生一个50Hz的方波,由P1.1输 出,采用查询的方式进行控制,设晶体频率为 12MHz。 ① 确定计数初值 方波周期T=20ms,用T1定时10ms,P1.1取反输 出,计数初值X:T =(216-X) ×12/fosc =10 ×10-3
INT1引脚
工作模式0举例
例:应用定时器T0产生1ms定时,并使P1.0输出周期为 2ms的方波,已知晶振频率为6MHz 初值X: (213-X) ×12/(6×106)=1×10-3 X=7692=1E0CH,二进制表示为X=0001 1110 0000 1100 TH0=0F0H(高8位),TL0=0CH(低5位)
思路:外部信号由T1(P3.5)引脚输入,每发生一次 负跳变计数器加1,每输入100个脉冲,计数器发生溢出中 断,中断服务程序将P1.0取反一次 T1的计数初值: X= 28 -100=156=9CH,因此,TH1=TL1=9CH TMOD=0110 0000B=60H
工作模式2举例
程序清单: ORG LJMP ORG CPL RETI MAIN: MOV MOV MOV MOV SETB HERE: SJMP 0000H MAIN 001BH P1.0
程序清单:
START:MOV TMOD,#06H;T0模式2,计数 MOV TH0,#0FFH;计数初值 MOV TL0,#0FFH CLR P1.1;P1.1初态为0 SETB TR0 LOOP: JBC TF0,LP1;检测外部信号负跳变 SJMP LOOP; LP1: CLR TR0;关定时器 MOV TMOD,#02H;T0改变为定时200us ,模式2 MOV TH0,#156;定时的计数初值 MOV TL0 ,#156 SETB P1.1;P1.1输出1 CLR P1.0; P1.0输出0 SETB TR0;启动定时
采用查询TF0状态方式:
ORG 2000H MOV TMOD,#00H;写入方式控制字 MOV TL0,#0CH;计数初值写入 MOV TH0,#0F0H SETB TR0;启动T0 LOOP:JBC TF0,PE;TF0=1溢出转移PE,清TF0 AJMP LOOP;未溢出 PE: MOV TL0,#0C0H;重装计数初值 MOV TH0,#0F0H CPL P1.0 AJMP LOOP END
定时器概述
组成:6个SFR寄存器,包括TMOD、TCON、TH0和 TL0、TH1和TL1。 定时/计数器的核心:一个加1计数器,完成加1计数功 能。 定时功能:若是对单片机内部的机器周期进行计数, 从而得到定时时间,这就是定时功能。每个机器周期 计数器加1 计数功能:若是对单片机的T0、T1引脚输入信号进行 计数,即计数功能,当外部输入信号出现下降沿时, 计数器加1。 定时功能和计数功能的设定和控制都是通过软件来设 定的。
测试脉宽举例
MOV TMOD,#09H;T0定时,模式1 MOV TH0,#00H;T0计数初值0000H MOV TL0,#00H MOV R0,#20H;RAM的地址指针 LOOP1:JB P3.2,LOOP1;等待INT0变低 SETB TR0;启动T0准备计数 LOOP2:JNB P3.2,LOOP2;等待INT0变高 LOOP3:JB P3.2,LOOP3 ;等待INT0再次变低 CLR TR0;INT0变低停止计数 MOV @R0,TL0;存入计数值 INC R0 MOV @R0,TH0
利用GATE测试外部输入脉冲宽度
测试原理(以T0为例,GATE=1,TR0=1)
测试脉宽举例
例:利用T0门控位GATE来测试由INT0(P3.2) 引脚输入的正脉冲宽度,已知晶振为12MHz, 所测得的高8位值存入片内RAM的21H单元, 低8位值存入片内20H单元中。 思路:采用T0工作模式1(16位计数), GATE=1,TR0=1,初值为0000H
定时器/计数器的工作方式
TMOD用于控制T0和T1的工作方式,低4位用于控制T0, 高4位用于控制T1 M1M0:工作方式控制位,对应的工作方式如下图:
控制寄存器TCON
TCON用于控制定时/计数器的启、停、溢出标志和外部中断信号 触发方式。 TFi:T0、T1溢出位。当计数溢出时,由硬件自动使TFi置1,并 向CPU申请中断,中断响应后硬件自动清0。TFi也可作为程序查 询的标志位,在查询方式下由软件清0。 TRi:T0、T1运行控制位。TRi=1,启动计数,TRi=0,停止计 数
定时器/计数器工作模式0
模式0为13位计数器 定时时间T: T=(213-X) ×12/fosc=(213-X) ×机器周期 计数初值:X=213-计数值
振荡器 ÷12