智能车制作

标题: ECT 捕捉测速度 [打印本页]

作者: 小歪    时间: 2010-5-23 18:29
标题: ECT 捕捉测速度
我用ECT捕捉编码器的脉冲来测量速度   但为什么读取的结果寄存器的值不对呢……大家看看我的ECT初始化函数  和读取的方法   大家讨论一下哈……
     void ECT_INIT(void)
{
     TIOS=0x0;            //定时器通道0为IC工作方式
     TC0=0X00EE;           //开始计数基数
    // TCTL2=0X02;
     TSCR1=0x80;          //TSCR1.7,TEN=1,定时器使能   
     TSCR2=0x85;          //定时器时钟=busclock/5定时器溢出中断不允许
     TCTL4=0x01;          //EDG0B/EDG0A=01,捕捉通道0的上升沿
     TIE=0x01;             //C0I=1,通道0中断使能
    // TSCR2=0x87;           //TOI=1,开放定时器1溢出中断并做128分频
}   
……
……
……
……
#pragma CODE_SEG NON_BANKED
#pragma TRAP_PROC
void interrupt 8 Int_TimerOverFlow(void)
{
       TFLG1_C0F=1;                  //清中断标志位
    Speed_amount=TC0;
        D++;
       if(Speed_amount<Speed_amount1)
            {
            V=65535-Speed_amount1+Speed_amount;
            }
       else
            {
            V=Speed_amount-Speed_amount1;
            }   
           Speed_amount1=Speed_amount;                          //v为当前所测的速度




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