第五讲定时计数器精选文档.ppt
《第五讲定时计数器精选文档.ppt》由会员分享,可在线阅读,更多相关《第五讲定时计数器精选文档.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五讲定时计数器本讲稿第一页,共四十五页5.1 单片机定时单片机定时/计数器的结构计数器的结构一定时一定时/计数器组成框图计数器组成框图1 8051单片机内部有两个两个16位位的可编程定时/计数器,称为定时器定时器0(T0)和定时器定时器1(T1),可编程选择其作为定时器用或作为计数器用,其逻辑结构如图5.1所示。2 定时/计数器的组成:T0、T1、定时器方式寄存器TMOD和定时器控制寄存器TCON。(1)T0、T1是由两个8位专用寄存器组成的16位加法计数器:T0由TH0和TL0组成,T1由TH1和TL1组成。TL0、TL1、TH0、TH1的访问地址依次为8AH8DH,每个寄存器均可被单独访
2、问,用于存放定时初值或计数初值。本讲稿第二页,共四十五页 (2)T0或T1用作计数器时,对引脚T0(P3.4)或T1(P3.5)上输入的脉冲进行计数,每输入一个脉冲,加法计数器加1;用作定时器时,对内部机器周期脉冲进行计数。(3)TMOD、TCON与T0、T1间通过内部总线及逻辑电路连接,定时器/计数器的工作方式、定时时间和启停控制通过由指令来确定这些寄存器的状态来实现。TMOD用于设置定时器的工作方式,TCON用于控制定时器的启动与停止,并保存T0、T1的溢出和中断标志。本讲稿第三页,共四十五页图5.1 8051定时/计数器逻辑结构图 本讲稿第四页,共四十五页二定时二定时/计数器工作原理计数
3、器工作原理 16位的定时器/计数器实质上是一个加1计数器,可实现定时和计数两种功能,其功能由软件控制和切换。定时器属硬件定时和计数,是单片机中效率高而且工作灵活的部件。在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时器/计数器。将控制字写入定时器/计数器的过程叫定时器/计数器的初始化。在初始化程序中,要将工作方式控制字写入定时器方式寄存器(TMOD),工作状态控制字(或相关位)写入定时器控制寄存器(TCON),赋定时/计数初值给TH0(TH1)和TL0(TL1)。本讲稿第五页,共四十五页1 定时工作方式:计数器对内部机器周期进行计数,每过一个机器周期,计数器增1,直至计
4、满溢出。定时器的定时时间与系统的振荡频率紧密相关,单片机的一个机器周期由12个振荡脉冲组成,所以,计数频率fc=fosc/12。如果单片机系统采用12 MHz晶振,则计数周期为:T=1/(121061/12)=1 s,这是最短的定时周期。通过改变定时器的定时初值,并适当选择定时器的长度(8位、13位或16位),可以调整定时时间。本讲稿第六页,共四十五页2 计数工作方式:计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号进行计数,外部脉冲的下降沿下降沿将触发计数。在每个机器周期的S5P2期间采样引脚输入电平,若前一个机器周期采样值为1,后一个机器周期采样值为0,则计数器加1。新的计
5、数值是在检测到输入引脚电平发生1到0的负跳变后,于下一个机器周期的S3P1期间装入计数器中的,可见,检测一个由1到0的负跳变需要两个机器周期。所以,最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间大于一个机器周期。本讲稿第七页,共四十五页3定时器/计数器具有定时和计数两种功能:(1)定时与延时控制方面 可产生定时中断信号,以设计出各种不同频率的信号源;产生定时扫描信号,对键盘进行扫描以获得控制信号,对显示器进行扫描以不间断地显示数据。(2)测量外部脉冲方面 对外部脉冲信号进行计数可测量脉冲信号的宽度、周期,也可实现自动计
6、数。(3)监控系统工作方面 对系统进行定时扫描,当系统工作异常时,使系统自动复位,重新启动以恢复正常工作。本讲稿第八页,共四十五页三定时三定时/计数器的方式寄存器和控制寄存器计数器的方式寄存器和控制寄存器 1 定时/计数器方式寄存器TMODTMOD为定时器0、定时器1的工作方式寄存器:TMOD的低4位为定时器0的方式字段,高4位为定时器1的方式字段,它们的含义完全相同。(1)M1和M0:方式选择位。定义如下:本讲稿第九页,共四十五页(2)C/:功能选择位。C/=0时,设置为定时器工作方式;C/=1时,设置为计数器工作方式。本讲稿第十页,共四十五页(3)GATE:门控位。当GATE=0时,软件控
7、制位TR0或TR1置1即可启动定时器;当GATE=1时,软件控制位TR0或TR1需置1,同时还需(P3.2)或(P3.3)为高电平方可启动定时器,即允许外中断、启动定时器。TMOD不能位寻址,只能用字节指令设置高4位来定义定时器1的工作方式,用低4位来定义定时器0的工作方式。复位时,TMOD所有位均置0。例如:TMOD=0 x10本讲稿第十一页,共四十五页2 定时/计数器控制寄存器TCON TCON的作用是控制定时器的启动、停止,标志定时器的溢出和中断情况。定时器控制字TCON的格式如下:(1)TCON.7(TF1):定时器1溢出标志位。当定时器1计满数产生溢出时,由硬件自动置TF1=1。在中
8、断允许时,该位向CPU发出定时器1的中断请求;进入中断服务程序后,该位由硬件自动清0。在中断屏蔽时,TF1可作查询测试用,此时只能由软件清0。本讲稿第十二页,共四十五页(2)TCON.6(TR1):定时器1运行控制位。由软件置1或清0来启动或关闭定时器1。当GATE=1,且为高电平时,TR1置1启动定时器1;当GATE=0时,TR1置1即可启动定时器1。(3)TCON.5(TF0):定时器0溢出标志位。其功能及操作情况同TF1。(4)TCON.4(TR0):定时器0运行控制位。其功能及操作情况同TR1。(5)TCON.3(IE1):外部中断1()请求标志位。(6)TCON.2(IT1):外部中
9、断1触发方式选择位。(7)TCON.1(IE0):外部中断0()请求标志位。(8)TCON.0(IT0):外部中断0触发方式选择位。本讲稿第十三页,共四十五页TCON中的低4位用于控制外部中断,与定时/计数器无关,它们的含义将在下一节中介绍。当系统复位时,TCON的所有位均清0。TCON的字节地址为88H,可位寻址,清溢出标志位或启动定时器时都可以用位操作指令,如SETB TR1、JBC TF1,LP2。3 定时/计数器的初始化由于定时/计数器的功能是由软件编程确定的,因此,一般在使用定时/计数器前都要对其进行初始化。初始化步骤如下:(1)确定工作方式对TMOD赋值。TMOD=0 x10,表明
10、定时器1工作于方式1,且为定时器方式。本讲稿第十四页,共四十五页(2)预置定时或计数的初值直接将初值写入TH0、TL0或TH1、TL1。定时/计数器的初值因工作方式的不同而不同。设最大计数值为M,则各种工作方式下的M值如下:方式0:M=213=8192方式1:M=216=65536方式2:M=28=256方式3:定时器0分成两个8位计数器,所以两个定时器的M值均为256。因定时/计数器工作的实质是做“加1”计数,所以,当最大计数值M值已知时,初值X可计算如下:X=M计数值本讲稿第十五页,共四十五页定时器1采用方式1定时,M=65536,因要求每50ms溢出一次,如采用12 MHz晶振,则计数周
11、期T=1 s,计数值=(501000)/1=50000,所以,计数初值为X=6553650000=15536=0 x3CB0将0 x3C、0 xB0分别预置给TH1、TL1。(3)根据需要开启定时/计数器中断直接对IE寄存器赋值。本讲稿第十六页,共四十五页(4)启动定时/计数器工作将TR0或TR1置1。GATE=0时,直接由软件置位启动;GATE=1时,除软件置位外,还必须在外中断引脚处加上相应的电平值才能启动。如果GATE=0,直接由软件置位启动,其指令为:TR1=1。定时/计数器的初始化过程已完毕。本讲稿第十七页,共四十五页定时初值或计数初值的计算方法定时初值或计数初值的计算方法 不同工作
12、方式的定时初值或计数初值的计算方法如下表:工作方式 计数位数 最大计数值最大定时时间定时初值计算公式计数初值计算公式方式013213=8192213T机X=213-T/T机X=213-计数值方式116216=65536216T机X=216-T/T机X=216-计数值方式2828=25628T机X=28-T/T机X=28-计数值表中T 表示定时时间,T机表示机器周期。本讲稿第十八页,共四十五页5.2 定时定时/计数器的工作方式计数器的工作方式通过对TMOD寄存器中M0、M1位进行设置,定时/计数器可选择4种工作方式。一方式方式0方式0构成一个13位定时/计数器。图5.2是定时器0在方式0时的逻辑
13、电路结构,定时器1的结构和操作与定时器0完全相同。本讲稿第十九页,共四十五页图5.2 定时器0(或定时器1)在方式0时的逻辑电路结构图本讲稿第二十页,共四十五页由图可知:16位加法计数器(TH0和TL0)只用了13位。其中,TH0占高8位,TL0占低5位(只用低5位,高3位未用)。当TL0低5位溢出时自动向TH0进位,而TH0溢出时向中断位TF0进位(硬件自动置位)并申请中断。当=0时,多路开关连接12分频器输出,定时器0对机器周期计数,此时,定时器0为定时器。其定时时间为(M定时器0初值)时钟周期12=(8192定时器0初值)时钟周期12当=1时,多路开关与T0(P3.4)相连,外部计数脉冲
14、由T0脚输入,当外部信号电平发生由1到0的负跳变时,计数器加1,此时,定时器0为计数器。本讲稿第二十一页,共四十五页当GATE=0时,或门被封锁,信号无效。或门输出常1,打开与门,TR0直接控制定时器0的启动和关闭。TR0=1,接通控制开关,定时器0从初值开始计数直至溢出。溢出时,16位加法计数器为0,TF0置位并申请中断。如要循环计数,则定时器0需重置初值,且需用软件将TF0复位。实训5步骤1)中就采用了重置初值语句和JBC命令。TR0=0,则与门被封锁,控制开关被关断,停止计数。当GATE=1时,与门的输出由的输入电平和TR0位的状态来确定。若TR0=1,则与门打开,外部信号电平通过引脚直
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第五 定时 计数器 精选 文档
限制150内