您好,
问题: 因为死区寄存器DBFED =DBRED 是没有Shadow的。而死区更新时刻与TBCTR当前值不做任何关联。即,DBRED DBFED更新时,TBCTR可以是任何值。因此,担心变动死区时,会对驱动逻辑有影响。
测试情况如下:
EPWM配置为AHC模式(Active High, Complementary; OUT_MODE = DB_FULL_ENABLE)。
if(++u16Timer<3000u){
EPwm1Regs.DBFED = EPwm1Regs.DBRED = 0;
GpioDataRegs.GPACLEAR.bit.GPIO18 = 1;}
else{
EPwm1Regs.DBFED = EPwm1Regs.DBRED = 60;
GpioDataRegs.GPASET.bit.GPIO18 = 1;}
实测死区要么为零,要么为60时钟周期。不存在因为死区导致时序混乱的情况,但仍然有些担心。
想请教在其实现原理上来分析,这种担心是否是完全多余的?