FPGA AD7606数据采集心得

在最近项目里,需要使用AD7606与FPGA来进行四通道AD数据的采集,配置好AD7606后,开始进行数据采集。测试得出的数据与datasheet中的转换算法得出的数据存在一定的误差,于是慢慢开始排除问题。

首先AD7606的datasheet中算法如图
FPGA AD7606数据采集心得_第1张图片
因为AD7606的数据线为DB[0:15],所以ADC CODE相当于有16位,所以实际得出来的值的范围位0~32767,再根据你的RANGE 脚来选择输入电压的范围,根据图中转换算法得出AD实际测量电压值。

在测试中,发现当输入电压从0~2.5V变化时,AD7606采集到的值经过转换还是挺准的,但是超过2.5V后,比如说实际电压2.6V,但是AD7606采集到的值转换后只有0.1V,实际电压2.7V,测量值为0.2V,以此类推。

以RANGE=±5V为例,按照datasheet的转换算法,转换应该如下图

电压值 AD7606理论值
2.5V 16384
2.6V 17039
2.7V 17695

但是实际测量如下图所示

电压值 AD7606测量值
2.5V 16384
2.6V 655
2.7V 1311

根据上面两幅图的结果,判断出测量电压超过2.5V以后AD7606测量值与理论值存在较大误差,发现误差为16384,二进制为0100 0000 0000 0000,初步判断为DB14存在问题,于是用示波器首先抓了一下AD7606的DB14,发现会有高低电平跳变,说明AD7606输出DB14没问题。于是怀疑FPGA引脚虚焊,于是用风枪重新吹了下FPGA,然后测试,发现所测数据与理论值相同,问题解决。

第一次发博客,做个纪念,有不足的地方欢迎大家留言指教。

你可能感兴趣的:(FPGA AD7606数据采集心得)