如果设置了pwm1和pwm2同频率,同时设置了两个pwm的中断,那么中断的执行顺序是怎么的呢?
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.
这个问题描述得不够清楚。
两个EPWM相同频率不一定会在同一时刻产生中断,因此你需要说明它们分别在什么时候(计数过零点ZRO?CMPA up/down?CMPB up/down?计数周期点TBPRD?)产生对应的中断。
如果它们不是同时产生,那么就是先来先到的原则,反之,如果同时产生,由于默认情况下相同类型的中断(特指计数中断,或者TZ中断),EPWM1的优先级高于EPWM2,则前者先执行后者再执行,而如果你配置了优先级且允许中断嵌套,则可以打断。
以上讨论均基于没有中断正在执行的情况,因此还有另外一种情况需提及,即某个其它中断正在执行的过程中,如果没有使能中断嵌套,然后产生了EPWM2的中断,则EPWM2中断需要等待,但如果等待的过程中又产生了EPWM1的中断,则EPWM1中断也需要等待,那么在其它中断执行完成退出时,先执行的中断将会是EPWM1的,而不是先到的EPWM2的,因为前者优先级高。