智能车制作

标题: 添加第五个电感为何加不长 [打印本页]

作者: 57652761    时间: 2015-3-18 10:45
标题: 添加第五个电感为何加不长
AD 初始化
void InitAD(void)
{   


   ATD0DIEN=0x00; // 禁止数字输?
  ATD0CTL1=0x00; // 选择AD 通道为外部触发,8 位精度,采样前不放电
  ATD0CTL2=0xC0; // 标志位自动清零,禁止外部触发, 禁止中断
  ATD0CTL3=0x2C; // 右对齐无符号,每次转换5 个序列, No FIFO, Freeze 模式下继续转
  ATD0CTL4=0xE1; // 采样时间为4 个AD 时钟周期,PRS=1,ATDClock=24/(2*(1+1))=4MHz
  ATD0CTL5=0x33; //  特殊通道禁止,连续转换,多通道转换,输入通道3



   }







主函数里

   while(!ATD0STAT2L_CCF3);     //等待转换结束,退出循环  
    LeftSt1=(byte)(ATD0DR0H);          //通道4对应 AD1  左
    while(!ATD0STAT2L_CCF4);
    RightSt1=(byte)(ATD0DR1H);


    while(!ATD0STAT2L_CCF5);     //等待转换结束,退出循环  
    LeftSt2=(byte)(ATD0DR2H);          //通道4对应 AD1  左
    while(!ATD0STAT2L_CCF6);
    RightSt2=(byte)(ATD0DR3H);

    while(!ATD0STAT2L_CCF7);
    brake=(byte)(ATD0DR4H);



第五个电感传进来的值赋值给brake,但是第五个电感即使不差,实时检测的时候,brake还是有值的,用ATD0DR4H的时候跟LeftSt1 相同,用ATD0DR5H的时候跟RightSt1 相同,用ATD0DR6H的时候跟LeftSt2 相同,用ATD0DR7H的时候跟RightSt2 相同   






求大神讲解  这是为啥?




再次感谢论坛各位元老 大神们的细心讲解,车已经能够顺畅的跑完了。这个地方还是弄不太懂,还望元老大神们教导啊!!





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