RA2输入脉冲信号,每次在上升沿触发中断,初始化代码和中断代码那如下,请问是否有问题?
/***********************************************************
函数说明:端口(RA2)电平变化中断初始化
***********************************************************/
void Int_IRQ(void)
{
TRISA |= 0xb00000100; //RA2输入
IOCA |= 0B00000100; //允许RA2电平中断
INTCON |= 0B11011000; //打开中断总开关GIE,允许电平变化中断
INTEDG = 1; //上升沿中断
}
中断函数代码:
/*************************************************
中断服务函数:来一次中断计数一次,累计四次,清零
*************************************************/
void interrupt INT(void)
{
if(INTE && INTF ) // 升沿 中断处理
{
if(INTEDG) //上升沿处理
{
PORTA = PORTA;
INTF=0;
INTE=1;
}
}
} |