请教各位大虾:
我在使用LPC2138 P0.9配置为外部中断3时,遇到问题,具体如下代码:
void EXINT3_IRQEnable(void)
{
VICIntSelect = 0x00000000; // 设置所有中断分配为IRQ中断
VICVectCntl0 = 0x20 | 17; // 分配外部中断3到向量中断0
VICDefVectAddr = (uint32)IRQ_Eint3; // 设置中断服务程序地址
VICIntEnable = 1<<17; // 使能EINT3中断,EINT3在Bit17上
EXTMODE = 0<<3; // 设置EINT3中断为电平触发模式
EXTINT = 0x08; // 清除EINT3中断标志
}
中断配置程序如上,结果不能工作,如果使用P0.30的EINT3功能,上面的程序是OK的。
或者把VICVectCntl0 = 0x20 | 17; 改为VICVectCntl0 = 0x20 | 16;P0.9的EINT3功能也可以正常工作。
很不能理解。
请路过的帮忙分析,谢谢! |