CpuSysRegs.PCLKCR2.bit.EPWM1=1;
打开EPWM时钟
EALLOW;
ClkCfgRegs.PERCLKDIVSEL.bit.EPWMCLKDIV = 0;
第一步PWM时钟对于系统时钟不分频
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 0;
关闭所有TB时钟
EDIS;
EPwm1Regs.TBCTL.bit.SYNCOSEL = 0;
同步输出信号选择
EPwm1Regs.TBCTL.bit.PHSEN = 0;
同步输出功能开关
EPwm1Regs.TBPHS.all = 0;
同步输出触发时复位偏移量
EPwm1Regs.TBPRD = PWM_TIMER_TBPRD_INIT;
设置TB计数周期
EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN;
决定TB计数模式
EPwm1Regs.TBCTL.bit.CLKDIV = TPWM_KTDIV;
EPwm1Regs.TBCTL.bit.HSPCLKDIV = 0;
决定最终PWM时钟相对于系统时钟是几分频,CLKDIV 和HSPCLKDIV 两个分频系数是相乘关系
EPwm1Regs.TBCTR = 0x0000;
TB计数清零
EPwm1Regs.CMPA.bit.CMPA = PWM_TIMER_TBPRD_INIT>>1;
EPwm1Regs.CMPB.bit.CMPB = PWM_TIMER_TBPRD_INIT>>1;
设置AB两比较寄存器数值
EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
28377D芯片EPWM模块调试记录(1)
最新推荐文章于 2024-07-06 15:59:25 发布
本文详细记录了28377D芯片中EPWM模块的配置过程,包括时钟设置、计数模式、比较寄存器、死区时间以及中断功能的初始化,为EPWM的调试提供了清晰的步骤。
摘要由CSDN通过智能技术生成