|
1 采数太快以后会有丢数现象,从FIFO读取数据顺序会乱!现象如下图
将一个指针指向一个8个数的数组 程序如下
怎么才能保证读取FIFO的时候不乱序呢???不然速度快了以后取出来的数都不能用了~
while(AD7606_HasNewData())
{
for(int i=0; i<8; i++)
{
AD7606_ReadFifo(pFifo+i);
}
printf("Range = %d, OS = %d, ", g_tAD7606.ucRange, g_tAD7606.ucOS);
printf("CH1 = %6d, CH2 = %6d, CH3 = %6d, CH4 = %6d, ",
ResultFifo[0], ResultFifo[1], ResultFifo[2], ResultFifo[3]);
printf("CH5 = %6d, CH6 = %6d, CH7 = %6d, CH8 = %6d\r\n",
ResultFifo[4], ResultFifo[5], ResultFifo[6], ResultFifo[7]);
// AD7606_HasNewData()
}
2 采数太快以后,FIFO很快就会满,我就将FIFO扩大,扩大后又要报错。
请问这样的问你你们通常是怎么解决的呢? |
-
数据丢了!!!
-
FIFO报错
|