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.

Interrupts on the C2000 F28069

Hello, I have the following code. It initializes the interrupts and CPU Timer 0, then it is stuck in a forever loop until CPU Timer 0 counts down to 0 and the system interrupts.

asm(" CLRC INTM, DBGM");
PieCtrlRegs.PIECTRL.bit.ENPIE = 1;
PieCtrlRegs.PIEACK.all = 0xFFFF;
PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
IER |= 0x0001;
CpuTimer0Regs.TCR.bit.TIF = 1;
CpuTimer0Regs.TCR.bit.TIE = 1;
CpuTimer0Regs.TCR.bit.TRB = 1;
for(;;);

If I run the code completely, I end up in the interrupt function below. But if I single step the code, all it does it keeps resetting CPU Timer 0 even though the flags have been triggered. Why is there a difference between when I run the code normally vs. single stepping it? What is the code waiting on? 

interrupt void ISR_ILLEGAL(void) // Illegal operation TRAP
{
// Insert ISR Code here

// Next two lines for debug only to halt the processor here
// Remove after inserting ISR Code
asm(" ESTOP0");
for(;;);

}

Finally, I understand that asm(" CLRC INTM") allows for global interrupts, but what does asm(" CLRC INTM, DBGM"); do? What is DBGM? 

Thanks,

Matthew