欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    MCS51单片机定时器计数.ppt

    • 资源ID:5439675       资源大小:478.50KB        全文页数:45页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    MCS51单片机定时器计数.ppt

    12.MCS-51单片机的定时器/计数器,单片机原理及接口技术第5章,12.1 定时器/计数器概述 12.2 定时器/计数器的工作方式选择寄存器12.3 定时器/计数器的控制寄存器12.4 定时器/计数器4种工作方式及其应用,本章学习要求,1、理解定时、计数概念及两者的区别,掌握工作方式寄存器与控制寄存器中各个位的意义。,2、掌握定时/计数器初始化方法,能把定时/计数器设置在需要的工作方式。,3、能应用定时/计数器来实现所需的功能,包括程序的编写。,微机系统中经常要使用到定时信号,例如:,系统日历时钟的计时;,动态存储器的定时刷新;,.,定时/计数器就是产生定时计数信号的硬件方法。,定时/计数器的功能主要体现在两个方面:,计数功能;,定时功能。,12.1 定时器/计数器概述,1、计数功能对事件的个数进行计数。正计数:关心记录事件的次数。倒计数:关心预先设定事件次数发生完的时刻。预先设置好计数初值(定时常数),进行减1操作(倒计数),减到0时,输出一个信号。作为计数器,在减到0后,输出一个信号,此次计数结束。,开始计数,计数结束,输出信号,2.定时功能,取得给定的时间间隔(定时间隔),作为:延时:某事件发生后间隔一定的时间。时标:给定时间间隔的连续脉冲。设置好定时常数后,进行减1操作,减到0时,输出信号,并自动恢复初值重新计数,从而可产生定时间隔。作为定时器,在减到0后,输出一个信号,同时自动恢复初值并重新计数(与计数器不同)。,开始计数,重新计数,产生定时间隔,计数功能作为计数个数,计数结束发中断信号。记录外部特定事件发生的个数。定时功能作为周期性定时中断信号。用于多任务分时操作系统,实现程序的切换。用作系统时钟基准。作为一个可编程波特率发生器,用于异步串行通信。可往I/O设备输出精确的定时信号,实现外设与CPU的同步。实现CPU的时间延时。,计数器/定时器的用途:,MCS-51单片机的定时器/计数器简介,2个16位的定时/计数器,有多种工作方式。,定时/计数器工作在定时模式时,计数脉冲信号来自单片机的内部,计数速率是晶振频率的1/12(即计数周期等于机器周期),当计数器启动后,每个机器周期计数器自动加1。,定时/计数器工作在计数模式时,计数器对外部脉冲进行计数,计数器计算P3.4(T0脚)、P3.5(T1脚)负跳变的次数。每产生一次负跳变,计数器自动加1。,MCS-51单片机定时器/计数器的逻辑结构,MCS-51单片机的定时/计数器有一个工作方式寄存器(Timer/counter MODe control register,TMOD),用于设置定时/计数器的工作方式,高4位用于T1,低4位用于T0,TMOD寄存器的地址为89H。,12.2 定时器/计数器的工作方式选择寄存器,TMOD各位的定义(以定时器/计数器T0为例),门控位:,GATE0,定时/计数器工作不受外部控制。,GATE1,定时/计数器T0的起停受INT0引脚的控制。,定时和计数模式选择位:,0,定时器模式,每一个机器周期计数器自动加1。,1,计数器模式,在单片机T0引脚上每发生一次负跳变,计数器自动加1。,工作方式选择位:,12.3 定时器/计数器的控制寄存器,控制寄存器TCON既有中断标志寄存器的功能(低4位),同时具有控制定时/计数器的功能(高4位),TCON寄存器的地址为88H。作用是控制定时/计数器的起停,反映定时/计数器是否计满。,单片机复位时,特殊功能寄存器TCON将被清0。,TFx(x=0,1)和TRx(x=0,1)由软件方法置1或清0。既可按单元操作的方式,也可以按位操作方式。,如启动定时/计数器T0和T1,清除溢出标志位TF0和TF1操作如下:,SETB TR0 SETB TR1 CLR TF0 CLR TF1,或:MOV TCON,#01010000B,12.4 定时/计数器的4种工作方式及其应用,一、定时/计数器的初始化,定时/计数器的初始化包括设置工作方式、计数器或定时器模式、计算计数初始值、启动定时/计数器、设置中断控制位等。,定时和计数可以采用查询方式和中断方式实现。,采用查询方式初始化定时/计数器的步骤,(1)确定工作方式、计数器或定时器模式及启动控制方式,构造方式控制码并写入特殊功能寄存器TMOD:MOV TMOD,#控制码。,(2)计算定时器或计数器的计数初始值,根据工作方式把初始值送人TH0、TL0或TH1、TL1。,(3)启动定时/计数器:SETB TRx,x=0,1。,此后定时/计数器开始工作,通过查询TFx是否为1来判断定时或计数是否达到要求。,采用中断方式初始化定时/计数器地步骤,(1)确定工作方式、计数器或定时器模式及启动控制方式,构造方式控制码并写入特殊功能寄存器TMOD:MOV TMOD,#控制码。,(2)计算定时器或计数器的计数初始值,根据工作方式把初始值送人TH0、TL0或TH1、TL1。,(3)开放CPU中断,允许定时/计数器溢出中断CPU的工作:对IE寄存器编程。,此后定时/计数器开始工作,当计数器溢出时,定时或计数达到要求,CPU响应中断,程序转移到相应的中断处理程序入口处。,(4)启动定时/计数器:SETB TRx,x=0,1。,一、方式0(13位方式),MCS-51单片机的2个16位定时/计数器T0和T1具有多种工作方式,其中T0有4种方式,T1有3种。它们由TMOD寄存器设置。,二、定时/计数器的工作方式,当GATE=0时,只要TR0为1,TL0及TH0组成的13位计数器就开始计数;,当GATE=1时,仅当TR0为1,且引脚输入信号状态为1时,13位计数器开始计数。,计数器开始工作后,当13位计数器从初始值开始加1计数直到各位全为1以后,再计数1次,计数器就产生溢出,则TF0位由硬件自动置1,同时把计数器清0。,在方式0下,计数器计数范围是18192(213)。定时时间范围为18192个机器周期,即当晶振频率fosc=12MHz时,最大定时时间为8.192 ms,要求在计数若干次或者定时(延时)若干秒后,再进行下一步的动作。,工程设计时,我们经常碰到这样的问题:,若采用定时/计数器实现,最直接的方法是让定时/计数器计数若干次或者定时若干秒后溢出,让溢出标志TF0(或TF1)为我们提供测试判断的条件。,然而,计数器只有在计数满后才会溢出,上述问题转换为在某个初始值的基础上再计数N次或再定时t秒使定时/计数器溢出。因此,求初始值是解决上述问题的关键。,初始值的计算,计数器工作模式,设计数N次后,要求计数器溢出,问初始值应为多少?,设初始值为,则:,有:,预先给计数器装入初始值,当计数器计数N次后,溢出标志TF0为1。,定时器工作模式,设定时td秒,要求计数器溢出。,首先计算定时td需要多少个机器周期,即:,设初始值为,预先给计数器装入初始值,当计数器计数N个机器周期后,溢出标志TF0为1,定时时间到。,则:,有:,定时/计数器方式0的应用,例1:已知某生产线传送带上的产品单向传送到包装机,传送带上的产品之间有间隔,使用光电传感器检测产品的个数,每计数到12个产品时,由气缸驱动的顶推装置把这批产品推入包装机包装,顶推装置的顶推气缸动作响应时间为50ms。系统采用单片机控制,采用定时/计数器实现产品的计数,解:,(1)计数采用定时/计数器T1的方式0,则方式控制字为:,即:(TMOD)=01000000B,(2)需要计数的次数为12次,方式0实现计数,则计数初始值为:,则(TH1)=11111111B,(TL1)=00010100B,CLR P1.0;顶推气缸复位MOV TMOD,#01000000B;设置工作方式0和计数器模式MOV TH1,#11111111B;设置计数初始值高8位MOV TL1,#00010100B;设置计数初始值低5位SETB TR1;计数器启动CNTING:JBC TF1,OK;检测是否溢出,若溢出,清溢;出标志,并跳转到OK(P100)SJMP CNTING;等待产品传送,计数OK:MOV TH1,#11111111B;重新装入计数常数值,以便下;一次计数循环 MOV TL1,#00010100B,(3)利用查询方式初始化:,SETB P1.0;顶推气缸动作,推入包装机ACALL DL50MS;控制信号保持50ms,以便气缸动;作到位。短调用指令,相对于;LCALL(P104)CLR P1.0;顶推气缸复位SJMP CNTING;延时50ms子程序,晶振频率为12M HzDL50MS:MOV R7,#50DL1MS:MOV R6,#200DL:NOP;空操作指令 NOP NOP,DJNZ R6,DL;循环控制转移指令(P101)DJNZ R7,DL1MSRET,利用中断方式初始化:课本P151,定时计数器T0工作方式1的逻辑结构,二、方式1(16位方式),当GATE=0时,只要TR0为1,TL0及TH0组成的16位计数器就开始计数;,当GATE=1时,仅当TR0为1,且引脚输入信号状态为1时,16位计数器开始计数。,计数器开始工作后,当16位计数器从初始值开始加1计数直到16位计数器各位全为1以后,再计数1次,计数器就产生溢出,则硬件自动把TF0位置1,同时把计数器清0。,在方式1下,计数器计数范围是165536(216)。定时时间范围为165536个机器周期,即当晶振频率fosc=12MHz时,最大定时时间为65.536 ms,定时计数器T0工作方式1的逻辑结构,方式1初始值的计算,计数器工作模式,设计数N次后,要求计数器溢出,问初始值应为多少?,设初始值为,则:,有:,预先给计数器装入初始值,当计数器计数N次后,溢出标志TF0为1。,定时器工作模式,设定时td秒,要求计数器溢出。,首先计算定时td需要多少个机器周期才能实现。,即:,设初始值为,预先给计数器装入初始值,当计数器计数N个机器周期后,溢出标志TF0为1,定时时间到。,则:,有:,定时/计数器方式1的应用,例2:设单片机应用系统的晶振频率为6MHz,要求使用定时/计数器定时方法在P1.0引脚输出周期为100ms,占空比为1:4的信号序列,如下图所示。,P1.0引脚输出的信号序列,解:,分析:设计时,以20ms为一个基本定时单位,高电平保持1个基本定时单位之后,P1.0变为低电平,保持4个基本定时单位,然后,P1.0再次改变为高电平,周而复始地重复上述过程,就可以实现题目要求的信号序列。,(1)计算计数的初始值,系统的晶振频率为fosc=6MHz,机器周期TM=2s。选用定时/计数器T0的方式1实现,确定定时时间为td=20ms,假设计数初始值为X:,则(TH0)=0D8H,(TL0)=0F0H。,(2)设置工作方式,方式1:M1M0=01,因此,(TMOD)=01H。,定时器模式:,定时/计数器启动不受外部控制:GATE=0,(3)初始化程序(中断方式或程序查询方式 P154),三、方式2(8位自动装入时间常数方式),定时计数器0在工作方式2的逻辑结构,当GATE=0时,只要TR0为1,计数器TL0开始计数;,当GATE=1时,仅当TR0为1,且引脚输入信号状态为1时,计数器TL0开始计数。,定时计数器0在工作方式2的逻辑结构,计数器开始工作后,当8位计数器TL0从初始值开始加1计数直到计数器各位全为“1”以后,再计数1次,计数器就产生溢出,则TF0位由硬件自动置1,同时把TH0的内容装载到TL0。,在方式2下,计数器计数范围是1256(28)。定时时间范围为1256个机器周期,即当晶振频率fosc=12MHz时,最大定时时间为0.256 ms,定时计数器0在工作方式2的逻辑结构,方式2初始值的计算,计数器工作模式,设计数N次后,要求计数器溢出,问初始值应为多少?,设初始值为,则:,有:,预先给计数器装入初始值,当计数器计数N次后,溢出标志TF0为1。,定时器工作模式,设定时td秒,要求计数器溢出。,首先计算定时td需要多少个机器周期才能实现。,即:,设初始值为,预先给计数器装入初始值,当计数器计数N个机器周期后,溢出标志TF0为1,定时时间到。,则:,有:,定时/计数器方式2的应用,例3:低频信号由T0(P3.4)引脚输入,要求当T0(P3.4)发生负跳变时,从P1.0引脚上输出1个500us的同步脉冲。设系统的晶振频率为6MHz。,同步脉冲输出原理,解:,分析:采用定时/计数器计数方式和定时方式结合的方法,当P3.4引脚出现负跳变时,让计数器溢出,此时,使P1.0引脚输出低电平,并且改变定时/计数器的工作方式为定时方式,使低电平保持500us的延时,当计数器再次溢出时,使P1.0引脚输出高电平,同时把定时/计数器的工作方式改变为计数方式,原理如上图所示。,选用定时/计数器T0的方式2可实现上述要求。,(1)外部事件计数的初始化,工作方式:M1M0=10,因此,(TMOD)=06H。,计数器模式:,GATE=0,计数初始值:由于P3.4引脚上的信号,每发生一次负跳变,要求计数器溢出,所以,(TL0)=0FFH,同时,令(TH0)=0FFH,以便下一个负跳变出现时,计数器也可溢出。,(2)500 定时的初始化,工作方式:M1M0=10,因此,(TMOD)=02H。,定时模式:,GATE=0,计数初始值计算:系统晶振频率为6MHz,则机器周期为2,方式2时计数器为8位,则定时500 所需的机器周期个数为,计数器初始值为:,因此,(TL0)=06H,同时,令(TH0)=06H,四、方式3(2个8位方式),当工作方式寄存器中的M1M0设置为11时,定时/计数器T0的工作方式为方式3。,只有定时/计数器T0有方式3,定时/计数器T1没有工作方式3,如果把T1设置为方式3,计数器T1将停止工作。,在工作方式3下,定时/计数器T0被拆分成2个独立的8位计数器TH0和TL0,TH0的逻辑结构,方式3与方式2一样,每个8位计数器的计数范围是1256(28)。定时时间范围为1256个机器周期,即当晶振频率fosc=12MHz时,最大定时时间为0.256 ms,本章小结,一、MCS-51单片机内部有2个可编程的16位定时/计数器T0和T1,它们既可以作为定时器,又可以作为外部事件的计数器,还可以作为串行口的波特率发生器。T0有4种工作方式,而T1有3种工作方式。,二、定时/计数器T0的计数器由TL0和TH0构成;定时/计数器T1的计数器由TL1和TH1构成。T0和T1有多种工作方式,由定时/计数器方式寄存器TMOD设置。,三、T0和T1的启动和停止由定时/计数器控制寄存器TCON控制,当计数器计数溢出时,其溢出标志位TF0和TF1被置1,并可以以此标志向CPU提出中断请求。,计数功能作为计数个数,计数结束发中断信号。记录外部特定事件发生的个数。定时功能作为周期性定时中断信号。用于多任务分时操作系统,实现程序的切换。用作系统时钟基准。作为一个可编程波特率发生器,用于异步串行通信。可往I/O设备输出精确的定时信号,实现外设与CPU的同步。实现CPU的时间延时。,四、计数器/定时器的用途归纳,

    注意事项

    本文(MCS51单片机定时器计数.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开