您好,我在使用epwm模块时配置了EPWM1-5五路,他们的周期是相同的,且都与EPWM1同步(CNT=0时)。对EPWM1配置了一个中断,每三个周期触发一次,在中断函数内对EPWM2-5的AQ进行设置。具体的代码如下:
中断函数的配置,其中利用ConfigEpwm()函数对EPWM2-5的AQ进行设置
ConfigEpwm()函数如下:
目前出现的问题是,如果我把EPWM2的AQ和死区先配置,再配置EPWM3的AQ和死区,就会导致EPWM3、4、5发波不正确,具体的波形如下:(红色是中断函数中的GPIO翻转,以表明进入哪一次中断;黄色和蓝色分别是EPWM3A和EPWM3B。此处只看了EPWM3,此时EPWM4和5的波形和EPWM3一样)
而如果我先配置EPWM2的AQ和EPWM3的AQ,再配置EPWM2的死区和EPWM3的死区。此时可以得到正确的波形,波形如图所示。此时EPWM4和EPWM5的AQ和死区配置的代码可以随意放置顺序都不会出错。