Counter-compare (CC) module为比较器模块有
CMPCTL (比较控制寄存器)设置CMPA、CMPB的重载模式 CMPAHR(高速PWM用),
CMPA(比较值寄存器A)设置EPWMxA的比较值,有影子寄存器。 CMPB(比较值寄存器B)设置EPWMxB的比较值,有影子寄存器。 本程序只应用了CMPA,设置计数器到零时重载CMPA。 Action-qualifier (AQ) module
16
Action-qualifier (AQ) module比较方式预设模块
AQCTLA (输出A比较方式控制寄存器)设置EPWMA的比较方式有CBD、CBU、CAD、CAU、PRD、ZRO,无影子寄存器,立即装载
AQCTLB (输出B比较方式控制寄存器)设置EPWMB的比较方式有CBD、CBU、CAD、CAU、PRD、ZRO,无影子寄存器,立即装载
AQSFRC (软件强制控制寄存器)设置AQCSFRC重载方式(RLDCSF),通过(OTSFB、ACTSFB)设置EPWMB、(OTSFA、ACTSFA)设置EPWMA启动一次强制置位无效、置零、置高、反向,当OTSFB、OTSFA被写1时,动作一次,写0无效,无影子寄存器
AQCSFRC (软件连续强制控制寄存器)可以强制EPWMA、EPWMB的输出为low或high或AQCSFRC不起作用,有影子寄存器,当寄存期被加载后的第二个时钟开始作用,如TBCLK=0时加载,TBCLK=1时开始起作用
说明:
CBD为TBCTR(计数器)与CMPB在down计数时相等使输出为low或high或反向或不动作
CBU为TBCTR(计数器)与CMPB在up计数时相等使输出为low或high或反向或不动作
CAD为TBCTR(计数器)与CMPA在down计数时相等使输出为low或high或反向或不动作
CAU为TBCTR(计数器)与CMPA在up计数时相等使输出为low或high或反向或不动作
PRD为TBCTR(计数器)与TBPRD(周期寄存器)相等时使输出为low或high或反向或不动作
ZRO为TBCTR(计数器)计到零时使输出为low或high或反向或不动作
注意:以上均是相等时起作用,其它时间不管,只有AQCSFRC(软件连续强制控制寄存器)持续起作用
如同时出现比较则优先级如图
例:CMPA=100,CMPB=100,up计数,EPWMA初始为低,CAU设置高,CBU设置低,当TBCTR计到100时,CAU、CBU同时作用,根据优先级,EPWMA输出低。
当CMPA=100,CMPB=110,其它不变,当TBCTR计到100时,EPWMA输出高,
17
计到110时EPWMA输出低。
本程序只应用了EPWMA输出通过Dead-band (DB) module产生互补的PWM波形。Action-qualifier (AQ) module比较方式预设模块配置如下:AQCTLA (输出A比较方式控制寄存器)的CAU置高,CAD置低,其它无效。在初始化中配置。
AQCSFRC (软件连续强制控制寄存器)通过AQSFRC(软件强制控制寄存器)的RLDCSF配置为TBCTR(计数器)计到零时装载,根据需要每次中断配置CSFA置高、置低或软件连续强制无效。其优先级最高,强制时CAU置高,CAD置低不起作用,无效时CAU置高,CAD置低起作用。
AQSFRC(软件强制控制寄存器)的ACTSFA配置为置低,当本周期软件连续强制无效时,向OTSFA写1,保证有效高周期的起始是低状态,防止上一周期结束时为高。
18
Dead-band (DB) module
Dead-band (DB) module 死区模块
DBCTL(死区控制寄存器)设置S5,S4,S3,S2,S1,S0开关选择的 DBRED(死区上升沿延时)上升沿延时时间 DBFED(死区下降沿延时)下降沿延时时间
本程序的设置为S5=0,S4=0,S3=1,S2=0,S1=1,S0=1;延时时间为5us。EPWMxA= EPWMxA in,EPWMxB为EPWMxA in的反向。
19
Event-trigger (ET) module
Event-trigger (ET) module中断事件模块
ETSEL(中断选择寄存器)使能及事件源选择(SOCA触发ADC转换,SOCB触发ADC转换,中断)
ETPS(中断预设寄存器)xxxCNT记录时间发生次数,当与xxxPRD相等时,发出中断信号,xxxCNT停止计数,当标志为清除时xxxCNT置零重新计数
ETFLG(中断标志寄存器)状态标志位,中断时为1 ETCLR(中断标志清除寄存器)写1清除相应标志位 ETFRC(强制中断寄存器)写1强制相应中断发生
本程序选择SOCA触发ADC转换,TBCTR=0位中断事件源,xxxPRD为1。
2# 大 中 小 发表于 2009-8-9 08:44 只看该作者
This feature enables the ePWM module to be automatically synchronized to the time
base of another
ePWM module. Lead or lag phase control can be added to the waveforms generated by
different ePWM
modules to synchronize them. In up-down-count mode, the TBCTL[PSHDIR] bit configures
the direction of
the time-base counter immediately after a synchronization event. The new direction
is independent of the
direction prior to the synchronization event. The TBPHS bit is ignored in count-up
or count-down modes.
20