电路设计论坛
直播中

ytrwv

9年用户 932经验值
擅长:EMC/EMI设计
私信 关注
[问答]

AD7606-4编写串行程序采集到的数据全部是错的怎么处理?

AD7606-4 串行-10~10V电压采集,两通道同时读取转换数据,采集到的数据都是错误的,感觉是时序有问题,但是不知道是哪的时序出现错误了,用官网上的采集到的也是错误的
重置 AD7606( 撤销) 无效
{ADCSH;///CS;{ADCSH;//CS;} {ADCSH;//CS。 {ADCSH;//CS
   ADOS0L; //过采样
   ADOS1L; //过采样
   ADOS2L; //过采样
adsclkh;/ sclk
   ADRSTL; nop(); nop(); //复位信号
   ADRSTH; nop(); nop();//复位信号
   ADRSTL; nop(); nop();//复位信号
}
无效的 readAD7606( 取消)
{uchar i;
dtA=0,dtB=0;
(a) adcsh;
ADSCLKL; nop ();nop () ;
ADCONABH; nop ();nop (); //问题A,利息B
ADCONABL; nop ();nop () ;
ADCONABH; nop ();nop () ;
   for(i=0;i<20;i++) nop();
(a) adcsl;
(ADOUTAISH) dtA=1;
如果(ADOUTBisH) dtB=1;
   for(i=1;i<16;i++)
   { dtA<<=1;
   dtB<<=1;
ATSLLKH; 诺普() ;
如果(ADOUTAISH) dtA ;
如果(ADOUTBISH) dtB;
adsclkl;
   }
ADvalue [0] =dtA; dtA=0; //XOUUT
Advalue[1]=dtB; dtB=0; //ROUT
   for(i=0;i<16;i++)
   { dtA<<=1;
   dtB<<=1;
ATSLLKH; 诺普() ;
如果(ADOUTAISH) dtA ;
如果(ADOUTBISH) dtB;
adsclkl;
   }
ADValue[2]=dtA;//OSGO
ADvalue[3]=dtB; //宽度
(a) adcsh;
adsclkh;
}

更多回帖

发帖
×
20
完善资料,
赚取积分