示波器关于AD830问题,请问高手
我在用ARM加AD830采集数据时候出现很大的问题,采集数据出现不对的问题,不知道为什么?当我用1Mhz时钟采集50Khz波形的时候,出现下面的数据 303163 6162 62 60 62 92 94 92 94 93126 124 127 125 127 157 156 157 158 156 157 190 191 191 188 188 190 189 189 220 221 223 221 222
222 222 223 221 221 223 222 191 189 191 188 188 188 188 191 191 158 157 156 158 156 159 124 127 124 126 124 93 95 93 95 93 63 62 60 63 61 60
61 31 31 31 31 29 29 31 29 28 29 29 28 28 28 29 30 30 28 31 29 28 30 31 31。
开始以为是单片机IO口问题,但是我把频率降低也不行,还使出现一样的问题。
程序如下:
uint32 Ad_conver()
{
uint32 dat;
dat = IO0PIN ;
return dat;
}
while(1)
{
for(i=0;i<500;i++)
{
str = Ad_conver();
}
for(i=0;i<500;i++)
{
str=((str&(0xff<<16))>>16)&0xff;//上面数据使这个数组有通过串口发送到电脑上的数据
}
for(i=0;i<105;i++) {
k= str-str[(i+1)%107];
GUI_disp((i+1),str/4,k/4);
}
} 据说ADS830在启动时的数据是不稳定的,建议给稳定的时钟源,启动延时再读数据 没看懂楼主说的是什么。
从曲线上看,显然是数据更新得太慢,每1/4周期只有7个数据,所以波形呈锯齿形。
http://cache.amobbs.com/bbs_upload782111/files_15/ourdev_449139.gif 对啊!我现在使数据不使很对,在采集的数据中,比如在127-155数据中间的数据没有采集到。不知道为什么?开始是怀疑时钟的问题,但是一直没有解决
页:
[1]