主题中讨论的其他器件:TIDM-DC-DC-BUCK、 TIDM-02000
您好、团队正在为客户寻求一些信息
尝试实现 F28379D 模拟比较器模块中可用的内置斜坡补偿块。 我不确定如何选择 RAMPDECVALS 和 RAMPMAXREFS 寄存器的值。 根据我的理解、RAMPMAXREF 的值等于基准电流值、RAMPDECVALS 等于斜坡的幅度。 由于参考手册中对这些器件的解释不清楚、我无法正确理解这些器件。 因此、如果您可以提供一些有关它的参考资料、这将对我非常有帮助。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、团队正在为客户寻求一些信息
尝试实现 F28379D 模拟比较器模块中可用的内置斜坡补偿块。 我不确定如何选择 RAMPDECVALS 和 RAMPMAXREFS 寄存器的值。 根据我的理解、RAMPMAXREF 的值等于基准电流值、RAMPDECVALS 等于斜坡的幅度。 由于参考手册中对这些器件的解释不清楚、我无法正确理解这些器件。 因此、如果您可以提供一些有关它的参考资料、这将对我非常有帮助。
您好、Han、
F2837x 器件具有4类 PWM、从图中可以看出、使用动作限定符子模块时、在未使用跳闸区域模块的情况下会生成 ePWM 波形图(如果我错了、请纠正我的错误)。 但是、当他们尝试在硬件中实现它时、它无法正常工作。 我还遵循以下信息进行实施。
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcont
我们已附上 ePWM 模块代码供您观察。
codes:
void InitEPwm6Example()
{
EALLOW;
EPwm6Regs.TBCTL.bit.PRDLD = TB_SHADOW;
EPwm6Regs.TBCTL.bit.CTRMODE =TB_COUNT_UP;
EPwm6Regs.TBPRD = EPWM6_TIMER_TBPRD;
EPwm6Regs.TBCTL.bit.PHSEN = TB_DISABLE;
EPwm6Regs.TBPHS.bit.TBPHS = 0x0000;
EPwm6Regs.TBCTR = 0x0000;
EPwm6Regs.TBCTL.bit.CLKDIV = TB_DIV1;
EPwm6Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1;
EPwm6Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
EPwm6Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO;
EPwm6Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE;
EPwm6Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;
EPwm6Regs.DBFED.bit.DBFED = 0;
EPwm6Regs.DBRED.bit.DBRED = 0;
EPwm6Regs.AQCTLA.bit.ZRO = AQ_SET;
EPwm6Regs.AQTSRCSEL.bit.T1SEL = 1;
EPwm6Regs.AQCTLA2.bit.T1U =0x1;
EPwm6Regs.TZSEL.bit.DCAEVT2 = 0;
//EPwm6Regs.EPwm6Regs.DCACTL.bit.EVT2SRCSEL =1;
EPwm6Regs.DCACTL.bit.EVT2FRCSYNCSEL =1;
EPwm6Regs.DCFCTL.bit.SRCSEL = 1;
EPwm6Regs.DCFCTL.bit.BLANKE = 1;
EPwm6Regs.DCFCTL.bit.BLANKINV = 0;
EPwm6Regs.DCFCTL.bit.PULSESEL = 1;
//EPwm6Regs.TZCTL2.bit.ETZE=1;
//EPwm6Regs.TZCTL2.bit.TZAU=2;
EPwm6Regs.TZCLR.bit.CBCPULSE=1;
EPwm6Regs.TZCLR.bit.INT = 1;
EPwmXbarRegs.TRIP4MUX0TO15CFG.bit.MUX0 = 0;
EPwmXbarRegs.TRIP4MUXENABLE.bit.MUX0 = 1;
// EPwm6Regs.DCFOFFSET = EPWM6_BLANK_WND_OFFSET;
// EPwm6Regs.DCFWINDOW = EPWM6_BLANK_WND;
EPwm6Regs.ETSEL.bit.INTSEL = 1;//ET_CTR_ZERO; // Select INT on Zero event
EPwm6Regs.ETSEL.bit.INTEN = 1; // Enable INT
EPwm6Regs.ETPS.bit.INTPRD = ET_1ST; // Generate INT on 3rd event
EDIS;
}TZCTL.bit.TZA= 2;
EPwm6Regs.TZDCSEL.bit.DCAEVT2 = 2;
谢谢你。