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

PWM中断何时触发?

您好:

我用28027做了个案子。在timer0中断使能了epwm2中断,中断时机是count=0,但是通过示波器观察发现,第一次进入中断不是发生在count=0时,而是中断使能后就立即进入epwm2中断了。

测试方法是,在EPWM2中断设置一个引脚配置为高电平,同步观察该引脚和epwmA和epwmB的输出,首次进入中断不是发生在count=0,后续的中断时机就是对的。

我的ewpm2中断设置初始化代码是:

 EPwm2Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;    // EPwm2Regs.ETPS.bit.INTPRD = ET_2ND;      // PieCtrlRegs.PIEIER3.bit.INTx2 = 1; 
 IER |= M_INT3;

在timer0使能中断的方法是:
 EPwm2Regs.ETSEL.bit.INTEN = 1;

请指教,谢谢。

Martin Yu:

PWM2的初始化时的计数器count如何配置的?是初始化为0的吗?

您好:

我用28027做了个案子。在timer0中断使能了epwm2中断,中断时机是count=0,但是通过示波器观察发现,第一次进入中断不是发生在count=0时,而是中断使能后就立即进入epwm2中断了。

测试方法是,在EPWM2中断设置一个引脚配置为高电平,同步观察该引脚和epwmA和epwmB的输出,首次进入中断不是发生在count=0,后续的中断时机就是对的。

我的ewpm2中断设置初始化代码是:

 EPwm2Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;    // EPwm2Regs.ETPS.bit.INTPRD = ET_2ND;      // PieCtrlRegs.PIEIER3.bit.INTx2 = 1; 
 IER |= M_INT3;

在timer0使能中断的方法是:
 EPwm2Regs.ETSEL.bit.INTEN = 1;

请指教,谢谢。

min xiao1:

回复 Martin Yu:

当在timer0的中断程序使能epwm中断时,epwm是一直在运行的。但是我观察首次进入epwm中断的时间点不是在count=0这个时刻。

您好:

我用28027做了个案子。在timer0中断使能了epwm2中断,中断时机是count=0,但是通过示波器观察发现,第一次进入中断不是发生在count=0时,而是中断使能后就立即进入epwm2中断了。

测试方法是,在EPWM2中断设置一个引脚配置为高电平,同步观察该引脚和epwmA和epwmB的输出,首次进入中断不是发生在count=0,后续的中断时机就是对的。

我的ewpm2中断设置初始化代码是:

 EPwm2Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;    // EPwm2Regs.ETPS.bit.INTPRD = ET_2ND;      // PieCtrlRegs.PIEIER3.bit.INTx2 = 1; 
 IER |= M_INT3;

在timer0使能中断的方法是:
 EPwm2Regs.ETSEL.bit.INTEN = 1;

请指教,谢谢。

Martin Yu:

回复 min xiao1:

使能ePWM2中断之前看下寄存器ETFLG的INT位,是否被置1了,是的话先清一下。

赞(0)
未经允许不得转载:TI中文支持网 » PWM中断何时触发?
分享到: 更多 (0)