您好,欢迎访问三七文档
第五章定时/计数器第五章定时/计数器第五章定时/计数器5.1定时/计数器功能5.2定时和计数器硬件结构5.3定时/计数器工作方式5.4定时/计数器编程第五章定时/计数器5.1定时/计数器功能5.1定时/计数器功能5.4.1定时功能所谓定时功能就是通过来自单片机内部的时钟脉冲作计数脉冲,使计数器计数,即每个机器周期计数器加1,计数值达到予置值后,定时/计数模块产生溢出。5.4.2计数器功能所谓计数是指对外部事件进行计数。外部事件的发生以输入脉冲表示,因此计数功能的实质就是对外来脉冲进行计数。第五章定时/计数器5.2定时和计数器硬件结构5.2定时和计数器硬件结构PIC16F877单片机配置了3个定时器/计数器模块,分别为TMR0、TMR1和TMR2。共同点:它们的核心部分都是一个由时钟信号触发,按递增方式累加工作的循环计数器;从预先设定的某一初始值开始累计,在累计到计数器产生溢出,并同时建立一个相应的溢出中断标志。三者的不同点:TMR0为8位宽,有一个可选的预分频器,用于通用目的,可用于定时和计数;TMR1为16位宽,附带一个可编程的预分频器和一个可选的低频时基振荡器,适合与CCP(捕捉/比较脉宽调制)模块配合使用来实现输入捕捉或输出比较功能,也可用于定时和计数;TMR2为8位宽,附带一个配合使用来实现PWM脉冲宽度调制信号的产生,只能用于定时。第五章定时/计数器5.2定时和计数器硬件结构5.2定时和计数器硬件结构5.2.1定时器/计数器TMR0的硬件结构1.定时器/计数器TMR0具有以下特点(1)TMR0是一个8位宽的由时钟信号上升沿触发的循环累加计数寄存器。(2)有一个专用的外部触发信号输入端(T0CKI)。(3)TMR0也是一个在文件寄存器区域内统一编址的寄存器,地址为01H或101H,用户用软件方式可直接读/写计数器的内容。(4)具有一个软件可编程的8位预分频器。第五章定时/计数器5.2定时和计数器硬件结构5.2定时和计数器硬件结构5.2.1定时器/计数器TMR0的硬件结构1.定时器/计数器TMR0具有以下特点(5)当使用内部触发信号,即指令周期作为时钟信号源时,模块TMR0工作于定时方式,触发方式为固定上升沿触发有效。在计数器溢出时,相应的溢出中断标志T01F自动置位,并可产生溢出中断。(6)当外部时钟信号源时,模块TMR0工作于计数方式,触发方式可由程序设置位上升沿触发或下降触发有效。在计数器溢出时,也可产生溢出中断。第五章定时/计数器5.2定时和计数器硬件结构5.2定时和计数器硬件结构5.2.1定时器/计数器TMR0的硬件结构2.与定时器/计数器TMR0模块相关的寄存器(1)选项寄存器OPTION_REG(2)中断控制寄存器INTCON第五章定时/计数器表5-1与TMR0模块相关的寄存器寄存器的名称和符号寄存器地址寄存器内容Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0定时器/计数器TMR001H/101H8位累加计数寄存器选项寄存器OPTION_REG81H/181HRBPUINTEDGT0CST0SEPSAPS2PS1PS0中断控制寄存器INTCON0BH/8BH/10B/H/18BHGIEPEIET0IEINTERBIET0IFINTFRBIF端口RA方向寄存器TRISA85H————TRISA5TRISA4TRISA3TRISA2TRISA1TRISA0第五章定时/计数器5.2定时和计数器硬件结构PS2PS1PS0TMR0比率WDT比率0001:21:10011:41:20101:81:40111:161:81001:321:161011:641:321101:1281:641111:2561:128第五章定时/计数器5.2定时和计数器硬件结构3定时器/计数器TMR0模块的电路结构和工作原理第五章定时/计数器5.2定时和计数器硬件结构4.分频器分频器实际上也是一个8位累加计数器,它只能配合TMR0或WDT输出的时钟由PS2—PS0设定分额比,这个分频比由OPTION_REG寄存器中的PS2—PS0决定。5.TMR0累加计数寄存器TMR0有定时器和计数器两种工作模式。这两种模式之间的差异是触发信号的来源不同。TMR0的工作模式由T0CS位(选项寄存器OPTION_REG)决定表5—3TMR0的工作模式T0CSTMR0工作模式触发信号的来源0定时器计数器的触发信号取自内部指令周期1计数器计数器的触发信号取自外部引脚T0CKI电平的上升沿/下降沿第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构定时器/计数器TMR1不仅可作通用的定时器和计数器;而且利用内置的低频时基振荡器,还可实现实时时钟RTC功能;通过TMR1与CCP模块配合使用,定时器/计数器TMR1又可实现输入捕捉和输出比较功能。定时器/计数器TMR1是一个16位的可读可写的计数寄存器,由高低两字节组成(TMR1H和TMR1L)16位寄存器从0000H到FFFFH加1计数,然后回到0000H。在从FFFFH到0000H的过程中,置位中断标志位TMR1IF。定时器/计数器TMR1还带有一个3位的可编程预分频器和一个内置的低功耗低频时基振荡器。第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构1.定时器/计数器TMR1模块具有的特点(1)一个16位的由时钟信号上升沿触发的累加计数寄存器对TMR1H:TMR1L;(2)TMR1H和TMR1L是在RAM中统一编址的寄存器对,地址为0EH和0FH,可用软件方式读/写TMR1[寄存器对的内容;(3)一个可选用的3位可编程的预分频器;第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构1.定时器/计数器TMR1模块具有的特点(4)累加计数的信号源可选择内部系统时钟、外部触发信号或自带时基振荡器信号;(5)既可工作于定时器模式,又可工作于计数器模式,还可用作实时时钟RTC;(6)在计数器溢出时,相应的溢出中断标志自动置位,并可产生溢出中断。第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构2与定时器/计数器TMR1模块相关的寄存器表5-4与TMR1模块相关的寄存器寄存器的名称和符号寄存器地址寄存器内容Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0中断控制寄存器INTCON0BH/8BH/10BH/18BHGIEPEIET0IEINTERBIET0IFINTFRBIF第一外设中断使能寄存器PIR1OCPSPIFADIFRCIFTXIFSSPIFCCP1IFTMR2IFTMR1IF第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构2与定时器/计数器TMR1模块相关的寄存器PIE18CHPSPIEADIERCIETXIESSPIECCP1IETMR2IETMR1IETMR1L0EH16位TMR1计数寄存器低字节寄存器TMR1H0FH16位TMR1计数寄存器高字节寄存器T1CON10H————T1CKPS1T1CKPS0T1OSCENT1SYNCTMR1CSTMR1ON第五章定时/计数器5.2定时和计数器硬件结构5.2.2定时器/计数器TMR1的硬件结构3定时器/计数器TMR1模块的电路结构和原理第五章定时/计数器0:表示选择内部时钟源(fcsc/4=Tcyc指令周期);1:表示选择外部时钟源,即时钟信号来源于外部引脚或者自带振荡器。0:表示TMR1外部输入时钟与系统时钟保持同步;1:表示TMR1外部输入时钟与系统时钟不保持同步。0:表示禁止TMR1振荡器起振,使“非”门的输出端呈高阻状态;1:表示使能TMR1发振荡器起振。T1CKPS1T1CKTS0分频比001:1011:2101:4111:8B7B6B5B4B3B2B1B0——T1CKPST1CKPS0T1OSCET1SYNCTMR1CSTMR1ON第五章定时/计数器5.2定时和计数器硬件结构TMR1有两种工作方式:定时器方式和计数器方式,其中计数器方式又分为同步计数器工作方式和异步计数器工作方式。TMR1的时钟信号或触发信号共有4种获取方式:(1)由内部系统时钟4分频后获取,即取自指令周期;(2)从RC0/T1OSO/T1CKI引脚获取;(3)从RC1/T1OSI/CCP2引脚获取;(4)自带振荡器产生。第五章定时/计数器5.2定时和计数器硬件结构4.定时器TMR1应注意的问题(1)当对的寄存器TMR1H或TMR1L进行初始化时,预分频器将会自动清0。(2)在寄存器对TMR1H:TMR1L进行写操作时,可以使预分频器清0。当TMR1处于运行状态时,对于寄存器TMR1H或TMR1L值进行的写操作,可能会写入不希望的值。(3)TMR1工作于异步计数器方式时,不能作为CCP模块的输入捕捉或输出比较的时间基准。第五章定时/计数器5.2定时和计数器硬件结构4.定时器TMR1应注意的问题(4)在上电复位(POR)或者其他复位时,TMR1H:TMR1L的内容保持原有数值,不会复位到0000H。(5)在上电复位或者掉电复位时,控制寄存器T1CON的内容将回到00H,并关闭TMR1,且预分频器的分频比设定为缺省值1:1。在所有的其他复位时,均不会影响T1CON寄存器的值。(6)如果在复位时需要将TMR1H和TMR1L的内容回到00H,可以用程序实现,即先半TMR1关闭,然后分别将寄存器TMR1H和TMR1L清0。第五章定时/计数器5.2定时和计数器硬件结构5.2.3定时器TMR2的硬件结构定时器TMR2模块是一个8位定时器,带一个4位宽的可编程预分频器、一个4位宽的可编程后分频器和一个可编程8位周期寄存器PR2。但是定时器/计数器TMR2只能工作于定时器模式;因此它不仅可以为主同步串行端口MSSP模块(SPI模式)提供波特率时钟;还可以与CCP模块配合使用,提供脉宽调制PWM功能的时基信号。第五章定时/计数器5.2定时和计数器硬件结构5.2.3定时器TMR2的硬件结构1.定时器TMR2的特点(1)TMR2是一个8位宽的累加计数寄存器;(2)TMR2在RAM空间内统一编址,地址为011H;(3)可用软件方式直接读/写TMR2的内容;(4)具有可编程的4位预分频器,有1:1、1:4、1:16,共3种分频比;(5)具有可编程的4位后分频器,有16种分频比;第五章定时/计数器5.2定时和计数器硬件结构5.2.3定时器TMR2的硬件结构(6)带有一个8位周期寄存器PR2,这个寄存器的值由用户设置;(7)只能由内部系统时钟来触发定时器的增量,因此只工作于定时器模式;(8)具有溢出次数经过分频的溢出中断功能;(9)不管哪种复位,都会将TMR2清0。但TMR0和TMR1寄存器的内容不受复位的影响;(10)TMR2可以被软件关闭。第五章定时/计数器5.2定时和计数器硬件结构5.2.3定时器TMR2的硬件结构2与定时器TMR2模块相关的寄存器表5—10与TMR2模块相关的寄存器寄存器的名称和符号寄存器地址寄存器内容Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0中断控制寄存器INTCON0BH/8BH/10BH/18BHGIEPEIET0IEINTERBIET0IFINTFRBIF第二外设中断使能寄存器PIE28DH-保留-EEIEBCLIE--CCP2IE第五章定时/计数器5.2定时和计数器硬件结构5.2.3定时器TMR2的硬件结构2与定时器TMR2模块相关的寄存器第二外设中断标志寄存器PIR20DH-保留-EEIFBCLIF--CCP2IF工作寄存器TMR211H8位TMR2计时寄存器控制寄存器T2CON12H——TOUTPS3TOUTPS2TOUTPS1TOUTPS0TMR2ONT2CKPS1T2CKPSO周期寄存器PR292HTMR2定时周期寄存器第五章定时/计数器5.2定时和计数器硬件结构3定时器TMR2模块的电路结构第五章定时/计数器0:表示关闭TMR2,
本文标题:PIC单片机定时器
链接地址:https://www.777doc.com/doc-4428503 .html