您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 第09章-事件管理器之一-通用定时器
第09讲:F2812事件管理器(EVA/B)1.事件管理器概述2.通用定时器3.比较单元与PWM输出4.捕获单元5.正交编码脉冲单元(QEP)6.事件管理器的中断问题本章内容每个事件管理器皆由4个部分组成通用定时器比较单元与PWM电路捕获单元正交编码脉冲(QEP)电路1.事件管理器概述事件管理器模块事件管理器A事件管理器B模块信号模块信号通用定时器通用定时器1通用定时器2T1PWM/T1CMPT2PWM/T2CMP通用定时器3通用定时器4T3PWM/T3CMPT4PWM/T4CMP比较单元比较器1比较器2比较器3PWM1/2PWM3/4PWM5/6比较器4比较器5比较器6PWM7/8PWM9/10PWM11/12捕获单元捕获器1捕获器2捕获器3CAP1CAP2CAP3捕获器4捕获器5捕获器6CAP4CAP5CAP6正交编码脉冲电路QEPQEPQEP1QEP2QEPI1QEPQEP4QEP5QEPI2EVA和EVB模块信号引脚1.事件管理器概述事件管理器模块事件管理器A事件管理器B模块信号模块信号外部定时器输入定时器方向外部时钟TDIRATCLKINA定时器方向外部时钟TDIRBTCLKINB外部比较器输出-触发输入比较器C1TRIPC2TRIPC3TRIPC4TRIPC5TRIPC6TRIP外部定时器-比较触发输入T1CTRIP*T2CTRIPT3CTRIP*T4CTRIP功率模块保护中断输入PDPINTA*PDPINTB*外部ADCSOC触发输入EVASOCEVBSOCEVA和EVB模块信号引脚1.事件管理器概述事件管理器功能框图(EVA)PWMCircuitsPWMCircuitsPWMCircuitsOutputLogicOutputLogicOutputLogicGPTimer1CompareGPTimer1GPTimer2CompareGPTimer2CompareUnit1CompareUnit2CompareUnit3CaptureUnitsMUXOutputLogicOutputLogicEVControlRegisters/LogicResetPIETCLKINA/TDIRA/2ADCStartDataBusQEPCircuitCLKDIR••T1PWM_T1CMPT2PWM_T2CMPPWM1PWM2PWM3PWM4PWM5PWM6CAP1/QEP1CAP2/QEP2CAP3/QEPI1•1.事件管理器概述2、通用定时器F2812内有两个事件管理器(EVA、EVB),每个EV包括两个通用定时器。EVA:GP1、GP2;EVB:GP3、GP4;GP定时器模块包含:√一个16位可读/写及增/减的定时器计数器TxCNT(x=1,2,3,4)。√一个16位可读/写定时器比较寄存器(双缓冲)TxCMPR;√一个16位可读/写定时器周期寄存器(双缓冲)TxPR;√一个16位可读/写定时器控制寄存器TxCON;√一个通用定时器比较输出引脚TxCMP;√用于内部和外部时钟输入的可编程定标器;√控制和中断逻辑,用于4个可屏蔽中断(上溢、下溢、比较和周期中断);√输出逻辑。见下图2、通用定时器通用定时器GP的功能框图16-BitTimerCounterTxCMPR.15-0GPTCONATxCNT.15-0CompareLogicClockPrescalerOutputLogicTPS2-0TxCON.10-8PeriodRegisterShadowedCompareRegisterShadowedTxPR.15-0External(1/4)Internal(HSPCLK)TCLKS1-0TxCON.5-4TxPWM_TxCMPNote:x=1or2QEPMUX2、通用定时器和通用定时器1(T1)相关的寄存器:1.T1周期寄存器T1PR(16位)2.T1比较寄存器T1CMPR(16位)3.T1计数寄存器T1CNT(16位)4.T1控制寄存器T1CON(16位)5.全局定时器控制寄存器AGPTCONA(16位)2、通用定时器T1的输入信号1.来自于CPU的内部时钟2.外部时钟输入TCLKINA,最大频率为器件自身时钟的1/4,也就是1/4*150M3.TDIRA/B,用于定时器的增/减计数模式(或增或减)4.复位信号RESETT1的输出信号1.定时器的比较输出T1PWM_T1CMP2.送给ADC模块的AD转换启动信号3.下溢、上溢、比较匹配和周期匹配信号4.计数方向指示2、通用定时器通用定时器的三个时钟源:1HSPCLK2来自QEP单元3外部管脚(TCLKINA或TCLKINB)设置方法:TxCON(比特15–比特0)的比特4和比特5两位Bit5400HSPCLK01外部TCLKIN管脚10保留11QEP2、通用定时器计数寄存器T1CNT为T1的计数器寄存器,其内容是随着时钟脉冲不断增加或者减少的,每1个HSPCLK的脉冲,T1CNT的值增加1或者减少1。周期寄存器T1PR是定时器T1的周期寄存器,用于存放为T1设置的周期值。比较寄存器T1CMPR是定时器T1的比较寄存器,用于存放为T1设置的比较值。2、通用定时器比较寄存器和周期寄存器的功能T1PR和T1CMPR在一般情况下是在初始化的时候进行赋值,然后就成为了一个参考标准,CPU会实时的将T1CNT的值和这两个标准进行比较:当T1CNT的值和T1PR相等时,T1CNT就会复位成0重新开始计数或者逐渐减少直至0,完成1个周期的计数,然后再从0开始计数至T1PR里面的数值,这样循环下去。当T1CNT的值和T1CMPR的值相等时,就会产生一些比较事件,例如PWM波形就是依靠这个原理来实现的。2、通用定时器阴影寄存器的作用在程序执行的过程当中(定时器正在计数的过程中),可以改变T1CMPR或者T1PR的值吗?答案是肯定的,可以在一个周期的任何时刻向T1CMPR或者T1PR写入新的数值,其功劳就要归功于阴影寄存器。如上图所示,假设我们要向T1CMPR写入新的数值0xXXXXh,首先将这个数值写入T1CMPR的阴影寄存器,当T1CON中第3位TCLD1和第2位TCLD0所指定的特定事件发生时,阴影寄存器的数据就会被写入T1CMPR的工作寄存器。2、通用定时器定时器1比较寄存器T1CMPR的装载条件如下面的表格所示。如果TCLD1和TCLD0设置为10的话,新的数据就会立即被写入T1CMPR,从而改变T1CMPR的值。定时器比较寄存器之装载条件TCLD1TCLD0(T1CON中第3位TCLD1和第2位TCLD0)00当计数器T1CNT值为001当计数器T1CNT值为0或者等于周期寄存器10立即载入11保留2、通用定时器2.1通用定时器计数操作和计数模式T1计数模式选择TMODE1TMODE0(T1CON.12T1CON.11)00停止/保持01连续增/减模式(先增后减)10连续增模式(单增再清)11定向增/减计数模式(directionalup/downcountmode)(或增或减)A.停止/保持模式停止/保持模式,就是定时器计数器T1CNT停止计数,保持现有的数值。B.连续增模式(递增再清)如下图所示,T1PR=2,T1CNT从0开始计数至2,等于周期寄存器值的值时,直接降为0,然后再从0开始计数至2,周而复始。实际的计数周期为T1PR+1。T1PR=2固定不变B.TxPR的改变对递增再清计数模式的影响TxCON[6]用于使能或禁止通用定时器;TxCON.3~2只控制TxCMPR的装载条件;而TxPR仅在一个周期完成后装载(计数器溢出时)C.定向的增或者减计数模式(或增或减)定向的增或者减计数模式,这时候T1CNT进行增计数或者是减计数,取决于引脚TDIRA的电平:如果TDIRA为高电平,则T1CNT进行增计数;如果TDIRA为低电平,则T1CNT进行减计数。如果在计数过程中TDIRA电平发生了变化,那么必须在完成当前计数周期后的下一个CPU时钟周期时,计数方向才发生改变。D.连续增/减模式(先增后减)如下图:T1PR=2,T1CNT从0开始计数至2,然后再从2逐渐减少至0,周而复始。实际的计数周期为2*T1PR。注:T1PR=2固定不变TxPR仅在一个周期完成后装载(计数器溢出时)D.TxPR的改变对先增后减计数的影响注:改变T1PR的情形TxCON[6]用于使能或禁止通用定时器PWM简介脉宽调制,简称PWM(PulseWidthModulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中,简单的描述就是一些如下图所示的矩形脉冲波形,PWM波形最重要的三个参数是周期、频率和占空比。PWM周期:T=t1+t2PWM频率:F=1/TPWM占空比:D=t1/(t1+t2)=t1/T2.2定时器的比较操作EV的比较机制能够产生多路PWM功能。EVA的两个通用定时器能够产生2路独立的PWM波形—T1PWM和T2PWM,三个比较单元每一个都能产生一对互补的PWM波形(比较单元1产生PWM1和PWM2,比较单元2产生PWM3和PWM4,比较单元3产生PWM5和PWM6)这样,EVA一共能产生8路PWM波形。EVB和EVA一样,同样能够产生8路PWM波形。通用定时器GP的功能框图(侧重于比较器)如何使能定时器的比较操作?和比较操作有关的寄存器:比较寄存器TxCMPR、计数器寄存器TxCNTPWM波形通过引脚TxPWM输出TxCON.1(TECMPR)置1使能、清0禁止比较操作。如果比较操作使能,出现比较匹配后有下列操作:匹配1个时钟周期后,比较中断标志位置位匹配1个DeviceClock后,PWM的输出产生跳变若GPTCONA/B启动A/D转换器,则比较中断位置位的同时产生A/D转换启动信号未被屏蔽时,将产生一个外设中断请求首先介绍通用定时器产生的PWM波形。T1和T2分别能够产生1路独立的PWM,以T1为例:当T1计数寄存器T1CNT的值和T1CMPR的值相等时,就会发生比较匹配事件,这时如果PWM的功能使能,则T1PWM引脚便可以输出PWM波形。T1能够产生两种类型的PWM:一种是不对称的PWM波形,另一种是对称的PWM波形,产生哪种类型的PWM波形取决于T1CNT的计数方式。(1)当T1CNT的计数方式为连续增计数时,T1PWM引脚输出不对称的PWM波形。当定时器T1的控制寄存器T1CON的TMODE1和TMODE0为10时,定时器T1工作于连续增模式。当T1CNT的值计数到和T1CMPR的值相等时,发生比较匹配事件。如果T1CON的第1位定时器比较使能为TECMPR为1,即定时器比较操作被使能,且GPTCONA的第6位比较输出使能位TCMPOE为1,同时GPTCONA下的T1PIN引脚输出极性为高电平或者低电平的话,T1PWM就会输出不对称的PWM波形。(1)当T1CNT的计数方式为连续增计数时,T1PWM引脚输出不对称的PWM波形。改变TxCMP对PWM波形的影响(递增计数模式)Thisexample:TxCON.3-2=00(TxCNT=TxPR时TxCMPR重载)TxPR=3(保持不变)TxCMPR=1(initially)Prescale=10301231CPUCLKTxCNTReg.30CPUwritesa2tocomparereg.bufferanytimehereTxCMPR=2TxPWM/TxCMP(activehigh)(UsedforAsymmetricPWMWaveforms)递增计数计数器计数周期=TxPR+1TxCMPR=1TxCMPR=1匹配点匹配点匹配点匹配点(2)当T1CNT的计数方式为连续增/减计数时,T1PWM引脚输出对称的PWM波形。当定时器T1的控制寄存器T1CON的TMODE1和TMODE0为01时,定时器T1工作于连续增/减计数模式。当T1CNT的值计数到和T1CMPR的值相等时,发生比较匹配事件。如果T
本文标题:第09章-事件管理器之一-通用定时器
链接地址:https://www.777doc.com/doc-7391029 .html