智能车制作

标题: xs128 外部中断求助 [打印本页]

作者: Mark_    时间: 2015-7-24 01:07
标题: xs128 外部中断求助
感觉要死了、
初始化如下:
void INTER_int()   //J1中断初始化
{            
  DDRJ_DDRJ0=0;
  DDRJ_DDRJ1=0;//设置J0 1为输入
  PPSJ_PPSJ0=0;//设置J0引脚中断为下降触发
  PPSJ_PPSJ1=1;//设置J1引脚中断为上升触发
  PIEJ_PIEJ0=1;//J0外部中断使能
   PIEJ_PIEJ1=1;//J1外部中断使能                                                                                                                                                                                            
}  


中断函数如下:
void interrupt 24 PORTJ_ISR(void)
{      
  if(PIFH_PIFH0)   
{     //检测到磁铁动作函数
     PIFJ_PIFJ0=1;//清中断标志位
      stop++;
      if(stop==1) Delay_ms(1000); //延时1s 冲过去
      send(stop);
}
else if(PIFH_PIFH1)
  {   //检测到超声波上升沿动作函数
     PIFJ_PIFJ1=1;//清中断标志位
    while(PTJ_PTJ1)
    {       count++;
             if(!PTJ_PTJ1)
             {
                    distance=(float)(count*3.4);    //转换成厘米。
                    count=0;
                    send(distance);
             }
          Delay_ms(1);       //延时1ms
    }

}   
楼主想用J0 J1 口外部中断来 检测高低电平上升沿~

主函数如下:
void main(void)
{   
    chaopin();   //超频60M
    EnableInterrupts;  
    INTER_int();   //J0 1通信中断初始化
    SCI_Init();      //串口初始化化

  for(;;) {
_FEED_COP(); /* feeds the dog */
}
}
send()为串口送回数据。

但是收不到,感觉没有进入中断 或则if.
求指导。。。

作者: Mark_    时间: 2015-7-24 01:24
没人不科学啊啊啊
作者: ysdx12011    时间: 2015-7-27 11:36
我也遇到问题了,和你类似,不会啊!!!!




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2