工具与软件:
您好!
我使用四个 IO 作为 EPWM4、EPWM5和 EPWM6的跳闸信号。
我有一个为 XINT4配置的额外 IO、其中在 XINT4 ISR 中、我将禁用这些相同的 ePWM 通道(4、5、6)。
我看到一个问题、即在 XINT4 ISR 开始时(我设置一个断点)、ePWM 通道被关闭/跳闸 。 代码、那么应该会将其关闭。
ISR:
__interrupt void xint4_isr(void){
EPWM_forceTripZoneEvent(EPWM4_BASE, EPWM_TZ_FORCE_EVENT_OST); EPWM_forceTripZoneEvent(EPWM5_BASE, EPWM_TZ_FORCE_EVENT_OST); EPWM_forceTripZoneEvent(EPWM6_BASE, EPWM_TZ_FORCE_EVENT_OST);
Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP1);}
我在首次调用 EPWM_forceTripZoneEvent 时设置了断点。 当我强制 XINT4中断时、它会在断点处停止、但所有 ePWM 通道都已关闭。
我使用来配置它
XBAR_setInputPin (XBAR_Input1131);
XBAR_setInputPin (XBAR_INPUT2、24);
XBAR_setInputPin (XBAR_INPUT3、27);
XBAR_setInputPin (XBAR_INPUT4、60);
XBAR_setEPWMMuxConfig (XBAR_TRIP4、XBAR_EPWM_MUX01_INPUTXBAR1);
XBAR_setEPWMMuxConfig (XBAR_TRIP4、XBAR_EPWM_MUX03_INPUTXBAR2);
XBAR_setEPWMMuxConfig (XBAR_TRIP4、XBAR_EPWM_MUX05_INPUTXBAR3);
XBAR_setEPWMMuxConfig (XBAR_TRIP4、XBAR_EPWM_MUX07_INPUTXBAR4);
XBAR_ENABLEEPWMMux (XBAR_TRIP4、XBAR_MUX01 | XBAR_MUX03 | XBAR_MUX05 | XBAR_MUX07);
EPWM_setTripZoneAction (EPWM4_BASE、EPWM_TZ_ACTION_EVENT_TZA、EPWM_TZ_ACTION_LOW);
EPWM_setTripZoneAction (EPWM4_BASE、EPWM_TZ_ACTION_EVENT_TZB、EPWM_TZ_ACTION_LOW);
EPWM_enableTripZoneSignals (EPWM4_BASE、EPWM_TZ_SIGNAL_DCAEVT1);
EPWM_selectDigitalCompareTripInput (EPWM4_BASE、EPWM_DC_TRIPIN4、EPWM_DC_TYPE_DCAH);
EPWM_setTripZoneDigitalCompanyEventCondition (EPWM4_BASE、EPWM_TZ_DC_OUTPUT_A1、EPWM_TZ_EVENT_DCXH_HIGH);
EPWM_setDigitalCompareEventSyncMode (EPWM4_BASE、EPWM_DC_MODULE_A、EPWM_DC_EVENT_1、EPWM_DC_EVENT_INPUT_NOT_SYNCK);
EPWM_setTripZoneAction (EPWM5_BASE、EPWM_TZ_ACTION_EVENT_TZA、EPWM_TZ_ACTION_LOW);
EPWM_setTripZoneAction (EPWM5_BASE、EPWM_TZ_ACTION_EVENT_TZB、EPWM_TZ_ACTION_LOW);
EPWM_enableTripZoneSignals (EPWM5_BASE、EPWM_TZ_SIGNAL_DCAEVT1);
EPWM_selectDigitalCompareTripInput (EPWM5_BASE、EPWM_DC_TRIPIN4、EPWM_DC_TYPE_DCAH);
EPWM_setTripZoneDigitalCompanyEventCondition (EPWM5_BASE、EPWM_TZ_DC_OUTPUT_A1、EPWM_TZ_EVENT_DCXH_HIGH);
EPWM_setDigitalCompareEventSyncMode (EPWM5_BASE、EPWM_DC_MODULE_A、EPWM_DC_EVENT_1、EPWM_DC_EVENT_INPUT_NOT_SYNCK);
EPWM_setTripZoneAction (EPWM6_BASE、EPWM_TZ_ACTION_EVENT_TZA、EPWM_TZ_ACTION_LOW);
EPWM_setTripZoneAction (EPWM6_BASE、EPWM_TZ_ACTION_EVENT_TZB、EPWM_TZ_ACTION_LOW);
EPWM_enableTripZoneSignals (EPWM6_BASE、EPWM_TZ_SIGNAL_DCAEVT1);
EPWM_selectDigitalCompareTripInput (EPWM6_BASE、EPWM_DC_TRIPIN4、EPWM_DC_TYPE_DCAH);
EPWM_setTripZoneDigitalCompanyEventCondition (EPWM6_BASE、EPWM_TZ_DC_OUTPUT_A1、EPWM_TZ_EVENT_DCXH_HIGH);
EPWM_setDigitalCompareEventSyncMode (EPWM6_BASE、EPWM_DC_MODULE_A、EPWM_DC_EVENT_1、EPWM_DC_EVENT_INPUT_NOT_SYNCK);
和
XBAR_setInputPin(XBAR_INPUT13, 63);
GPIO_setInterruptType(GPIO_INT_XINT4, GPIO_INT_TYPE_FALLING_EDGE); GPIO_enableInterrupt(GPIO_INT_XINT4);
当我将 GPIO63/XBAR_INPUT13置位后、您是否看到上述配置中会导致 EPWM4/EPWM5/EPWM6跳闸的任何问题?
谢谢