Quantcast
Channel: Microcontrollers
Viewing all articles
Browse latest Browse all 227237

Forum Post: TMS320F28379D: Trip Zone ISR Not Being Entered But PWM Action Is Being Fullfilled

$
0
0
Part Number: TMS320F28379D Hello, I am setting up a trip zone interrupt from a GPIO via Xbar and the PWM is able to respond to a trip event, but the ISR I wrote is not being entered. When I removed my interrupt name from the PieVectTable (e.g. commenting out the line: PieVectTable.EPWM1_TZ_INT = TripZoneISR), the Default ISR is reached so I believe I have the interrupt set up properly, but I am missing something small detail. Here is my config: EALLOW; PieVectTable.EPWM1_TZ_INT = TripZoneFault; InputXbarRegs.INPUT1SELECT = 38; EDIS; // Enable CPU INT2 which is connected to EPWM1-3 INT: IER |= M_INT2; // Enable EPWM INTn in the PIE: Group 3 interrupt 1-3 PieCtrlRegs.PIEIER2.bit.INTx1 = 1; PieCtrlRegs.PIEIER2.bit.INTx2 = 1; EALLOW; CpuSysRegs.PCLKCR0.bit.TBCLKSYNC =0; EDIS; //trip zone select and action EALLOW; EPwm1Regs.TZSEL.bit.CBC1 = 1; EPwm1Regs.TZCTL.bit.TZA = TZ_FORCE_HI; EPwm1Regs.TZEINT.bit.CBC = 1; EPwm1Regs.TZCLR.bit.INT = 1; EDIS; EALLOW; CpuSysRegs.PCLKCR0.bit.TBCLKSYNC =1; EDIS; then I have an ISR elsewhere, interrupt void TripZoneISR(void) { //code } I put a breakpoint inside the TripZoneISR and it is never reached even when the trip event occurs. In my program, I have other interrupts that function properly by assigning the PieVectTable values without using the address of the ISR as I have shown before (i.e. PieVectTable.INTx = ISR versus PieVectTable.INTx = &ISR) but I see other examples typically use the address of the ISR. I suppose sides question are, how can my other interrupts work without the address of the ISR (i.e. PieVectTable.ADCA1_INT = anotherISR), whether this is the root of my problem for the trip zone ISR, and what the difference between the two is?

Viewing all articles
Browse latest Browse all 227237

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>