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.

ILLEGAL_ISR infinite loop after DELAY_US during debug session

Hi,

I am currently debugging my program. It all went ok until the ADC initialisation function InitAdc () is called.

Before converting, there is a delay function  DELAY_US(ADC_usDELAY)

The assembly language is

 

_DSP28x_usDelay:

       

SUB    ACC,#1

       

BF     _DSP28x_usDelay,GEQ    ;; Loop if ACC >= 0

       

LRETR

After this, my program fell into an infinte loop:

interrupt void ILLEGAL_ISR(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(;;);

}

 

Can anyone provide any suggestion that help me get out of the trap please? Do I just remove the last two lines as suggested in the comments?

The device I am using is F28027 Piccolo Launchpad.

Many thanks.

Jingzhe