标题:
【求助】【急】一个ECT测试程序的结果和预想的不对
[打印本页]
作者:
sunsetman
时间:
2007-4-28 12:37
标题:
【求助】【急】一个ECT测试程序的结果和预想的不对
我写的一个关于ect的测试程序,想测试输入捕捉,并想探测到两个有效沿之后在产生中断,但是我的程序写进去的表现并不是我预想的,主要是我给你个脉冲之后就会进入中断,而且用LED显示TC0H的值也是全0。请大虾指教,十分感谢
源程序如下:
void main(void) {
DDRB=0xff;
PORTB = 0x0f;
TSCR1 = 0X80; //计数器使能
TSCR2 = 0X05; //运行模式选择
TIOS = 0X00; //输入捕捉
TCTL4 = 0X01; //沿选择
ICSYS_TFMOD =1;//中断置位模式选择为两次探测之后中断
ICOVW_NOVW0 = 1; //
ICSYS_BUFEN=1;//使能保持寄存器
ICSYS_LATQ=0;//队列模式
DLYCT = 0x02; //ÑÓʱ
EnableInterrupts;
TIE = 0x01; //ÖжÏʹÄÜ
for(;;) {
//if(i==1) {
//i=0;
//PORTB=~(PORTB);
//PORTB = TC0 ;
//}
}
}
interrupt void ECT_IC0(void){
TFLG1 = 0X01; //ÇåÖжϱêÖ¾
//i++;
PORTB=~(PORTB);//进一次中断B口的灯状态变一次
//TSCR1 = 0X80;
//i= TC0H;
//PORTB = i;
}
作者:
strongchen
时间:
2007-4-28 14:38
ICSYS是单次写入的寄存器,就是说,它的所有位必须一次性写入,分多次写的话就会出错。
作者:
sunsetman
时间:
2007-4-28 16:51
!!!!太感谢你了!!!!!
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0