at89s51汇编语言程序设计

at89s51汇编语言程序设计

ID:36056323

大小:964.05 KB

页数:44页

时间:2019-05-01

at89s51汇编语言程序设计_第1页
at89s51汇编语言程序设计_第2页
at89s51汇编语言程序设计_第3页
at89s51汇编语言程序设计_第4页
at89s51汇编语言程序设计_第5页
资源描述:

《at89s51汇编语言程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章AT89S51单片机定时器/计数器6.1定时器/计数器的结构定时器/计数器T0由特殊功能寄存器TH0、TL0构成,定时器/计数器T1由特殊功能寄存器TH1、TL1构成。图6-1AT89S51单片机的定时器/计数器结构2种工作模式,4种工作方式(方式0、方式1、方式2和方式3)。属于增计数器。TMOD选择定时器/计数器T0、T1的工作模式和工作方式。TCON控制T0、T1的启动和停止计数,包含了T0、T1的状态。计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上的外部脉冲进行计数。定时器工作模式是对单片机的时钟振荡器信号经片内12分频后的内部脉冲信号计数。由于时钟频率是定值,

2、所以可根据计数值可计算出定时时间。计数器的起始计数都是从计数器初值开始的。单片机复位时计数器的初值为0,也可用指令给计数器装入一个新的初值。6.1.1工作方式控制寄存器TMOD字节地址89H,不能位寻址。(1)GATE———门控位。0:仅由运行控制位TRx(x= 0,1)来控制定时器/计数器运行。1:外中断引脚上电平与运行控制位TRx共同来控制定时器/计数器运行。(2)M1、M0——工作方式选择位M1、M0共有4种编码,如表6-1所示。45(3)C/—计数器模式和定时器模式选择位0:为定时器工作模式,对单片机的晶体振荡器12分频后脉冲进行计数。1:为计数器工作模式,计数器对外部输入引脚T0(

3、P3.4)或T1(P3.5)外部脉冲(负跳变)计数。6.1.2定时器/计数器控制寄存器TCON字节地址为88H,可位寻址,位地址为88H~8FH。(1)TF1、TF0——计数溢出标志位。当计数器计数溢出时,该位置“1”。使用查询方式时,此位作为状态位供CPU查询,查询后应使用软件及时将该位清“0”。使用中断方式时,为中断请求标志位,进入中断服务程序后由硬件自动清“0”。图6-3TCON格式(2)TR1、TR0——计数运行控制位。TR1位(或TR0位)= 1,启动定时器/计数器工作。TR1位(或TR0位)=0,停止定时器/计数器工作。该位可由软件置“1”或清“0”。6.2定时器/计数器4种工作

4、方式6.2.1方式0M1、M0=00时,被设置为工作方式0,等效逻辑结构框图(以定时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。13位计数器,由TLx(x= 0,1)低5位和THx高8位构成。TLx低5位溢出则向THx进位,THx计数溢出则把TCON中溢出标志位TFx置“1”。图6-4定时器/计数器方式0逻辑结构框图(1)C/=0,电子开关打在上面位置,T1(或T0)为定时器工作模式,时钟振荡器12分频后脉冲作为计数信号。(2)C/=1,电子开关打在下面位置,T1(或T0)为计数器工作模式,计数脉冲为P3.4(或P3.5)引脚上外部输入脉冲,当引脚上发生负跳变时,计数器加1。

5、GATE位状态决定定时器/计数器运行控制取决TRx一个条件还是TRx和(x= 0,1)引脚状态两个条件。(1)GATE = 0,A点电位恒为1,B点电位仅取决于TRx状态。TRx= 1,B点为高电平,控制端控制电子开关闭合,允许T1(或T0)对脉冲计数。TRx= 0,B点为低电平,电子开关断开,禁止T1(或T0)计数。(2)GATE = 1,B点电位由(x= 0,1)的输入电平和TRx的状态这两个条件来确定。当TRx= 1,且=1时,B点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。96.2.2方式1当M1、M0=01时,定时器/计数器工作于方式1。方式1和方式0的差别仅仅在于计数

6、器的位数不同,方式1为16位计数器,由THx高8位和TLx低8位构成(x= 0,1),方式0则为13位计数器,有关控制状态位含义(GATE、C/、TFx、TRx)与方式0相同。图6-5定时器/计数器方式1逻辑结构框图106.2.3方式2方式0和方式1最大特点是计数溢出后,计数器为全0。因此在循环定时或循环计数应用时就存在用指令反复装入计数初值问题。当M1、M0为10时,定时器/计数器处于工作方式2,这时定时器/计数器的等效逻辑结构如图6-6所示(以定时器T1为例,x= 1)。图6-6定时器/计数器方式2逻辑结构框图定时器/计数器方式2为自动恢复初值8位定时器/计数器。TLx(x= 0,1)作

7、为常数缓冲器,当TLx计数溢出时,在溢出标志TFx置“1”同时,还自动将THx中的初值送至TLx,使TLx从初值开始重新计数。图6-7方式2工作过程116.2.4方式3为增加一个8位定时器/计数器,使AT89S51单片机具有3个定时器/计数器。方式3只适用于T0,T1不能工作在方式3。T1处于方式3时相当于TR1= 0,停止计数(此时T1可用来作为串行口波特率产生器)。1.工作方式3下的T0TMOD的低2位为

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。