这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » 请教:2407捕获在低频率脉冲下正常,可频率高了就造成reset,请各位高人帮忙

共2条 1/1 1 跳转至

请教:2407捕获在低频率脉冲下正常,可频率高了就造成reset,请各位高人帮忙看下我的程序

菜鸟
2007-11-10 14:15:23     打赏


void interrupt CP4int()//捕获中断
{  
 Set_BZ();
 *PCDATDIR=*PCDATDIR ^ 0x0010;//test 
 kick_dog();
 HH=*CAP1FIFO; 
 *EVAIFRC=*EVAIFRC & 0xffff; //清中断标志 
 asm (" clrc INTM"); //中断允许
}

int Mcu_Initial()             
{  
 *SCSR1=0x83ff; 

 *WDCR=0x02f;   //看门狗   
 *WDKEY =0x55;
 *WDKEY =0xaa;
 
 *MCRA = 0x000b;  //PA3=CAP1 ,232
 *MCRB =0xfe00;
 *MCRC =0x0000;
 
 *PFDATDIR=0XFF00; //输出
 *PEDATDIR=0xFF00;
 *PDDATDIR=0xFF00;
 *PCDATDIR=0xFF00;
 *PBDATDIR=0xFF00;
 *PADATDIR=0xFF00;
 
 *PADATDIR=*PADATDIR & 0xFB00; ////输入 PA2
 *PBDATDIR=*PBDATDIR & 0xCF00; //PB4
 *PFDATDIR=*PFDATDIR & 0xFD00; //PF1
 
 *T2CON=0x104c
   
 *T2PR=0xfffe;  
 *T2CNT=0; 
 
 *CAPCONA=0xa0C0;////cap1捕获,使能 
 *EVAIMRC=0x0001;//中断使能 
 *EVAIFRC=*EVAIFRC & 0xffff; //清中断标志   
 *IMR=0x0008;//cp4
 *IFR=0x0ffff;
}  
/////////
void interrupt nothing()//保护

 kick_dog();
 asm (" clrc INTM"); //开总中断
}
/////////
void main(void)
{
 int i,j;
 Mcu_Initial();
 asm (" clrc INTM"); //开总中断 
 Clr_BZ();
    while(1)
    {   kick_dog(); 
  sent_1ms_delay();
  Clr_BZ();
  sent_1ms_delay();
     }
}
///////




关键词: 请教     捕获     频率     冲下     正常     造成     reset         

工程师
2007-11-14 00:16:30     打赏
2楼

没接触过2407,不过帮楼主顶一下,期待高手出现


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]