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.

EK-1294XL的GPIO中断实验的问题...



就是做个普通的按钮中断点亮LED,,,出现了问题,,

uint32_t CurrentClock;

void Int_J()   //中断函数,在start_ewarm.c里面都写了
{
  while(1)
  {
  GPIOPinWrite(GPIO_PORTN_BASE, GPIO_PIN_0|GPIO_PIN_1, 0);
  ROM_SysCtlDelay( CurrentClock / 3 );
  GPIOPinWrite(GPIO_PORTN_BASE, GPIO_PIN_0|GPIO_PIN_1, 0xff);
  ROM_SysCtlDelay( CurrentClock / 3 );
  }
}

int main()
{
  //Clock Setting
  CurrentClock = SysCtlClockFreqSet((SYSCTL_XTAL_25MHZ | SYSCTL_OSC_MAIN | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480), 120000000);
  
  //Periph Setting
  ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPION);  //这个GPION是LED灯的
  ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOJ);  //这个是中断的
  
  ROM_GPIOPinTypeGPIOOutput(GPIO_PORTN_BASE, GPIO_PIN_0|GPIO_PIN_1);  //设置GPIO点灯的那个输出
  
  ROM_GPIOPinTypeGPIOInput(GPIO_PORTJ_BASE, GPIO_PIN_0);
  GPIOPadConfigSet(GPIO_PORTJ_BASE, GPIO_PIN_0,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);  //这俩设置为输入,弱上拉,
  ROM_GPIOIntTypeSet(GPIO_PORTJ_BASE, GPIO_PIN_0,GPIO_FALLING_EDGE); //下降沿触发..
  ROM_IntEnable(INT_GPIOJ);
  ROM_IntMasterEnable();
  
 // ROM_IntPendSet(INT_GPIOJ);  人工触发中断用
  
  
  while(1)
  {
    
  }
  
}

始终无法进入中断,,但是用

 ROM_IntPendSet(INT_GPIOJ);  人工触发中断
就能进入了,,,那哪个地方有毛病呢?