Ok, this one is a stumper. I have CPU Timer0 driving a sensor polling loop, but after just a few entries it flat out stops interrupting. I also have a Timer1 loop and *IT* works just fine.
Setup code:
// Enable TIMER 0 interrupt in PIE: Group 1 PieCtrlRegs.PIEIER1.all = M_INT7; // Enable EPWM1 interrupt in PIE: Group 3 interrupt 1 PieCtrlRegs.PIEIER3.all = M_INT1; // Enable all interrupts globally IER |= M_INT8 | M_INT1 | M_INT3 | M_INT13 | M_INT7;
.. the ISR:
__interrupt void cpu_timer0_isr(void)
{
CpuTimer0.InterruptCount++;
//.. proprietary stuff..
// Acknowledge this interrupt to receive more interrupts from group 1
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
}
I see CpuTimer0.InterruptCount reach between 10-30 before it quits counting. I try putting a breakpoint in and, yes, it's never hit.
This is an inherited project and Im not familiar with this MCU, but if it works once or twice I'd think it'd work forever.
All assistance, manual pages, code snippets, GREATLY appreciated.
Ed Averill