- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(3) C/T*——计数器方式和定时器方式选择位 计数器方式和定时器方式选择位 定时器方式. 0:定时器方式. 1:计数器方式. 计数器方式.
定时器/计数器的4 7.2 定时器/计数器的4种工作模式 7.2.1 模式0 模式0
M1,M0为 定时器/计数器的框图: M1,M0为00 ,定时器/计数器的框图:
低4位与外部中断有关,已介绍.高4位的功能如下: 位与外部中断有关,已介绍. 位的功能如下: TF1—— ——计数溢出标志位 (1) TF0 , TF1——计数溢出标志位 当启动T0计数后,定时器/计数器T0从初值开始加1计数, T0计数后 T0从初值开始加 当启动T0计数后,定时器/计数器T0从初值开始加1计数, 当最高位产生溢出时,由硬件置"1"TF0, CPU申请中断 申请中断, 当最高位产生溢出时,由硬件置"1"TF0,向CPU申请中断, CPU响应TF0中断时 由硬件自动清"0"TF0,TF0也可由软件 响应TF0中断时, CPU响应TF0中断时,由硬件自动清"0"TF0,TF0也可由软件 查询,查询后由软件清0 查询,查询后由软件清0 . TR1—— ——计数运行控制位 (2) TR0 , TR1——计数运行控制位 1:启动定时器/计数器工作 启动定时器/ 停止定时器/ 0:停止定时器/计数器工作 由软件置位/复位,即由软件置"1"或 0". 由软件置位/复位,即由软件置"1"或"0".
(2) T1工作在模式1 T1工作在模式1 工作在模式
ห้องสมุดไป่ตู้
T1工作在模式2 工作在模式 (3) T1工作在模式2
7.3 定时器 计数器应用中的两个问题 定时器/计数器应用中的两个问题 *运行中读定时器/计数器 运行中读定时器/
在读取运行中的定时器/计数器时,需要特别加以注意, 在读取运行中的定时器/ 计数器时,需要特别加以注意,若恰好出现 TLX溢出向THX进位的情况 则读得的(TLX)值就完全不对了.同样, 溢出向THX进位的情况, TLX溢出向THX进位的情况,则读得的(TLX)值就完全不对了.同样,先 THX)再读(TLX)也可能出错. 读(THX)再读(TLX)也可能出错. 方法:先读(THX),后读(TLX),再读(THX).若两次读得(THX) 方法:先读(THX),后读(TLX),再读(THX).若两次读得(THX) ),后读 ),再读 ).若两次读得 相同,则读得的内容正确.若前后两次读得的(THX)有变化, 相同,则读得的内容正确.若前后两次读得的(THX)有变化,则再重复 上述过程,这次重复读得的内容就应是正确的.下面是有关的程序, 上述过程,这次重复读得的内容就应是正确的.下面是有关的程序,读 得的(TH0) TL0)放置在R1 R0内 R1和 得的(TH0)和(TL0)放置在R1和R0内. 300H ORG 300H RDTIME: A,TH0 TH0 RDTIME:MOV A,TH0 ;读(TH0) ,TL0 TL0 MOV R0,TL0 ;读(TL0) A,TH0 比较2次读得的(TH0 CJNE A,TH0,RDTIME ;比较2次读得的(TH0),不相等则重复 TH0 送入R MOV R1,A ;(TH0)送入R1中 RET
/INT0触发方式 触发方式: 触发方式 1,下降引起 下降引起; 下降引起 0,低电平引起 低电平引起 /INT0中断请求标志位 中断请求标志位 1,有请求 无请求 有请求;0,无请求 有请求 无请求; /INT1触发方式 触发方式: 触发方式 1,下降引起 下降引起; 下降引起 0,低电平引起 低电平引起 /INT1中断请求标志位 中断请求标志位 1,有请求 无请求 有请求;0,无请求 有请求 无请求;
非门控方式: 非门控方式:当GATE=0, = 控制权由 TRx 决定 TRx=1 计数开始 = TRx =0 计数停止 门控方式: 门控方式:当GATE=1,TRx=1 = , = 控制权由 INTx 决定 INTx=1 计数开始 = INTx =0 计数停止
模式1 7.2.2 模式1
M1,M0为01,16位的计数器. M1,M0为01,16位的计数器.THx8位和TLx8位组成16位加1计数器,最 位的计数器 大计数脉冲个数:1~65536(216),最长定时时间(晶振12MHz T=1s): 1s ~ 65536×T= 65.54ms
8位分为两组,高4位控制T1,低4位控制T0. 位分为两组, 位控制T1, T1 位控制T0. T0 GATE—— ——门控位 (1)GATE——门控位 0:以运行控制位TRX(X=0,1)来启动定时器/计数器运行. 以运行控制位TRX(X=0,1)来启动定时器/计数器运行. TRX 用外中断引脚(/INT (/INT0 /INT1 上的高电平来启动定时器/ 1 : 用外中断引脚(/INT0 或 /INT1) 上的高电平来启动定时器/ 计数器运行 TRX=1 X=0 (TRX=1:X=0,1). (2)M1 )M1 M1 0 0 1 1 M0——工作模式选择位 M0 0 1 0 1 工 作 模 式 模式0,13位定时器/计数器 模式0 13位定时器/ 位定时器 模式1 16位定时器/ 模式1,16位定时器/计数器 位定时器 模式2 模式2,8位常数自动重新装载 模式3 仅适用于T 模式3,仅适用于T0,T0分成两个8位计数器,T1停止计数. 分成两个8位计数器, 停止计数.
计数满后自动装入计数初值.M1,M0=10,等效框图如下: 计数满后自动装入计数初值.M1,M0=10,等效框图如下:
模式2为自动恢复初值的(初值自动装入) 位定时器/ 模式 2 为自动恢复初值的 ( 初值自动装入 ) 8 位定时器 / 计数器,TLX作为常数缓冲器 作为常数缓冲器, TLX计数溢出时 在置" 计数溢出时, 计数器 ,TLX 作为常数缓冲器 , 当 TLX计数溢出时 , 在置" 1" 溢出标志TFX的同时,还自动的将THX中的初值送至TLX TFX的同时 THX中的初值送至TLX, 溢出标志 TFX 的同时 , 还自动的将THX 中的初值送至TLX, 使 TLX从初值开始重新计数 定时器/计数器的模式2 从初值开始重新计数. TLX 从初值开始重新计数. 定时器/ 计数器的模式2 工作过程 如图所示(X= (X=0 如图所示(X=0,1).
* T0工作在模式3下T1的各种工作模式 T0工作在模式 工作在模式3 T1的各种工作模式
当T1用作串行口的波特率发生器时,T0才工作在模式3. T1用作串行口的波特率发生器时,T0才工作在模式3 用作串行口的波特率发生器时,T0才工作在模式 T0处于模式 处于模式3 T1可定为模式 可定为模式0 模式1和模式2 T0处于模式3时, T1可定为模式0,模式1和模式2,用来作 为串行口的波特率发生器,或不需要中断的场合. 为串行口的波特率发生器,或不需要中断的场合. (1)T1工作在模式0 T1工作在模式0 工作在模式
7.1.2 工作方式寄存器TMOD 工作方式寄存器TMOD
门控位:1,打开 关闭 门控位 打开;0,关闭 打开 计数器方式和定时器方式选择位: 计数器方式和定时器方式选择位 0:定时器方式 1:计数器方式. :定时器方式; :计数器方式. M1 M0 : 工作模式选择位 0 0 1 0 1 0 模式0 模式 模式1 模式 模式2 模式
省去用户软件中重装初值的程序.精确的确定定时时间. 省去用户软件中重装初值的程序.精确的确定定时时间.
模式3 7.2.4 模式3
只适用于定时器/计数器T0 T1不能工作在模式3 不能工作在模式 只适用于定时器/计数器T0 ,T1不能工作在模式3.T1 为模式3时相当于TR1=0 停止计数(此时T1 TR1=0, T1可用来作串行 为模式3时相当于TR1=0,停止计数(此时T1可用来作串行 口波特率产生器). 口波特率产生器). 工作模式3下的T0: 工作模式3下的T0: T0分为两个独立的8位定时/计数器:TL0和TH0.TL0使 T0分为两个独立的8位定时/计数器:TL0和TH0.TL0使 分为两个独立的 :TL0 T0的状态控制位 的状态控制位C/T GATE,TR0, TH0被固定为一个 被固定为一个8 用T0的状态控制位C/T*,GATE,TR0,而TH0被固定为一个8 位定时器(不能作外部计数方式) 并使用定时器T1 T1的状 位定时器(不能作外部计数方式),并使用定时器T1的状 态控制位TR1 TF1,同时占用定时器T1的中断请求源TF1 TR1和 T1的中断请求源TF1. 态控制位TR1和TF1,同时占用定时器T1的中断请求源TF1. 各引脚与T0的逻辑关系如图所示. 各引脚与T0的逻辑关系如图所示. T0的逻辑关系如图所示
定时器/ 7.1 定时器/计数器的结构
工作方式寄存器TMOD:选择定时器/计数器T0,T1的工作方式和 工作方式寄存器TMOD:选择定时器/计数器T0,T1的工作方式和 TMOD T0 工作模式; 工作模式; 控制寄存器TCON:控制T0,T1的启动和停止计数,同时包含了T0, 控制寄存器TCON:控制T0,T1的启动和停止计数,同时包含了T0, TCON T0 的启动和停止计数 T0 T1的状态 的状态. T1的状态.
/INT0 /INT1 P3.2 P3.3 8DH 8BH
8CH
8AH
88H
89H
单片机复位时, TMOD和TCON两个寄存器的所有位都被清 两个寄存器的所有位都被清0 单片机复位时, TMOD和TCON两个寄存器的所有位都被清0.
定时器/计数器控制寄存器TCON 7.1.1 定时器/计数器控制寄存器TCON
M1 M0 : 工作模式选择位 0 0 1 1 0 1 0 1 模式0 模式 模式1 模式1 模式2 模式 模式3 模式
计数器方式和定时器方式选择位: 计数器方式和定时器方式选择位 0:定时器方式 1:计数器方式. :定时器方式; :计数器方式. 门控位:1,打开 关闭 门控位 打开;0,关闭 打开