第8章事件管理器_第1页
第8章事件管理器_第2页
第8章事件管理器_第3页
第8章事件管理器_第4页
第8章事件管理器_第5页
已阅读5页,还剩127页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1第8章事件管理器2LF2407A包括两个事件管理器模块:EVA和EVB。

每个事件管理器模块包括:两个16位通用定时器(GP)、三个比较单元、三个捕获单元以及一个正交编码脉冲输入电路(QEP)。

EVA和EVB功能相同,只是名称不同。8.1事件管理器(EV)模块基本知识38.1.1事件管理器结构事件管理器EVA结构框图如图8-1所示。图8-1EVA结构框图33348.1.2事件管理器引脚表8-1EVA、EVB引脚描述58.2事件管理寄存器地址下面四个表列出EVA所有寄存器的地址,EVB的类似。表8-2EVA定时器寄存器地址6表8-3EVA比较控制寄存器地址7表8-4EVA捕获控制寄存器地址8表8-5EVA中断寄存器地址98.3事件管理器中断

事件管理器中断分为3组:事件管理器中断组A、B和C。每组具有不同的中断标志、中断屏蔽寄存器,见下表。表8-6EV中断组的中断标志寄存器和中断屏蔽寄存器10表8-2所有EVA中断、优先级和分组11EVA中断标志寄存器

以EVA中断标志寄存器A(EVAIFRA)为例,其映射地址为742Fh,各位描述如下:位15-11保留位。读返回0,写无效。位10T1OFINTFLAG。通用定时器1的上溢中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位位9T1UFINTFLAG。通用定时器1的下溢中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位12位8T1CINTFLAG。通用定时器1的比较中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位位7T1PINTFLAG。通用定时器1的周期中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位位6-4保留位。读返回0,写无效。位3CMP3INTFLAG。比较单元3中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位13位2CMP2INTFLAG。比较单元2中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位位1CMP1INTFLAG。比较单元1中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位位0PDPINTAFLAG。功率驱动保护中断标志读0:标志被复位;1:标志被置位写0:无效;1:复位标志位14EVA中断屏蔽寄存器

以EVA中断标志寄存器A(EVAIMRA)为例,其映射地址为742Ch,各位描述如下:位15-11保留位。读返回0,写无效。位10T1OFINTENABLE。通用定时器1的上溢中断使能位

0:禁止;1:使能位9T1UFINTENABLE。通用定时器1的下溢中断使能

0:禁止;1:使能15位8T1CINTENABLE。通用定时器1的比较中断使能

0:禁止;1:使能位7T1PINTENABLE。通用定时器1的周期中断使能

0:禁止;1:使能位6-4保留位。读返回0,写无效。位3CMP3INTENABLE。比较单元3中断使能

0:禁止;1:使能16位2CMP2INTENABLE。比较单元2中断使能

0:禁止;1:使能位1CMP1INTENABLE。比较单元1中断使能

0:禁止;1:使能位0PDPINTAENABLE。功率驱动保护中断使能0:禁止;1:使能178.1.3功率驱动保护中断PDPINTx可为功率变换和电动机驱动等系统操作提供安全保证。

PDPINTx可以用于向电动机的监视程序提供过电压、过电流和异常的温升等异常信息。如果PDPINTx中断被允许,则在PDPINTx引脚电平变低后,则驱动所有PWM输出引脚为高阻态,一个中断将被生成。PDPINTx中断在复位后被使能。如果PDPINTx中断被禁止,则驱动PWM输出到高阻态的动作也被禁止。188.1.4EV中断

事件管理器中断总共分A、B、C三组,每组均分配一个CPU中断(INT2,3或4)。因为每组中断均有多个中断源,所以CPU中断请求通过外设中断扩展控制器(PIE)模块来处理。19中断请求有如下几个响应阶段:中断源。如果外设中断发生,EVxIFRA、EVxIFRB、或EVxIFRC(x=A或B)相应的标志位被置1。中断使能。事件管理器中断可以分别由寄存器EVxIMRA、EVxIMRB或EVxIMRC(x=A或B)来使能或禁止。PIE请求。如果中断标志位和中断屏蔽位均有效,那么外设会向PIE模块发送一个外设中断请求。CPU响应。CPU接收到中断后,IFR相应的位被置1,如果IMR测相应位没有被屏蔽掉的话,CPU响应中断。CPU响应中断后,中断响应被软件控制。PIE响应。PIE使用中断向量更新PIVR寄存器。中断软件,中断软件有两级响应,包括GISR和SISR。208.4通用定时器8.4.1通用定时器概述每个事件管理模块有两个通用定时器(GP),这些定时器可以为下列应用提供独立的时间基准:控制系统中采样周期产生。定时器2为QEP电路和捕获单元的操作提供时间基准。定时器1为比较单元和相应的PWM电路操作提供时间基准。21图8-2/TxCMP22定时器结构如图8-2所示,由图可知,每个定时器包括:一个可读写的16位双向计数器的寄存器TxCNT,它存储了计数器的当前值,并根据计数方向进行增计数或减计数。一个可读写的16位定时器比较寄存器TxCMPR。一个可读写的16位定时器周期寄存器TxPR。一个可读写的16位定时器控制寄存器TxCON。时钟预定标器。控制和比较逻辑。一个GP定时器比较输出引脚,TxCMP。输出条件逻辑。其他全局控制寄存器23通用定时器的输入包括:内部CPU时钟。外部时钟TCLKINA/B,最高频率是CPU时钟频率的1/4。方向输入TDIRA/B,控制通用定时器增/减计数。复位信号RESET。24通用定时器的输出包括:通用定时器比较输出TxCMP(x=1,2,3或4)。到ADC模块的ADC转换启动信号。自身的比较逻辑和比较单元的下溢、上溢、比较匹配和周期匹配信号。计数方向指示位。258.4.2定时器的寄存器1.单个通用定时器控制寄存器TxCON

单个通用定时器的控制寄存器TxCON(x=1,2,3或4)决定一个定时器的操作模式,每个定时器都可对其独立配置。

TxCON(x=1,2,3或4)的映射地址为:7404h(T1CON),7408h(T2CON),7504h(T3CON)和7508h(T4CON)。26TxCON(x=1,2,3或4)各位的定义如下:位15-14Free,Soft。仿真控制位00仿真中断挂起时立即停止01仿真中断挂起时当前定时周期结束后停止10操作不受仿真中断挂起的影响11操作不受仿真中断挂起的影响位13保留。位12-11TMODE1,TMODE0。4种计数模式选择00停止/保持01连续增/减计数模式10连续增计数模式11定向的增/减计数模式27位10-8TPS2-TPS0。输入时钟定标器000x/1100x/16001x/2101x/32010x/4110x/64011x/8111x/128x=CPU时钟频率位7T2SWT1/T4SWT3。(针对T2CON和T4CON)0:使用自身的使能位(TENABLE)1:不用自身的使能位,使用T1CON(EVA)或T3CON(EVB)的使能位来使能或禁止操作,28位6TENABLE

定时器使能与禁止0禁止定时器操作。也就是说,使定时器保持并且使预定标器复位1允许定时器操作位5-4TCLKS1,TCLKSO

时钟源选择00内部时钟01外部时钟10保留11正交编码脉冲电路,只适用于T2CON和T4CON29位3-2TCLD1,TCLD0。定时器比较寄存器重载条件。00计数器的值为0时重载01计数器的值为0或等于周期寄存器的值时重载10立即重载11保留位1TECMPR,定时器比较使能与禁止0禁止定时器比较操作1使能定时器比较操作30位0SELT1PR

,周期寄存器选择0使用自己的周期寄存器1使用T1PR(EVA)或T3PR(EVB)作周期寄存器而忽略自己的周期寄存器。312.全局通用定时器控制寄存器(GPTCONA/B)

全局通用定时器控制寄存器(GPTCONA/B)规定了通用定时器针对不同定时器事件所采取的动作,并指明了它们的计数方向。

GPTCONA映射地址为7400h,GPTCONB的映射地址为7500h,各位的意义与GPTCONA类似。32各位的意义如下:位15保留位位14T2STAT,通用定时器2的状态,只读。0递减计数1递增计数位13T1STAT,通用定时器l的状态,只读。0递减计数1递增计数位12-11保留位。33位10-9T2TOADC,使用通用定时器2启动ADC(模数转换)事件。00无事件启动ADC(模数转换)01设置下溢中断标志来启动ADC(模数转换)10设置周期中断标志来启动ADC(模数转换)11设置比较中断标志来启动ADC(模数转换)位8-7T1TOADC,使用通用定时器1启动ADC(模数转换)事件。00无事件启动ADC(模数转换)01设置下溢中断标志来启动ADC(模数转换)10设置周期中断标志来启动ADC(模数转换)11设置比较中断标志来启动ADC(模数转换)34位6TCOMPOE,比较输出使能,如果PDPINTx有效则该位设置为0。0禁止所有通用定时器比较输出(所有比较输出都置于高阻态)1使能所有通用定时器比较输出位5-4保留位。位3-2T2PIN,通用定时器2比较输出极性00强制低01低有效10高有效11强制高35位1-0T1PIN,通用定时器1比较输出极性00强制低01低有效10高有效11强制高

全局通用定时器控制寄存器GPTCONB的映射地址为7500h,各位的意义与GPTCONA类似。363.通用定时器的比较寄存器(TxCMPR)

比较寄存器中存储与计数器进行比较的值。当发生匹配时,将产生以下事件:根据GPTCONA/B设置的不同,相关的输出发生跳变。相应的中断标志位被置位。若中断未屏蔽,则产生外设中断请求。通用定时器比较寄存器映射地址为7402h(T1CMPR)、7406h(T2CMPR)、7502h(T3CMPR)、7506h(T4CMPR)。

374.通用定时器的周期寄存器(TxPR)

周期寄存器中的值决定了定时器的周期。当周期寄存器的值与定时器计数器的值发生匹配时,通用定时器的操作就停止并保持其当前值,并根据计数器所处的计数方式执行复位或开始递减计数。通用定时器周期寄存器映射地址为7403h(T1PR)、7407h(T2PR)、7503h(T3PR)、7507h(T4PR)。

385.通用定时器的比较和周期寄存器的两级缓存通用定时器的比较寄存器和周期寄存器都是带映射寄存器(影子寄存器)的。在一个周期中的任意时刻,都可以向将一个新值写到这两个寄存器中,但是新值是被写到映射寄存器中。对于比较寄存器来说,仅当TxCON规定的某一个时间发生时,映射寄存器的内容才被加载到工作的比较寄存器中。对于周期寄存器而言,仅当计数寄存器TxCNT的值为0值,映射寄存器的值才被加载到工作的周期寄存器中。注意:初始化周期寄存器,要在计数器被初始化之前进行;当相应的比较操作被禁止时,比较寄存器是透明的,即新值是直接被装进比较寄存器的。

398.4.3通用定时器计数操作每个GP定时器有四种可选的操作模式:停止/保持模式连续递增计数模式定向增/减计数模式连续增/减计数模式40

相应的定时器控制寄存器TxCON[12-11]位的决定了通用定时器的操作模式。TxCON[6]位为定时器的使能位。1.停止/保持模式(00)此种模式,通用定时器的操作停止并保持其当前状态,定时器的计数器、比较输出和预定标计数器都保持不变。412.连续递增计数模式(10)此种模式,通用定时器将按照已定标的输入时钟计数,直到定时器计数器的值和周期寄存器的值匹配为止。产生周期匹配之后在下一个输入时钟的上升沿,定时器复位为0,开始另一个计数周期。42

在产生周期匹配的下一个CPU时钟周期后,周期中断被置位,产生一个中断请求,也可作ADC转换启动信号。定时器变成0的一个CPU时钟周期之后,定时器的下溢中断标志被置位,也可向发出一个ADC启动信号。定时器计数到FFFFh后,定时器的上溢标志在一个CPU时钟周期之后被置位。43

定时器初值可以是0000h-FFFFh之间的任何值。如果初值大于周期寄存器的值时,定时器将计数到FFFFh后复位为0,然后从0开始继续计数。如果初值等于周期寄存器的值时,周期中断标志被置位,定时器复位为0,下溢中断标志被置位,然后从0开始继续计数。本工作模式的工作示意如图8-3所示。本模式特别适于边沿触发或非对称PWM波形产生,也适于电机和运动系统的采样周期。44图8-3连续增计数模式453.定向的增/减计数模式(11)此种模式,定时器将根据TDIRA/B引脚的输入,对定标的时钟进行递增或递减计数。如图8-4所示。图8-4定向的增/减计数模式46

周期、下溢、上溢中断标志位、中断以及相应的事件都由各自的匹配产生,其产生方式与连续递增计数模式一样。定时器2和4的本模式可用于正交编码脉冲电路,在这种情况下,正交编码脉冲电路为定时器2和4提供计数时钟和方向,也可用于运动/电机控制和电力电子设备应用中的外部事件定时。474.连续增/减计数模式(01)此种模式与定向的增/减计数模式一样,但是在本模式下,引脚TDIRA/B的状态对计数的方向没有影响。定时器的计数方向仅在定时器的值达到周期寄存器的值时(或FFFFh,如果初始定时器的值大于周期寄存器的值),才从递增计数变为减计数。定时器的计数方向仅当计数器的值为0时才从减计数变为增计数。如图8-5所示。本模式特别适于对称PWM波形产生。48图8-5连续增/减计数模式496.4.4通用定时器比较操作GP定时器的值连续地与相应的比较寄存器的值比较,当两个值相等时,就会发生比较匹配,可通过对TxCON[1]置1来使能比较操作。比较操作使能后,当发生比较匹配时,会发生以下情况:

1.比较中断标志置1。

2.根据GPTCONA/B寄存器相应位的配置情况,相应的PWM输出将发生跳变。

3.如果用于启动ADC,则产生一个ADC启动信号。501.PWM输出转换

PWM输出跳变由一个非对称和对称的波形发生器和相应的输出逻辑控制,并且依赖于以下条件:GPTCONA/B寄存器中相应位的定义。定时器所处的计数模式。在连续增/减计数模式下的计数方向。512.非对称和对称波形发生器非对称和对称波形发生器依据通用定时器所处计数模式,产生一个非对称和对称的PWM波形输出。3.非对称波形的发生在连续增计数模式时,通用定时器会产生一个非对称波形的PWM脉冲,如图8-6所示。52图8-6连续增计数方式下的通用定时器比较/PWM输出534.对称波形的发生在连续增/减计数模式时,通用定时器会产生对称波形,如图8-7所示。图8-7连续增/减计数方式下的通用定时器比较/PWM输出545.输出逻辑输出逻辑可进一步调节波形发生器的输出,以生成最终的PWM波形输出,来控制各种不同类型的功率设备。PWM输出可通过配置GPTCONA/B寄存器的相应位来设置高电平有效、低电平有效、强制高电平或强制低电平。当PWM输出设置为高电平有效时,它的极性与波形发生器的输出极性相同。当PWM输出设置为低电平有效时,极性相反。GPTCONA/B寄存器的相应位设定后,PWM输出也可被强制为高电平或低电平。PWM信号是脉冲宽度根据某一寄存器的值的变化而变化的脉冲序列。555.有效时间计算连续增计数模式有效时间=T×(TxPR-TxCMPR+1)连续增/减计数模式有效时间=T×(TxPR-TxCMPRup+TxPR-TxCMPRdn)568.4.5通用定时器的PWM输出

为了设置通用定时器以产生PWM输出,需做以下工作:根据预定的PWM(载波)周期设置TxPR。设置TxCON寄存器以确定计数模式和时钟源,并启动PWM输出操作。将对应于PWM脉冲的在线计算宽度(占空比)的值加载到TxCMPR寄存器中。578.3.6通用定时器的复位当任何复位事件发生时,将发生以下情况:GPTCONA/B寄存器中除计数方向指示位外,所有与通用定时器相关的位都被复位为0,因此所有通用定时器的操作都被禁止,计数方向指示位都置成1。所有的定时器中断标志位均被复位为0。所有的定时器中断屏蔽位都被复位为0,因此所有通用定时器的中断都被屏蔽。所有通用定时器的比较输出都被置为高阻态。588.3.7通用定时器的中断实现用通用定时器1产生1ms的延时中断服务。外部输入时钟为6MHz,经DSP内部锁相环4倍频为24MHz,通用定时器1预定标因子为64,所以计算出延时1ms的周期寄存器的值为0176h。程序如下:598.4比较单元8.4.1比较单元概述事件管理器EVA模块和EVB模块中分别有3个全比较单元,每个比较单元都有两个相应的PWM输出。比较单元的时基由通用定时器1(EVA模块)和通用定时器3(EVB模块)提供。60

每个全比较单元输出一对PMW信号,具有死区控制和空间向量PWM模式的输出功能。定时器中的每个比较单元只能输出一路PWM信号,并且不具有死区控制和空间向量PWM模式的输出功能。空间向量PWM指的是一个三相功率变换器中六个功率三极管的一种特殊的开关电路,可使三相交流电机绕组产生的电流的谐波失真最小,还提供了比正弦调制方式更有效的供电电压的使用。61每个事件管理器模块的比较单元包括:3个16位的比较寄存器(对于EVA模块为CMPRl、CMPR2和CMPR3,对于EVB模块为CMPR4,CMPR5和CMPR6),它们各带一个相应的映像寄存器(可读/写)。一个16位的比较控制寄存器(对于EVA模块为COMCONA,对于EVB模块为COMCONB),该寄存器为可读写的。一个16位的动作控制寄存器(对于EVA模块为ACTRA,对于EVB模块为ACTRB),它们各带一个相应的映像寄存器(可读/写)。6个PWM(三态)输出(比较输出)引脚。控制和中断逻辑。62比较单元的功能结构图如图8-8所示。图8-8比较单元功能结构图63648.4.2比较单元寄存器1.比较控制寄存器(COMCONA和COMCONB)

比较单元的操作由比较控制寄存器(COMCONA和COMCONB)控制,它们均是可读写的。比较控制寄存器COMCONA的映射地址为7411h。

COMCONA各位描述如下:位15CENABLE,比较使能位0禁止比较操作,所有映像寄存器(CMPRx和ACTRA)为透明。1使能比较操作65位14-13CLD1,CLD0,比较寄存器CMPRx重载条件。00当T1CNT=0时(下溢)时重载01当T1CNT=0或当T1CNT=T1PR时(下溢或周期匹配)重载10立即重载11保留,结果不可预测位12SVENABLE,空间向量PWM模式使能。0禁止空间向量PWM模式1使能空间向量PWM模式66位11-10ACTRLD1,ACTRLD0,动作控制寄存器重载条件00当T1CNT=0时(下溢)时重载01当T1CNT=0或当T1CNT=T1PR时(下溢或周期匹配)重载10立即重载11保留位9FCOMPOE,比较输出使能位,有效的PDPINTA会使该位清00PWM输出引脚为高阻态,即比较输出被禁止1PWM输出引脚处于非高阻态,即比较输出被使能67位8PDPINTA的状态位,该位反映PDPINTA引脚的当前状态。位7-0保留位。

比较控制寄存器COMCONB映射地址为7511h,各位定义与COMCONA类似。682.比较动作控制寄存器(ACTRA和ACTRB)比较动作控制寄存器(ACTRA和ACTRB)控制6个比较输出引脚的动作。比较动作控制寄存器ACTRA映射地址为7413h,各位描述如下:位15SVRDIR,空间向量PWM旋转方向位,仅用于产生空间向量PWM输出。0正向(CCW)1负向(CW)69位14-12D2-D0,基本的空间向量位,仅用于产生空间向量PWM输出。位11-10CMP6ACT1-0,比较输出引脚PWM6上的比较输出方式选择。00强制低01低有效10高有效11强制高位9-8CMP5ACT1-0,比较输出引脚PWM5上的比较输出方式选择。00强制低01低有效10高有效11强制高70位7-6CMP4ACT1-0,比较输出引脚PWM4上的比较输出方式选择。00强制低01低有效10高有效11强制高位5-4CMP3ACT1-0,比较输出引脚PWM3上的比较输出方式选择。00强制低01低有效10高有效11强制高71位3-2CMP2ACT1-0,比较输出引脚PWM2上的比较输出方式选择。00强制低01低有效10高有效11强制高位1-0CMP1ACT1-0,比较输出引脚PWM1上的比较输出方式选择。00强制低01低有效10高有效11强制高

比较动作控制寄存器ACTRB映射地址为:7513h,各位描述与ACTRA类似。728.4.3比较单元的复位

当任何复位事件发生时,所有与比较单元相关的寄存器都复位为0,且所有比较输出引脚被置为高阻态。738.5PWM电路及PWM信号的产生8.5.1PWM信号

PWM信号是脉冲宽度根据某一寄存器的值的变化而变化的脉冲序列。这些脉冲在一系列固定长度的周期内展开,以确保每个周期内有一个脉冲。这个固定的周期称为PWM载波周期。在电机控制系统中,PWM信号用来控制开关电源器件的开关时间,为电机绕组提供所需的能量,控制电机所需转速和转矩。741.PWM信号产生

用一个定时器重复产生与PWM周期相同的计数周期,一个比较寄存器保持着调制值。计数器的值不断的与比较值进行比较,当发生比较匹配的时候,在相应的输出引脚上会产生一个跳变。当两个值产生第二个匹配或定时器的周期结束时,输出引脚上会产生又一个跳变。利用此法,输出脉冲的开关时间会与比较寄存器的值成比例。752.死区

在许多的运动/电机控制和功率电子应用场合中,两个功率器件(上级和下级)被串联在一个功率支路中,为避免击穿失效,两个器件的打开的周期不能重叠,在一个三极管的关断和另一个三极管导通之间经常要插入一个死区,这段时间延迟允许一个三极管在另一个三极管导通之前完全关断。768.5.2用事件管理器产生PWM输出

三个比较单元中的每一个都可与事件管理器的GP定时器、死区单元和输出逻辑一起,产生一对可编程死区和输出极性的PWM输出。对于每个EV模块中的三个比较单元,共有六个专用的PWM输出引脚,这六个输出引脚可用来控制三相交流感应电机或无刷直流电机。778.5.3与比较单元相关的PWM电路

EVA模块的PWM电路功能结构图如图8-9所示,它包括以下功能单元:非对称/对称波形发生器;可编程的死区单元(DBU);输出逻辑;空间向量(SV)PWM状态机。78图8-9EVA模块的PWM电路功能结构图79808.5.4死区单元及其控制

死区波形图如图8-10所示,对于一个输入信号PHx,会产生两个输出信号DTPHx和DTPHx_。图8-10死区波形图81死区定时器控制寄存器

死区单元的操作是由死区定时器控制寄存器(DBTCONA和DBTCONB)来控制的。DBTCONA映射地址为7415h,各位描述如下:位15-12

保留。位11-8DBT3-DBT0。死区定时器周期,规定了3个4位死区定时器的周期值。位7EDBT3。死区定时器3使能位(对应PWM5和PWM6)0禁止1使能82位6EDBT2。死区定时器2使能位(对应PWM3和PWM4)0禁止1使能位5EDBT1。死区定时器1使能位(对应PWM1和PWM2)0禁止1使能83位4-2DBTPS2-DBTPS0。死区定时器的预定标器。000x/1001x/2010x/4011x/8100x/16101x/32110x/32111x/32x为CPU时钟频率位1-0

保留。

DBTCONB映射地址为7515h,各位的意义和DBTCONA的相应位意义一致。848.5.5非对称和对称的PWM产生EV模块中的每个比较单元均可产生非对称和对称的PWM波形。另外这三个比较单元一起产生三相对称空间向量PWM输出。用GP定时器产生PWM输出已介绍,下面仅介绍用比较单元产生PWM。851.PWM产生的寄存器设置

用比较单元和相应的电路产生所有三种PWM波形均需要对相同的EV寄存器进行配置。配置过程需要以下步骤:设置和装载TxPR寄存器设置和装载ACTRx寄存器如需死区,则设置和装载DBTCONx寄存器初始化CMPRx寄存器设置和装载COMCONx寄存器设置和装载T1CON或T3CON寄存器,来启动比较操作更新CMPRx寄存器的值对称,非对称,三相对称空间向量PWM862.非对称PWM波形产生

用一个比较单元产生一个非对称的PWM波形。见下页图。GP定时器1必须设置为连续递增计数模式,其周期寄存器必须载入一个与所需的PWM载波周期相对应的值,然后设置COMCONA使能比较操作,设置选定的输出引脚为PWM输出,且使能输出。如果使能了死区操作,那么必须向DBTCONA[11~8]中的DBT[3~0]位写入相应的值,这个值将作为死区定时器的周期。87图8-12非对称PWM波的产生882.对称的PWM波形产生

对称的PWM波形的特点是其调制脉冲关于PWM周期中心对称的。用一个比较单元产生一个对称的PWM波形与产生一个非对称的PWM波形的过程是相似的,唯一不同的是产生对称PWM波形时,通用定时器1应该被设置成连续增/减计数模式。89图8-13对称PWM波的产生908.5.6PWM波形产生举例

F2407总共有12路与全比较单元相关的PWM输出,在此使用EVB模块,在PWM7~PWM12引脚上,输出占空比不同的方波,奇数引脚输出方式为低有效,偶数引脚输出方式为高有效。采用通用定时器3产生比较值。

程序如下:91*8.6空间向量PWM8.6.1空间向量PWM理论概述空间向量PWM指的是一个三相功率变换器中六个功率三极管的一种特殊的开关电路,可使三相交流电机绕组产生的电流的谐波失真最小,还提供了比正弦调制方式更有效的供电电压的使用。921.三相功率反相换流器典型的三相功率反相换流器的结构如图8-14所示。

图8-14三相交流反相换流器原理图93

图中Va、Vb和Vc是提供给电动机绕组的电压。六个功率三极管由DTPHx和DTPHx_(x=a、b和c)控制当上部的三极管导通时(DTPHx=1),下部的三极管关断(DTPHx_=0)。这样,通过上部三极管的开关状态(QI、Q34和Q5)或者等效地说,DTPHx(x=a、b和c)的状态,就可以计算出提供给电动机的电压Uout。942.功率反相换流器的开关模式和基本空间

向量当一个支路中的上部三极管导通时,由支路提供给电动机绕组的电压Vx(x=a、b或c)等于供电电压Uab,当三极管关断时,提供的电压为0。上部三极管(DTPHx,x=a、b或c)的开关切换有8种可能的组合方式。这些组合方式和由之导出的电动机拉直流供电电压Udc确定的线电压和相电压如表8-14所示。注意a、b和c分别代表DTPHa,DTPHb和DTPHc的值。95

通过进行一个d-q变换,可以把对应与8种组合方式的相电压映射到—个d-q平面上。这等效于把三个向量(abc)的正交投影映射到垂直子向量(1,1,1)的二维平面上,即d-q平面上,这就产生6个非零向量和两个零向量。两个零向量位于原点。这8个向量叫做基本空间向量。96

基本空间向量近似地给出了电机的电压向量。相邻两个向量的二进制表示只有一位不同,当开关模式变化时,只有一个上级三极管改变开关状态。图8-15开关模式和基本空间向量973.用基本空间向量估算电机电压可平衡三级管的开关周期和功率损耗。988.7捕获单元

捕获单元可以记录捕捉输入引脚上跳变的时刻。每个事件管理器有3个捕获单元。

EVA:CAP1、CAP2、CAP3EVB:CAP4、CAP5、CAP699每一个事件管理器模块的捕捉单元包括如下特性:1个可读/写的16位捕捉控制寄存器CAPCONx(x=A或B)。1个16位的捕捉FIFO状态寄存器CAPFIFOx(x=A或B)可以选择通用定时器1/2(EVA)或者3/4(EVB)作为时间基准。3个16位2级深度的FIFO堆栈(CAPxFIFO,x=1~3或者4~6),每个对应一个捕获单元。100

当在捕获输入引脚CAPx上检测到一个设定的跳变时,GP定时器的值被捕获并存储在相应的2级深度FIFO堆栈中。图8-16是一个EVA的捕获单元原理框图,EVB的捕获单元原理框图与EVA一样,仅寄存器不同。101图8-16EVA捕获单元原理框图1023个施密特触发器输入引脚(对于EVA,CAPl/2/3;对于EVB,CAP4/5/6),每个捕获单元一个输入引脚(所有的输入和内部CPU时钟同步,为使跳变被捕获,输入必须在当前电平保持两个CPU时钟周期。输入引脚CAP1/2和CAP4/5也可用作正交编码器脉冲电路的正交编码器脉冲输入)。用户可定义跳变检测方式(上升沿,下降沿或二者)3个可屏蔽的中断标志位,每个标志位对应一个捕获单元。1038.7.2捕获单元的操作

在捕获单元使能后,相应输入引脚上的指定跳变会将所选的通用定时器的计数值装入到相应的FIFO堆栈。同时,如果有一个或更多有效的捕获值保存在FIFO堆栈(CAPFIFOx相应状态位不等于0)中,则相应的中断标志位被置1。如果该个断标志没有被屏蔽,产生一个外设中断请求。每当将捕获到的新计数值存入到FIFO堆栈时,CAPFIFOx的相应状态位被调整以反映FIFO堆栈的新状态。1041.捕获单元时间基准的选择

对EVA模块,与CAP1和CAP2不同,捕获单元CAP3有白己独立的时基选择位,这就允许同时使用2个通用定时器,CAP1和CAP2共用一个,而CAP3单独使用一个。在EVB模块,CAP6有自己独立的时基本选择位。捕获操作不影响与任何GP定时器对应的任何GP定时器操作或比较/PWM操作。1052.捕获单元的设置

为使捕获单元能正常工作,需对寄存器进行以下设置:初始化捕获FIFO状态寄存器(CAPFIFOx),清除专用状态位。设置选定的GP定时器为期望的操作模式。如果需要,设置相应的GP定时器比较寄存器或GP定时器周期寄存器。设置相应的CAPCONA或CAPCONB。1068.7.3捕获单元寄存器

捕获单元的操作由4个16位的控制寄存器CAPCONA/B和CAPFIFOA/B控制。因为捕获电路的时间基准是由GP定时器1/2或3/4提供的,所以TxCON(x=1,2,3或4)寄存器也用于控制捕获单元的操作。1071.捕获控制寄存器CAPCONx

捕获控制寄存器A(CAPCONA),映射地址:7420h。CAPCONA各位的意义:位15CAPRES。捕获复位,该位只能写,任何读的结果均为0。向位15写0将清除所有的捕获和QEP寄存器。但是,使能捕获功能时不需要向位15写1。0所有捕获单元和正文编码脉冲电路的寄存器清01无动作108位14-13CAPQEPN。捕获单元1和2的控制位。00禁止捕获单元1和2,FIFO堆栈保持原内容01使能捕获单元1和210保留11保留位12CAP3EN。捕获单元3控制位。0禁止捕获单元3,其FIFO堆栈保持原内容1使能捕获单元3位11保留位。位10CAP3TSEL。捕获单元3的通用定时器选择位。0选择通用定时器21选择通用定时器1109位9CAP2TSEL。捕获单元1和2的通用定时器选择位。0选择通用定时器21选择通用定时器1位8CAP3TOADC。捕获单元3事件启动ADC转换位:0无操作1当CAP3INT标志位被置位时,启动ADC模数转换位7-6CAP1EDGE。捕获单元1的边沿检测控制位。00无检测01检测上升沿10检侧下降沿11上升沿、下降沿均检测110位5-4CAP2EDGE。捕获单元2的边沿检测控制位。00无检测01检测上升沿10检侧下降沿11上升沿、下降沿均检测位3-2CAP3EDGE。捕获单元3的边沿检测控制位。00无检测01检测上升沿I0检侧下降沿11上升沿、下降沿均检测位1-0保留位。111捕获控制寄存器B(CAPCONB),映射地址:7520h。CAPCONB与CAPCONA各位的意义相同。1122.捕获FIFO状态寄存器CAPFIFOx中包括3组捕获单元FIFO堆栈的状态位。如果CAPFIFOx的状态位正在更新的同时(因为一个捕获事件)向CAPFIFOx状态位写数据,写数据优先。113

捕获FIFO状态寄存器A(CAPFIFOA),映射地址:7422h捕获FIFO状态寄存器A(CAPFIFOA)各位的意义如下:位15-14保留位。位13-12CAP3FIFO。捕获单元3的FIFO状态位00空01有一个输入10有两个输入11有两个输入并又捕获到一个,第一个输入已丢失。114位11-10CAP2FIFO。捕获单元2的FIFO状态位00空01有一个输入10有两个输入11有两个输入并又捕获到一个,第一个输入已丢失。位9-8CAP1FIFO。捕获单元1的FIFO状态位00空01有一个输入10有两个输入11有两个输入并又捕获到一个,第一个输入已丢失。位7-0保留位。115

捕获FIFO状态寄存器B(CAPFIFOB),映射地址:7522h与捕获FIFO状态寄存器A(CAPFIFOA)各位的意义相同。1168.7.4捕获单元FIFO堆栈每个捕获单元有一个2级深度FIFO堆栈。任何一个FIFO堆栈的顶部寄存器都是只读寄存器,它保存着相应的捕获单元捕获的旧计数器值。因此,对FIFO堆栈的一个读访问总是读出捕获到堆栈中的旧计数器值。当位于FIFO堆栈顶部寄存器中的计数器值被读出时,FIFO堆栈底部寄存器的新计数器值(如果有的话)就会被压入顶部寄存器。顶部寄存器(存旧值)底部寄存器(存新值)进出图8-172级深度FIFO堆栈示意图117如果读取了顶部寄存器的值,那么捕获FIFO状态寄存器的相应位将发生变化。如果读取前捕获FIFO状态寄存器的相应位为10或11,则读取后变成为01,即堆栈中只有一个值。如果读取前捕获FIFO状态寄存器的相应位为01,则读取后变成为00,即堆栈为空。118(1)第1次捕获当捕获单元的输入引脚出现一个指定的跳变时,选定的GP定时器的计数器值就会被捕获,如果堆栈是空的,这个计数器值就会被保存到FIFO堆栈的顶部寄存器。同时,相应的状态位被设置为01。如果另外一个捕获发生之前对FIFO堆栈进行了读访问,则FIFO状态位被复位为00。119(2)第2次捕获如果在以前的捕获的计数值被读取之前,又发生一次捕获,那么捕获的计数器值就会进入底部寄存器。同时,寄存器中相应的FIFO状态位被置为10。当在另外一次捕获之的读FIFO堆栈时,顶部寄存器中的旧计数器值被读出,底部寄存器中的新计数器值被压入顶部寄存器,相应的状态位设置为01。120(3)第3次捕获当FIFO堆栈中已有两个计数器值,这时如果又有一个捕获发生,堆栈顶部寄存器中最旧的计数器值被推出并且丢失,然后堆栈底部寄存器的计数器值被向上一次压入到顶部寄存器,新捕获的计数器值被写入底部寄存器,并巳状态位设置为11,表明一个或更多的旧计数器值被丢失。1218.7.5捕获中断当一个捕获单元执行了一次捕获,且FIFO中至少有一个捕获到的计数值时(CAPFIFOx相应状态位不为0),则相应的中断标志位置1。如果该中断没有被屏蔽,则会产生一个外设中断请求信号。如果使用了捕获中断,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论