定时器功能在PIC单片机的应用介绍
扫描二维码
随时随地手机看文章
PIC单片机是基于RISC系统结构的单片机,最初的设计是支持PDP(编程数据处理器)计算机。大量的操作可以用来控制外围设备。PIC单片机比微控制器具有更快的程序执行能力。它是由微芯片技术公司于1889年发明的,是一种8位单片机。众所周知,单片机其实就是一个处理器,内存和外设在单个芯片中的组合。然而,该属性也用于单片机的各种应用程序。
定时器的结构
定时器是由两个寄存器组成的,其中一个寄存器是用来确定计数器的工作形式和功能的,另外一个 计时器 是用来控制单片机的启动和停止的,同时它也是设置溢出的一个标志。
计数过程
每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时器/计数器中断允许时)。如果定时器/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。
定时应用
用作定时器:此时设置为定时器模式,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t 。
计数运用
用作计数器:此时设置为计数器模式,外部事件计数脉冲由T0或T1引脚输入到计数器。每来一个外部脉冲,计数器加1。但单片机对外部脉冲有基本要求:脉冲的高低电平持续时间都必须大于1个机器周期。
定时器的使用
定时器的使用主要分为五个步骤,首先是要打开中断的可以允许的位置,主要是对IE寄存器的控制,然后选择定时器的工作的形式,定时器的一个格式是TMOD的形式,主要有四种方式。第一种计数的方式是十三位加一的形式,第二种是十六位加一的计数器,第三种的定数器被分解成两部分,一个是八位的寄存器,另外一个是八位的计数器。第三步就是要为定时器进行赋值,首先定时器的初值是等于计数器模值减去计数器记满的招满值,而定时器的初值是等于模值减去预定时的时间与单片机时钟周期的十二倍。接下来就是启动计时器,当TRO为0的时候,停止TO开始计数,而TRO值为1的时候,就启动TO进行计数。当TFO为0的时候,没有TO的中断,这时是没有硬件复位,而当值为1的时候有TO溢出中断的情况。当TR1为0的时候,停止TI进行计数,而值为1的时候开启T1进行计数。
当TF1为0的时候,没有T1的中断,为1 的时候会出现T1的溢出中断情况。当IE1的值为0的时候时,出现硬件的复位而当其值为1的时候出现中断。当IT1的值为0的时候INT1出现电平触发的情况,也就是软件复位,而当值为1的时候,INT1的负边沿会出现触发的情况。当IE0的值为0时会出现硬件复位,而当IEO的值为1的时候,INT0上会有中断的情况。当 IT0的值为0时,INT0会发生电平触发,也就是软件复位,同时INT0的负边沿触发。最后一步就是计数器中断入口程序。
一般所有单片机的定时器用做普通定时功能,都需要具备以下几点要素:
1. 时基:时基就是定时器的时钟来源,一般都是来源于内部时钟或外部时钟,并且一般都能设置对 应的分频系数,因此要弄清楚时基来源,分频器设置,设置完时钟来源和分频器就知道计时的最小单元。
2.当前计数器:该寄存器反应的就是当前实时的计数值,这个计数值在每个计时最小单元的时间内加1或者减1。
3.计数匹配器: 一般向上计数的定时器肯定需要1个计数匹配器,当前计数器从0开始加1,一直加到 与计数匹配器相等,则认为定时时间到,这个时候将置位对应标志位或者发出对应中断请求。也有向下计时器,从某个值一直减到0则认为定时时间到,这种定时器不需要计数匹配值。
4.定时中断控制:一般设置定时器都配合对应中断使用,当定时时间到,定时器将设置对应标志位,若使能了定时器中断,定时器将向CPU发出中断请求。
5.定时器计数开关,中断使能开关:有些定时器都有个使能开关,只有使能才开始计数,中断一般都有开关,只有在中断使能开关打开情况下,定时时间到才触发中断请求。