TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F28027: EPWM死区设置的问题

Part Number:TMS320F28027

目前在做逆变电源,制作SPWM表的时候发现一个死区设置的问题

首先设置时基计数器值为3060即EPwm2Regs.TBPRD = 3061-1;

CMPA值为2953 死区设置均为120  这里采用CPMA做源,PWMxB的输出是PWMxA的取反

EPwm2Regs.DBFED = 120;
EPwm2Regs.DBRED = 120; 

这个时候发现CPMA(2953)+EPwm2Regs.DBFED(120)+EPwm2Regs.DBRED (120)=3193大于EPwm2Regs.TBPRD 这样导致问题是AB两相输出均不符合要求

这种情况就是占空比接近100% 请问这种情况怎么处理?谢谢!

Green Deng:

所以,你的计数模式应该是向上或者向下计数的。CMPA的时候PWM1A为UP(或者down),ZERO/PRD的时候PWM1A为down(或者UP)。是这样的吗?

这样的话其实是不满足死区设置要求的,你可以看一下技术手册245页的几种死区情况。占空比不是关键,关键是PWMxA的设置。

,

jun liu:

好的  我先看下 谢谢

,

jun liu:

您的意思按中央对齐模式来设置死区就可以了?

,

Green Deng:

额,不太了解中央对齐是啥意思。简单来说,只要不将PWMxA的脉冲的两个边缘贴在周期初或者周期末应该就可以了。

,

jun liu:

您说的是应该这种模式

EPWM这种模式的时候

EPwm2Regs.TBPRD = 1530;   

EPwm2Regs.CMPA.half.CMPA = 1500; //占空比

EPwm2Regs.TBCTL.bit.CTRMODE =TB_COUNT_UPDOWN;

//这里采用CPMA做源,PWMxB的输出是PWMxA的取反 EPwm2Regs.DBCTL.bit.IN_MODE = DBA_ALL;

EPwm2Regs.DBCTL.bit.OUT_MODE =DB_FULL_ENABLE DB_DISABLE;

EPwm2Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;

//设置PWM输出极性,当TB计数到达CMPA时,PWM输出的高低电平确定 EPwm2Regs.AQCTLA.bit.CAU = AQ_SET;//当计数值达到CMPA时PWM模块的动作

EPwm2Regs.AQCTLA.bit.CAD = AQ_CLEAR;

//P57 设置死区, 互补模式下,需要设置死区 EPwm2Regs.DBFED = 120; // 死区设置 TBCLKs

EPwm2Regs.DBRED = 120; //

AB两路波形却是这样

不知道您讲的是哪种方法?能否把代码或者波形图贴出来?不然我自己还要走弯路,麻烦理论验证后波形图贴出来,谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28027: EPWM死区设置的问题
分享到: 更多 (0)