智能车制作

标题: AD采集(救助贴) [打印本页]

作者: 独角戏    时间: 2013-5-27 10:12
标题: AD采集(救助贴)
//-----读取AD转换结果--------//
void AD_GetValue(int *AD_wValue)
{
     float ads;
     unsigned char i,j,jj;
     int temp;
     for(j=0;j<5;j++)
     {
     while(!ATD0STAT0_SCF);
     ad[0][j]=ATD0DR0;
     ad[1][j]=ATD0DR2;
     ad[2][j]=ATD0DR6;
     ad[3][j]=ATD0DR4;
     ad[4][j]=ATD0DR1;
     ad[5][j]=ATD0DR5;
     ad[6][j]=ATD0DR7;
     ad[7][j]=ATD0DR3;  
     ad[8][j]=ATD0DR9;   
     ad[9][j]=ATD0DR8;
     ad[10][j]=ATD0DR11;
     ad[11][j]=ATD0DR12;
     tc_vatp=ATD0DR10;
     }
      for(i=0;i<12;i++)
        for(jj=1;jj<=4;jj++)
          for(j=0;j<5-jj;j++)
          {
              if(ad[i][j]>ad[i][j+1])
              {
                  temp=ad[i][j];
                  ad[i][j]=ad[i][j+1];
                  ad[i][j+1]=temp;
              }
          }
     for(i=0;i<12;i++)
     {
     *(AD_wValue+i)=(ad[i][1]+ad[i][2]+ad[i][3])/3;
    ads=4.976*(float)(*(AD_wValue+i))/4095;
    sen[i]=ads;
    trbuf.sensor[i]=(uchar)(ads*10);
      }
     tc_value=4.976*(float)(tc_vatp)/4095;
}

这是我从一个大神程序里看到的AD采集部分,但是很多地方看不懂,求大神给我分析一下。

作者: cgtiso    时间: 2013-5-27 10:27
多次采集循环计算平均值
作者: cgtiso    时间: 2013-5-27 10:27
多次采集循环计算平均值
作者: 独角戏    时间: 2013-5-27 15:46
cgtiso 发表于 2013-5-27 10:27
多次采集循环计算平均值

明白了,谢谢啊
作者: somebodyes    时间: 2014-2-18 16:33





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