第6章 定时计数器 -改
合集下载
单片机原理及应用 第06章定时计数器

20
6.5 定时器/计数器的编程
初始化
1 根据要求给方式寄存器TMOD送一个方式控制 字,以设定定时器的工作方式; 2 根据需要给TH和TL选送初值,以确定需要的 定时时间或计数的初值; 3 根据需要给中断允许寄存器IE送中断控制字, 以开放相应的中断和设定中断优先级;
也可用查询方式来响应定时器。
JBC TF1,RP1 SJMP DEL2
30
6.6.4 长定时时间的产生
例 假设系统时钟为6MHz,编写定时器T0产生 1秒定时的程序。 (1)T0工作方式的确定 定时时间较长,采用哪一种工作方式? 由各种工作方式的特性,可计算出: 方式0最长可定时16.384ms;
方式1最长可定时131.072ms; 方式2最长可定时512μs。 选方式1,每隔100ms中断一次,中断10次为1s。
8
6.3 定时/计数器的4种工作方式 方式0、方式1(13位、16位定时计数方式)
T1工作于方式0的等效框图(M1M0=00、01)
GATE=0、A=1、TR1=1 GATE=1、INT1=1、TR1=1。注意定时器初值与定时时间的不同
9
6.3.1 方式0、方式1的说明 定时/计数器T1工作在方式0时,为13位的计数器,由TL1 的低5位和TH1的8位所构成。TL1低5位溢出向TH1进 位,TH1计数溢出置位TCON中的溢出标志位TF1。 GATE位的状态决定定时/计数器运行控制取决于TR1 一个条件还是TR1和INT1引脚这两个条件。 当GATE=0时,A点电位恒为1,则只要TR1被置为1,B 点电位即为1,定时/计数器被控制为允许计数(定时/计 数器的计数控制仅由TR1的状态确定,TR1=1计数, TR1=0停止计数)。 当GATE=1时,B点电位由INT1输入的电平和TR1的状 态确定,当TR1=1,且INT1=1时,B点电平才为1,才 允许定时器/计数器计数(计数控制由TR1和INT1二个条 件控制)。 方式1时,TL1的8位都参与计数,因而属于16位 定时/计数器。其控制方式,等效电路与方式0完全相 10 同。
单片机第六章定时器

计数溢出时,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输出一个低电平脉冲信号(简化的打包 操作)。
第6章MCS-51的定时器

• 28×12×1/12MHz=28us=256us=0.256ms
工作方式2_补充说明
8位计数器 TL0作计数器,TH0作预置寄存器使用,计数溢出时 ,TH0中的计数初值自动装入TL0,即TL0是一个自动 恢复初值的8位计数器。 在使用时,要把计数初值同时装入TL0和TH0中。 优点是提高定时精度,减少了程序的复杂程度。
工作方式1_应用分析
定时和计数的应用 计数范围:1~216 计数计算公式:计数值=216-计数初值 机器周期(MC):=12/Fosc=12/时钟频率 定时范围:1机器周期~216机器周期 定时计算公式:定时时间=(216-定时初值)×
机器周期 如果晶振频率为6MHz ,则最大定时时间为: 216×12×1/6MHz=217us=131072us=131.072ms 如果晶振频率为12MHz ,则最大定时时间为: 216×12×1/12MHz=216us=65536us=65.536ms 工作方式1的定时计数功能切换模式,与工作方式
0完全一样;而启动定时计数器的模式,也与工作方式 0完全一样。计数量方式1更大,可完全取代方式0。
6.2.3 方式2
方式2为自动重装初值的8位计数方式。
TCON
TF1 D7
申请 中断
TR1
溢出8位计数器
1
TF0
TL0
TR0
0 &
TH1重TH装0 单元 ≥1 8位
D0
T0引脚
机器周期 1
INT0引脚
6.1.1 工作方式控制寄存器TMOD TMOD(工作方式寄存器):选择定时器/计数器T0、T1的工作 模式和工作方式,字节地址为89H,不能位寻址。
8位分为两组,高4位控制T1,低4位控制T0。 (1)GATE——门控位
电气控制与S7-300 PLC编程技术第6章 定时器计数器指令

6.2 定时器指令
定时器是PLC的重要编程元件,它的作用与继电器控制线 路中的时间继电器基本相似,用于实现或监控时间序列。
定时器是一种由位和字组成的复合单元,定时器的触点
由位表示,其定时时间值存储在字存储器中。
在CPU的存储器中留出了定时器区域,该区域用于存储 定时器的定时时间值。每个定时器为2 B,称为定时字。 在S7-300中,定时器区为512 B,因此最多允许使用256个 定时器。定时器地址:T<地址号>,如T1…
时 基 10 ms 100 ms 1s 10s
时基的二进制 分辨率 代码 0 0 0 1 1 0 1 1 0.01 s 0.1 s 1s 10 s
定 时 范 围 10MS 至 9S_990MS 100MS 至 1M_39S_900MS 1S 至 16M_39S 10S 至 2H_46M_30S
例:定时值-127s。
取值范围为1~999。 – L S5T#aH_bbM_ccS_dddMS :S5时间表示法
S5中的时间表示法装入定时数值, a:小时,bb:分钟,cc: 秒,ddd:毫秒,范围:10MS到2H_46M_30S;此时,时基是自 动选择的,原则是根据定时时间选择能满足定时范围要求的 最小时基。
• S7-300提供了5种形式的定时器:
• S7中定时时间由时基和定时值两部分组成 ,定时时间等于时基与 定时值的乘积。当定时器运行时,定时值不断减 1,直至减到0,
减到0表示定时时间到。定时时间到后会引起定时器触点的动作。
0,01s <-0,1s <-1s <-10s <--
0 0 1 1
0 1 0 1
时间值: 0 . . . 999
– S_PULSE脉冲定时器SP。
定时器是PLC的重要编程元件,它的作用与继电器控制线 路中的时间继电器基本相似,用于实现或监控时间序列。
定时器是一种由位和字组成的复合单元,定时器的触点
由位表示,其定时时间值存储在字存储器中。
在CPU的存储器中留出了定时器区域,该区域用于存储 定时器的定时时间值。每个定时器为2 B,称为定时字。 在S7-300中,定时器区为512 B,因此最多允许使用256个 定时器。定时器地址:T<地址号>,如T1…
时 基 10 ms 100 ms 1s 10s
时基的二进制 分辨率 代码 0 0 0 1 1 0 1 1 0.01 s 0.1 s 1s 10 s
定 时 范 围 10MS 至 9S_990MS 100MS 至 1M_39S_900MS 1S 至 16M_39S 10S 至 2H_46M_30S
例:定时值-127s。
取值范围为1~999。 – L S5T#aH_bbM_ccS_dddMS :S5时间表示法
S5中的时间表示法装入定时数值, a:小时,bb:分钟,cc: 秒,ddd:毫秒,范围:10MS到2H_46M_30S;此时,时基是自 动选择的,原则是根据定时时间选择能满足定时范围要求的 最小时基。
• S7-300提供了5种形式的定时器:
• S7中定时时间由时基和定时值两部分组成 ,定时时间等于时基与 定时值的乘积。当定时器运行时,定时值不断减 1,直至减到0,
减到0表示定时时间到。定时时间到后会引起定时器触点的动作。
0,01s <-0,1s <-1s <-10s <--
0 0 1 1
0 1 0 1
时间值: 0 . . . 999
– S_PULSE脉冲定时器SP。
定时器计数器讲解

6-13所示,计数输入引脚T1(P3.5)上外接开关K1,作为 计数信号输入。按4次K1后,P1口的8只LED闪烁不停。 (1)设置TMOD寄存器
TR1位(或TR0位)=1,启动定时器工作的必要条件。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。
10
6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。
6.2.1 方式0 当M1、M0为00时,定时器/计数器被设置为工作方式0,
这时定时器/计数器的等效逻辑结构框图如图6-4所示(以定 时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅 取决于TRx状态。TRx = 1,B点为高电平,控制端控制电子 开关闭合,允许T1(或T0)对脉冲计数。TRx = 0,B点为低 电平,电子开关断开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX*(x = 0,1)的输入电 平和TRx的状态两个条件来定。当TRx=1,且INTX*=1时,B 点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。 故这种情况下计数器是否计数是由TRx和INTX*两个条件来共 同控制。
图6-1 AT89S51单片机的定时器/计数器结构框图
4
只不过计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上
的外部脉冲进行计数(见图6-1) 定时器模式是对单片机的系统时钟信号经片内12分频后的
内部脉冲信号(机器周期)计数。由于时钟频率是定值,所 以可根据对内部脉冲信号的计数值可计算出定时时间。
本例由于采用定时器T0中断,因此需将IE寄存器中的EA、 ET0位置1。 (4)启动和停止定时器T0
TR1位(或TR0位)=1,启动定时器工作的必要条件。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。
10
6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。
6.2.1 方式0 当M1、M0为00时,定时器/计数器被设置为工作方式0,
这时定时器/计数器的等效逻辑结构框图如图6-4所示(以定 时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅 取决于TRx状态。TRx = 1,B点为高电平,控制端控制电子 开关闭合,允许T1(或T0)对脉冲计数。TRx = 0,B点为低 电平,电子开关断开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX*(x = 0,1)的输入电 平和TRx的状态两个条件来定。当TRx=1,且INTX*=1时,B 点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。 故这种情况下计数器是否计数是由TRx和INTX*两个条件来共 同控制。
图6-1 AT89S51单片机的定时器/计数器结构框图
4
只不过计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上
的外部脉冲进行计数(见图6-1) 定时器模式是对单片机的系统时钟信号经片内12分频后的
内部脉冲信号(机器周期)计数。由于时钟频率是定值,所 以可根据对内部脉冲信号的计数值可计算出定时时间。
本例由于采用定时器T0中断,因此需将IE寄存器中的EA、 ET0位置1。 (4)启动和停止定时器T0
单片机原理及其接口技术--第6章 MCS-51单片机定时器计数器

单片机原理及其接口技术
T/C方式2的逻辑结构图
1
TH1/TH0
T8
T7
T6
T5
T4
T3
T2
T1
寄存器 计数器
束
TL1/TL0
T8
T7
T6
T5
T4
T3
T2
T1
主目录
上一页
下一页
结
单片机原理及其接口技术
4、方式3 M1M0=11 T0和T1有不同的工作方式
C/T0:
TH0和TL0被拆成2个独立的8位计数器。
28),向CPU申请中断,标志位TF1自动置位,若中
断是开放的,则CPU响应定时器中断。当CPU响应
中断转向中断服务程序时,由硬件自动将该位清0。
&
加1计数器 & 1
主目录
上一页
下一页
结
束
EA
ET1
单片机原理及其接口技术
2个模拟的位开关,前者决定了T/C的工作状态:当1单片机有2个特殊功能寄存器TCON和TMOD: TCON:用于控制定时器的启动与停止,中断标志。 TMOD:用于设置T/C的工作方式。
主目录
上一页
下一页
结
束
单片机原理及其接口技术
1.定时器控制寄存器TCON
88H TCON
位地址
D7
D6
D5
D4
D3
D2
D1
D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 8F 8E 8D 8C 8B 8A 89 88
过实时计算求得对应的转速。
主目录 上一页 下一页 结 束
单片机原理及其接口技术 对于定时/计数器来说,不管是独立的定时器芯片还是单
接口技术06定时器计数器8253-5
0
0
0
1
1
0
传送方式
写入计数器0的初始值 写入计数器1的初始值 写入计数器2的初始值 写入控制寄存器控制字
读自计数器0的OL 读自计数器1的OL 读自计数器2的OL
五、8253 的控制字格式:
D7
D6
D5
D4
D3
D2
D1 D0
SC1 SC0 RW1 RW0 M2
M1
M0 BCD
计数器选 择
工作方式
计数初值开始工作,见图6.5所示③。21组1
CLK
WR ① GATE
OUT
n=4
43
0 21
②
GATE OUT
0
4
4321
WR ③
n=3
GATE
OUT2 工作在1方式,进行8位二进制计数, 并设计 数 初值的低8位为BYTEL。
其初始化程序段为
MOV DX,307H
计数器:
在时钟信号作用下,进行减“1”计数,计数次数到 (减“1”计数回零),从输出端输出一个脉冲信号。
计数举例: •①对零件和产品的计数; •②对大桥和高速公路上车流量的统计,等等。
Intel8253在微机系统中可用作定时器和计数 器。定时时间与计数次数是由用户事 先设定。
2、 8253 定时与计数器与CPU的关系 8253 定时与计数操作过程与CPU相互独立,
计数器 2
GATE2 OUT2
定时器/计数器的内部结构:
①数据总线缓冲器。它是一个三态、双向 8位寄存器,用于将8253与系统数据总线 D0~D7 相连。 ②读/写逻辑。 ③控制命令寄存器。它接受CPU送来的控 制字。 ④计数器。8253有3个独立的计数器(计 数通道),其内部结构完全相同,
第6章 定时计数器件组件及其应用(三版)习题及答案
嵌入式系统原理及应用第三版87本章习题选择题1关于定时计数器通常使用的公式61以下说法错误的是b计数值n与定时长度t成正比n越大t越长时的值即此时定时时间就是一个fpclk周期个计数周期时在定时器输出端通常有溢出标志或产生中断信号2以下关于定时计数器的功能说法错误的是a捕获的条件有上升沿触发下降沿触发以及上下边沿触发3关于stm32f10x系列微控制器的定时计数器以下说法错误的是d高级定时器只包括tim1和tim8通用定时器包括tim2tim3tim4和tim5均具有pwm功能所有定时器都是通过apb2总线连接的4关于stm32f10x系列微控制器定时计数器相关寄存器以下说法错误的是a定时器控制寄存器timxcr1可以决定计数器是否允许更新是否使能不能决定向上向下计数普通定时器中断使能寄存器timxdier用于是否允许更新和dma中断定时器状态寄存器timxsr记录哪个中断源有中断定时器重装载寄存器timxarr和预分频器timxpsc决定定时器的定时周期或时间5关于stm32f10x系列微控制器看门狗以下说法错误的是diwdg为独立看门狗wwdg为窗口看门狗iwdg的时钟输入源固定40khzwwdg输入频率可编程无论iwdg还是wwdg均要定期喂狗操作才能让系统正常有序工作iwdg和wwdg的喂狗方式一样都是写入0xaaaa到键寄存器中6关于stm32f10x列微控制器实时钟rtc以下说法错误的是artc的直接提供了年月日和时分秒这些数据rtc组件是接到apb1总线上的rtc的时钟可以是外部32768khz也可以选择内部40khz以及代功耗rclsi时钟rtc闹钟寄存器的值与计数寄存器的值相等时将产生闹钟中断7关于stm32f10x系列微控制器定时器每个定时器有4个pwm输出通道以下说法错误的是a每个pwm输出通道周期不可以单独编程设置每个pwm输出通道的占空比可以单独编程设置每个pwm输出通道可以编程输出正脉冲或负脉冲每个pwm输出通道占空比取决于比较寄存器ccr和自动重装载寄存器arr8关于stm32f10x系列通用定时器用作pwm功能以下说法错误agpio任何一个引脚均可以配置为pwm输出pwm输出具有边沿对齐和中心对齐方式pwm输出周期由自动重装载寄存器timxarr决定rpwm输出占空比取决于捕获比较寄存器timxcrri9为操作系统或其它系统管理软件提供固定10ms或可软件编程定时时间的定时中断该定
第6章-MCS-51定时计数器
TMOD用于设置其工作方式、选择定时或计数功能; TCON用于控制其启动、中断申请以及作为运行状态的 标志等。
1.定时/计数器工作方式寄存器TMOD TMOD为T0、T1的工作方式寄存器,主要用于控制定
时/计数器T0和T1的工作模式和4种工作方式。低4位用于 控制T0,高4位用于控制T1。
门控 位
在单片机应用中,定时和计数的需求比较多,为了使用 方便并增加单片机的功能,就把定时电路集成到芯片中,称 之为定时/计数器。目前,几乎所有的单片机都集成了可编 程定时/计数器,为单片机提供定时和计数功能。
6.1.1 定时/计数器的结构 MCS-51 单片机内部有两个16位的可编程定时/计数器,称为
定时器0(T0)和定时器1(T1),都具有定时和计数的功能,可 编程选择其作为定时器或作为计数器用。 TMOD:选择定时器/计数器T0、T1的工作模式和工作方式。 TCON:控制T0、T1的启动和停止计数,同时包含了T0、T1的状态。
Hale Waihona Puke ⑵ 工作方式1: T0初值 =216-500s/2s=65536–250=65286=FF06H TH0=FFH;TL0=06H。
⑶ 工作方式2: T0初值 =28-500s/2s=256-250=6 TH0=06H;TL0=06H。
⑷ 工作方式3: T0方式3时,被拆成两个8位定时器,定时初值可分别计
定时器:对片内机器时钟(周期方波)进行计数 计数器:对Tx引脚输入的负脉冲进行计数
6.1.2 定时/计数器的工作原理
单片机内部有两个定时/计数器T0和T1,其核心是计数器, 基本功能是加1。
对外部事件脉冲(下降沿)计数,是计数器;对片内机周 脉冲计数,是定时器。
计数器由二个8位计数器组成。
1.定时/计数器工作方式寄存器TMOD TMOD为T0、T1的工作方式寄存器,主要用于控制定
时/计数器T0和T1的工作模式和4种工作方式。低4位用于 控制T0,高4位用于控制T1。
门控 位
在单片机应用中,定时和计数的需求比较多,为了使用 方便并增加单片机的功能,就把定时电路集成到芯片中,称 之为定时/计数器。目前,几乎所有的单片机都集成了可编 程定时/计数器,为单片机提供定时和计数功能。
6.1.1 定时/计数器的结构 MCS-51 单片机内部有两个16位的可编程定时/计数器,称为
定时器0(T0)和定时器1(T1),都具有定时和计数的功能,可 编程选择其作为定时器或作为计数器用。 TMOD:选择定时器/计数器T0、T1的工作模式和工作方式。 TCON:控制T0、T1的启动和停止计数,同时包含了T0、T1的状态。
Hale Waihona Puke ⑵ 工作方式1: T0初值 =216-500s/2s=65536–250=65286=FF06H TH0=FFH;TL0=06H。
⑶ 工作方式2: T0初值 =28-500s/2s=256-250=6 TH0=06H;TL0=06H。
⑷ 工作方式3: T0方式3时,被拆成两个8位定时器,定时初值可分别计
定时器:对片内机器时钟(周期方波)进行计数 计数器:对Tx引脚输入的负脉冲进行计数
6.1.2 定时/计数器的工作原理
单片机内部有两个定时/计数器T0和T1,其核心是计数器, 基本功能是加1。
对外部事件脉冲(下降沿)计数,是计数器;对片内机周 脉冲计数,是定时器。
计数器由二个8位计数器组成。
第6章 定时器计数器
28
期间,计数器加1。由于确认一次负跳变要花 个机器周期, 确认一次负跳变要花2个机器周期 确认一次负跳变要花 因此外部输入的计数脉冲的最高频率为系统振荡器频率的 外部输入的计数脉冲的最高频率为系统振荡器频率的 外部输入的计数脉冲的最高频率 1/24。 例如,选用6MHz频率的晶体,允许输入的脉冲频率最高为 250kHz。如果选用12MHz频率的晶体,则可输入最高频 率为500kHz的外部脉冲。 对于外部输入信号的占空比并没有什么限制,但为了确保某 占空比并没有什么限制 占空比并没有什么限制 一给定电平在变化之前能被采样一次,则这一电平至少要 至少要 保持一个机器周期。 保持一个机器周期
T 、GATE、TR0、
22
TF0 ,而TH0被固定为一个 位定时器 固定为一个8位定时器 固定为一个 位定时器(不能作为外部计数 模式),并使用定时器T1的状态控制位TR1和TF1,同时 占用定时器T1的中断请求源TF1。 2.T0工作在方式 时T1的各种工作方式 . 工作在方式 工作在方式3时 的各种工作方式 一般情况下,当T1用作串行口的波特率发生器时,T0才工 当 用作串行口的波特率发生器时 用作串行口的波特率发生器时, 才工 作在方式3。 作在方式 。T0处于工作方式3时,T1可定为方式0、方式 1和方式2,用来作为串行口的波特率发生器,或不需要中 断的场合。
18
定时器/计数器的方式 为自动恢复初值 方式2为自动恢复初值 方式 为自动恢复初值(初值自动装入)的 8位定时器/计数器 位定时器 计数器 计数器。 TLx(x = 0,1)作为常数缓冲器,当TLx计数溢出时,在溢出 自动将THx中的初值送至 中的初值送至TLx, 标志TFx置“1”的同时,还自动将 自动将 中的初值送至 使TLx从初值开始重新计数。定时器/计数器的方式2工作 过程如图6-7所示。
期间,计数器加1。由于确认一次负跳变要花 个机器周期, 确认一次负跳变要花2个机器周期 确认一次负跳变要花 因此外部输入的计数脉冲的最高频率为系统振荡器频率的 外部输入的计数脉冲的最高频率为系统振荡器频率的 外部输入的计数脉冲的最高频率 1/24。 例如,选用6MHz频率的晶体,允许输入的脉冲频率最高为 250kHz。如果选用12MHz频率的晶体,则可输入最高频 率为500kHz的外部脉冲。 对于外部输入信号的占空比并没有什么限制,但为了确保某 占空比并没有什么限制 占空比并没有什么限制 一给定电平在变化之前能被采样一次,则这一电平至少要 至少要 保持一个机器周期。 保持一个机器周期
T 、GATE、TR0、
22
TF0 ,而TH0被固定为一个 位定时器 固定为一个8位定时器 固定为一个 位定时器(不能作为外部计数 模式),并使用定时器T1的状态控制位TR1和TF1,同时 占用定时器T1的中断请求源TF1。 2.T0工作在方式 时T1的各种工作方式 . 工作在方式 工作在方式3时 的各种工作方式 一般情况下,当T1用作串行口的波特率发生器时,T0才工 当 用作串行口的波特率发生器时 用作串行口的波特率发生器时, 才工 作在方式3。 作在方式 。T0处于工作方式3时,T1可定为方式0、方式 1和方式2,用来作为串行口的波特率发生器,或不需要中 断的场合。
18
定时器/计数器的方式 为自动恢复初值 方式2为自动恢复初值 方式 为自动恢复初值(初值自动装入)的 8位定时器/计数器 位定时器 计数器 计数器。 TLx(x = 0,1)作为常数缓冲器,当TLx计数溢出时,在溢出 自动将THx中的初值送至 中的初值送至TLx, 标志TFx置“1”的同时,还自动将 自动将 中的初值送至 使TLx从初值开始重新计数。定时器/计数器的方式2工作 过程如图6-7所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章 定时/计数器
2、功能及其控制 (1)定时/计数器功能
定时功能
对8051内部时钟信号的12分频信号进行计数,计 数信号的周期就是一个机器周期,根据计数的次数就 可以得到计数时间,从而实现定时功能。 计数功能
对外部输入的脉冲信号进行计数,计数频率取决 于外部信号的频率,外部脉冲通过单片机的T0(T1) 引脚输入。
TMOD=0x01;
TL0=0xB0; TH0=0x3C;
Shengli College China University of Petroleum
第6章 定时/计数器
例题2:假设8051单片机外接晶振频率为12MHz,请用 单片机T0以方式0的工作方式实现5ms的定时,试计算 初值并给出初始化子程序。
Shengli College China University of Petroleum
第6章 定时/计数器
void Soft_Rst (void) //软件复位子程序 { ( (void (code *) (void) ) 0x0000) ( ); //令8051复位 } void WDT_RST ( ) interrupt 1 //利用T0模拟看门狗 { Soft_Rst (); //软件复位8051单片机 } void WDT_FOOD(void) //喂狗子程序 { TR0=0; TH0=0x3C; //TH0赋初值 TL0=0xB0; //TL0赋初值 TR0=1; //启动T0计数 }
M1 M0:00方式0;01方式1;10方式2;11方式3
Shengli College China University of Petroleum
第6章 定) TR0
C / T =0
C / T =1
TL0
TH0
TF0
中断
&
≥1
A
控制端
GATE
P3.2
1
Shengli College China University of Petroleum
Shengli College China University of Petroleum
第6章 定时/计数器
DS0: MOV A,#00H ;连续将两个00H入栈, PUSH ACC PUSH ACC RETI ;执行RETI时,PC=0000H,从头开始执行程序 WDFOOD: CLR TR0 MOV TH0,#3CH ;重新赋计数器初值 MOV TL0,#0B0H SETB TR0 RET
第6章 定时/计数器
2、定时/计数器实现软件“看门狗”原理
??“看门狗”(Watchdog,简称WDT)定时器?? 基本原理: 所谓的“看门狗”技术就是利用一个WDT计数器不 断计数来监测程序的运行,
当WDT计数器运行后,应当定期的把WDT计数器清0 (俗称喂狗),
否则计数器溢出后将在单片机复位引脚上产生复位 信号,强制复位单片机。
第6章 定时/计数器
6.1 定时/计数器工作原理及其控制
8051内部集成了2个16位可编程定时/计数器,称 为定时/计数器0(T0)和定时/计数器1(T1)。
定时器 T1 TH1 启动 CPU 工作方式 TCON 溢出 溢出 TMOD 工作 方式 TL1 TH0 启动 定时器 T0 TL0
Shengli College China University of Petroleum
Shengli College China University of Petroleum
第6章 定时/计数器
假设单片机外接晶振频率为6MHz,程序中T0的溢出 时间设置为100mS。因此正常的“喂狗”时间不能超过 100mS,否则将导致单片机复位。 分析: 定时/计数器配置,中断方式; 中断子程序中实现复位功能 防止溢出,必须定时喂狗。
第6章 定时/计数器
定时和计数在各种场合应用普遍,常用方法有法:
硬件定时
– 定时时间调整较大时,需要重新设计电路。
软件定时
– CPU效率不高,不适合应用于较大延时场合。
可编程的定时器/计数器法
– 综合硬件定时和软件定时的优点, 控制简单。
Shengli College China University of Petroleum
ORG 0000H AJMP START ORG 000BH AJMP DS0 ORG 001BH AJMP DS1 START: MOV TMOD,#61H MOV TH0,#3CH MOV TL0,#0B0H
MOV TL1,#9CH SETB ET0 SETB ET1 SETB EA ….. DS0: ….. RETI DS1: ….. RETI
第6章 定时/计数器
6.2 定时/计数器工作方式及其设置 1、工作方式及其特点
方式0 13位计数器(无自动重装入)
定时范围:(2-16384)μs 计数范围: 1~8192 初值为0 时,16384
方式1
16位计数器 (无自动重装入)
定时范围:(2-131072)μs 计数范围: 1~65536
R1
2k
Q1
FZT651
EA ALE PSEN
31 30 29
R2
100 RST 9
XTAL2
18
XTAL1
19
Shengli College China University of Petroleum
第6章 定时/计数器
程序设计上,可以采用定频调宽的方式,利用 8051单片机的T0来控制脉冲的周期(频率),利用T1来 控制脉冲高电平的时间。 假设PWM信号的频率设置为100Hz(周期10mS), T0工作在方式1,可以计算出初值为D8F0H。同时可以分 别计算出占空比从10%....一直到90%时对应的高电平时 间。
Shengli College China University of Petroleum
第6章 定时/计数器
(2)定时/计数器的控制
方式控制字
T1
TMOD 字节地址89H
T0
GATE C/ T M1 M0 GATE C/ T M1 M0 GATE:门控位,为1时要求INTi引脚高电平才计数
C/T: 1 计数 ; 0 定时
9
RST
29 30 31
PSEN ALE EA
R3
200
D1
LED-BIRG 1 2 3 4 5 6 7 8 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 8051
U1(P3.5/T1)
Shengli College China University of Petroleum
C /T
初值计算
n
???初值???
N 2
t TCY
N 2 X
n
定时模式公式
计数模式公式
Shengli College China University of Petroleum
第6章 定时/计数器
溢出判断方式 中断方式还是查询方式
(2)定时/计数器初始化
定时/计数器的初始化程序可按照上述三个步骤进 行,溢出方式设置则需要根据实际需要具体编写,如 采用中断方式,还需设置中断入口地址等。
汇编语言: C51语言:
MOV TMOD, #00H
MOV TL0, #18H MOV TH0, #63H
TMOD=0x00;
TL0=0x18; TH0=0x63;
Shengli College China University of Petroleum
第6章 定时/计数器
例题3:假设8051单片机外接晶振频率为6MHz, T0工作 在方式1下实现定时100mS后申请中断,T1工作在方式2 下计数100次后申请中断,计算初值并编写相应程序。
Shengli College China University of Petroleum
第6章 定时/计数器
6.4 知识与拓展
1、简易方波频率测量原理
U1
19 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 18 XTAL2
第6章 定时/计数器
6.3 单片机LED亮度控制系统设计实例
1、PWM调制技术基本知识
定频调宽、定宽调频、调频调宽
2、控制要求:
利用8051单片机定时/计数器产生PWM信号,实现 LED的亮度控制。可以通过1个按键调整亮度,每按一次 键亮度增加10%,到最大值时重新回到10%占空比,周而 复始,同时要求LED不出现闪烁现象。
第6章 定时/计数器
定时器控制寄存器 TCON 88H 可位寻址
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 对T1控制 对T0控制 与外部中断相关,已经介绍
TRx置1,则启动定时器工作,否则停止工作;
TFx置1,定时器x溢出,否则未溢出。
Shengli College China University of Petroleum
方式2、3
8位计数器(其中方式2具有自动重转入功能)
定时范围: (2~512)μs 计数范围: 1~256
Shengli College China University of Petroleum