智能车制作
标题: AD采集问题 [打印本页]
作者: zhouzuodong 时间: 2012-11-12 15:02
标题: AD采集问题
我采用8通道同时采集,但是我对AD的周期不清楚,是否说是经过一个采集周期以后,AD自动把第二组数存入ADVALUE这个数组?因为要采集5次数据做平均值算法,请问我是得每采集一次就得调用一次这个AD_Getvalue 函数么?还是得在采集完一次后中间设置延时(AD转换周期)等待第一次采集完然后用从数组里读取??
unsign ADvalue[8];
void AD_Getvalue(unsigned char *AD_value)
{
while(!ATD0STAT2L_CCF0);
*AD_value = ATD0DR0L;
AD_value ++;
while(!ATD0STAT2L_CCF1);
*AD_value = ATD0DR1L;
AD_value ++;
while(!ATD0STAT2L_CCF2);
*AD_value = ATD0DR2L;
AD_value ++;
while(!ATD0STAT2L_CCF3);
*AD_value = ATD0DR3L;
AD_value ++;
while(!ATD0STAT2L_CCF4);
*AD_value = ATD0DR4L;
AD_value ++;
while(!ATD0STAT2L_CCF5);
*AD_value = ATD0DR5L;
AD_value ++;
while(!ATD0STAT2L_CCF6);
*AD_value = ATD0DR6L;
AD_value ++;
while(!ATD0STAT2L_CCF7);
*AD_value = ATD0DR7L;
AD_value ++;
}
void collect(){
*AD_value=AD_value[0];
AD_Getvalue(AD_value);
x1[1]=AD_value[0];
x2[1]=AD_value[1];
x3[1]=AD_value[2];
x4[1]=AD_value[3];
x5[1]=AD_value[4];
x6[1]=AD_value[5];
x7[1]=AD_value[6];
x8[1]=AD_value[7];
AD_Getvalue(AD_value);
x1[2]=AD_value[0];
x2[2]=AD_value[1];
x3[2]=AD_value[2];
x4[2]=AD_value[3];
x5[2]=AD_value[4];;
x6[2]=AD_value[5];
x7[2]=AD_value[6];
x8[2]=AD_value[7];
AD_Getvalue(AD_value);
x1[3]=AD_value[0];
x2[3]=AD_value[1];
x3[3]=AD_value[2];
x4[3]=AD_value[3];
x5[3]=AD_value[4];
x6[3]=AD_value[5];
x7[3]=AD_value[6];
x8[3]=AD_value[7];
AD_Getvalue(AD_value);
x1[3]=AD_value[0];
x2[3]=AD_value[1];
x3[3]=AD_value[2];
x4[3]=AD_value[3];
x5[3]=AD_value[4];
x6[3]=AD_value[5];
x7[3]=AD_value[6];
x8[3]=AD_value[7];
AD_Getvalue(AD_value);
x1[0]=AD_value[0];
x2[0]=AD_value[1];
x3[0]=AD_value[2];
x4[0]=AD_value[3];
x5[0]=AD_value[4];
x6[0]=AD_value[5];
x7[0]=AD_value[6];
x8[0]=AD_value[7];
}
作者: songtt 时间: 2014-2-28 22:14
不知道你的这个问题解决了没有
欢迎光临 智能车制作 (http://dns.znczz.com/) |
Powered by Discuz! X3.2 |