[FAQ] TMS320F28379D:如何触发对CMPA和CMPB事件的ePWM中断?

零件号:TMS320F28379D

问:如何触发CMPA和CMPB事件中断?没有选项可以选择CMPA和CMPB来触发ePWM模块中断,这可以实现吗?

答:可以的。最有效的方法是使用两个ePWM模块,让这两个模块同步,并链接CMPx和TBPRD寄存器,从而使两个ePWM模块产生相同的波形。然后,您可以设置第一个ePWM模块在CMPA发生中断,第二个ePWM模块在CMPB发生中断。

以下示例说明了ePWM1和ePWM2实现此目的的过程。

同样可以触发对CMPx的递增计数和递减计数的ePWM中断。必须对代码进行微小更改,如:将TB模式改为UP/DOWN,必须发生中断源事件。

上述代码使ePWM1和ePWM2产生相同的波形。两个模块的TBPRD、CMPA和CMPB是相互关联的,因此写入ePWM1的CMPA也将对ePWM2产生相同的影响。

ePWM1和ePWM2相同的输出

GPIO6和GPIO7在中断时切换