我写了一个中断程序,用开发板上的终端按钮来测试
Isr_Init();
rGPGCON = rGPGCON & (~((3<<22)|(3<<6)|(3<<0)|(3<<10)|(3<<12)|(3<<14))) |
((2<<22)|(2<<6)|(2<<0)|(2<<10)|(2<<12)|(2<<14)) ; //GPG11,3 set EINT
rEXTINT1 &= ~(7|(7<<0));
rEXTINT1 |= (0|(0<<0)); //set eint8 falling edge int
rEXTINT1 &= ~(7<<12);
rEXTINT1 |= (0<<12); //set eint11 falling edge int
rEXTINT1 &= ~(7<<20);
rEXTINT1 |= (0<<20); //set eint13 falling edge int
rEXTINT1 &= ~(7<<24);
rEXTINT1 |= (0<<24); //set eint14 falling edge int
rEXTINT1 &= ~(7<<28);
rEXTINT1 |= (0<<28); //set eint15 falling edge int
rEXTINT2 &= ~(0xf<<12);
rEXTINT2 |= (0<<12); //set eint19 falling edge int
rEINTPEND |= (1<<8)|(1<<11)|(1<<13)|(1<<14)|(1<<15)|(1<<19); //clear eint 11,19
rEINTMASK &= ~((1<<8)|(1<<11)|(1<<13)|(1<<14)|(1<<15)|(1<<19)); //enable eint11,19
ClearPending(BIT_EINT0|BIT_EINT2|BIT_EINT8_23);
pISR_EINT0 = pISR_EINT2 = pISR_EINT8_23 = (U32)Key_ISR;
EnableIrq(BIT_EINT0|BIT_EINT2|BIT_EINT8_23);
while(1);
用ads仿真时看他的disassembly界面,起始地址时0x30000000,如果不中断,一直在0x30000784即while(1)处循环,但是一按中断案件程序就跑到0x33f017f8。怎么也不动了。
并且前面的disassembly是我打开看的,即使不打开中断按下以后一会自动弹出disassembly界面。请问为什么