PIC16LF1825 IOC 外部电平变化中断问题咨询
程序代码就两个函数void bsp_InitIoc(void)
{
GIE = 1;
PEIE= 1;
INTE= 1;
IOCIE = 1;
IOCAP=0b00000000; //禁止A端口上升沿触发
IOCAN=0b00111111; //允许RA5~RA0下降沿触发
}
void interrupt ISR(void){
if(IOCIE&&IOCAF5)
{
PORTA = PORTA;
IOCAF5 = 0;
}
if(IOCIE&&IOCAF4)
{
PORTA = PORTA;
IOCAF4 = 0;
}
}
现象是外部电平中断只有RA5有效果,其他RA4~RA0都没效果。,没找出原因,可能的原因是什么?求助 RA0,RA1,RA2,RA4,需要注意你的ANSELA寄存器的初始化工作,这四个口复位后初始状态是模拟量端口,不是数字IO; RA3要注意你的配置字1,配置字1决定你的RA3引脚是外部复位还是普通数字输入接口。
页:
[1]