你好!有个问题要麻烦您一下。
我在用你们的bf54x开发板,我参考你们的bf54X的设计说明书的例程写了一段使用GPIO做为外部中断输入的程序。测试了一下,进不了中断子程序。能不能麻烦你帮我看一下程序哪有问题,是不是还少了需要设置的地方。谢谢!
void Init_DM9000(void)//设置DM9000的中断 1p624例程
{
*pPORTA_FER &= ~PA15; //1p594 INT PA15 GPIO mode
*pPORTA_INEN |= PA15;//1p599 PA15 Input Enable
*pPORTA_DIR_SET &= ~PA15;//1p597 Output disabled
register_handler(ik_ivg7, IsrPA15);//assign PINT0 interrupt to IVG7
*pSIC_IAR2 = 0xFFFF0FFFL;//1p235 Pin Interrupt 0
*pSIC_IMASK0 = PA15;//1p241 Pin Interrupt 0 Interrupt enabled
*pPINT0_ASSIGN = 0x0;//1p614 assign PA15 to PINT0 byte 1
// *pPINT0_INVERT_CLEAR = PA15; //1p613 Input inverted, set to raising edge sensitivity
*pPINT0_INVERT_CLEAR &= ~PA15; //1p613 Input inverted, set to raising edge sensitivity
*pPINT0_EDGE_SET = PA15;//1p609 Edge sensitive, set to raising edge sensitivity
*pPINT0_LATCH = PA15;//1p608 清中断标志 W1C potential latches due to history
*pPINT0_MASK_SET = PA15;//1p604 Interrupt enable
// *pPORTA_FER &= ~0x1; //1p594 IOWAIT PA0 GPIO mode
// *pPORTA_INEN |= 0x1;//1p599 PA0 Input Enable
// *pPORTA_DIR_SET &= ~0x1;//1p597 Output disabled
}
EX_INTERRUPT_HANDLER(IsrPA15)
{
*pPINT0_REQUEST = PA15;//clear interrupt request
}