单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt

单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt

ID:50313611

大小:181.50 KB

页数:26页

时间:2020-03-08

单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt_第1页
单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt_第2页
单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt_第3页
单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt_第4页
单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt_第5页
资源描述:

《单片机原理与接口技术 教学课件 作者 徐瑞华 第六章1.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第6章定时器/计数器及应用单片机系统实现定时有三种方法:软件定时、硬件定时和可编程定时。1、软件定时:靠执行一个循环程序以进行时间延迟。时间精确,不需外加硬件电路;要占用CPU,定时时间不宜太长。2、硬件定时:定时功能全部由硬件电路完成,不占用CPU时间;但通过改变电路中元件参数来调节定时时间使用不方便。3、可编程定时器定时:通过对系统的时钟脉冲的计数来实现。使用灵活方便;用计数方法实现定时,因此还可以对外部脉冲进行计数,实现计数功能。MCS-51单片机内部具有16位的定时器/计数器。其结构如下所示:6.1定时器/计数

2、器的结构从图中可见,定时器/计数器的核心部件是一个加1计数器,即每来一个脉冲,计数值加1,直至计满溢出(有的计数器是减1计数)。从图中还能看出,加1计数器的输入脉冲有两个来源:一个是外部脉冲源(通过外部引脚T0和T1输入);另一端是系统的时钟振荡器。计数时,选择两个中的一个进行计数。当开关打到上端时,对机器周期进行计数,所计的数值乘以机器周期便是所需要的定时时间,此方式称为定时方式。当开关打到下端时,对外部输入信号进行计数,把所计的脉冲个数存放在计数器中。这里要注意:外部输入脉冲的时候高低电平保持时间不能少于两个机器周

3、期,不然检测不到。以上两种方式的设定靠软件对定时器工作方式寄存器TMOD的设置来决定的。定时器/计数器的启动、停止以及溢出能情况,是由控制寄存器TCON来控制的。一、定时器/计数器的控制寄存器TCONTCON具有中断控制和定时控制两种功能,其中,低4位字段是与外部中断有关系的,在中断一章中已经讲过,这里讲解高4位字段的作用。TF1和TF0为T1和T0中断请求标志位,在上一章也讲过了。TR1和TR0为定时器运行控制位:TR1=1,定时器/计数器T1启动,TR1=0,定时器/计数器T1关闭,通过软件来实现SETBTR1或者

4、CLRTR1。TR0与TR1作用一样,只是TR0是控制定时器/计数器T0的。二、定时器/计数器的工作方式寄存器TMOD其中,低4位用于决定T0的工作方式,高4位用于决定T1的工作方式。1、M1和M0工作方式控制位:用于决定4种工作方式2、C/T定时器/计数器方式选择位:C/T=0,开关打到上面,设置为定时方式,对机器周期进行计数;C/T=1,开关打到下面,设定为计数方式,对外部信号进行计数,外部信号接至T0(P3.4)或T1(P3.5)引脚。3、GATE门控位GATE=0时,只要通过软件就可以使TR0(或TR1)置1,

5、从而启动定时器T0(或T1);GATE=1时,定时器/计数器的启动光靠软件是启动不了了,此时,需要首先在INT0(或INT1)引脚上输入一高电平,然后借助软件使TR0(或TR1)置1,才能启动定时器T0(或T1)工作。一般使用的时候令GATE=0,也就是定时器的开启只由TR0(或TR1)来控制。三、定时器/计数器计数初值的计算对于增量式计数器,当作为定时器使用的时候,每过一个机器周期定时器自动加1;当作为计数器时,T1或T0引脚上每出现一个下降沿,计数器自动加1。当计数或者计时满了以后就会使T0和T1回零,同时使TF1

6、和TF0置1,如果此时定时“中断允许”打开的话就会发出中断请求。这里要注意的是不管是定时还是计数,为达到目的,我们首先要对定时器/计数器设置一个初始值。利用以下公式:定时计数n为不同工作方式下的最大计数位数四、工作方式单片机中每个定时器/计数器中都有两个8位的特殊功能寄存器TH0和TL0(或TH1和TL1),用来存放计数的结果。如果全部计满就可以计65536个脉冲。但是根据实际需要,有些场合是不需要计这么多脉冲的。因此,给定时器/计数器设置了四种工作方式:工作方式0、工作方式1、工作方式2和工作方式3。由TMOD中的M

7、1M0的取值决定。1、工作方式0当M1M0为00时,计数器工作在工作方式0,其16位计数器当中只用了13位,即TH的高8位和TL的低5位组成一个13位定时/计数器,而TL0的高3位没有用到。要注意的是这种方式定时溢出以后需要软件重新装初值。概括:TL的低5位为11111的时候,再计一个数,就会向TH进位。从图中可以看到:当C/T=0时,定时器工作在定时方式,定时器对机器周期计数;当C/T=1时,定时器工作在计数方式,定时器对外来脉冲进行计数。计数初值的计算:定时时间:t=(213-T初值)机器周期因此,T初值=213

8、-(t/机器周期)然后将T初值写成13位二进制形式,其中的高8位放在TH中,而低5位放在TL中。计数:所计脉冲个数=(213-T初值)因此,T初值=213-所计脉冲个数【例6-1】利用定时器T0产生定时脉冲。每隔2ms产生宽度为2个机器周期的正脉冲,由P1.0输出此定时序列脉冲信号(设时钟频率为6MHZ)。解:首先求出定时器T0初

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

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

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