请教:ADCINC12转换的数据不成线性?

[复制链接]
3404|5
 楼主| shanyu20 发表于 2009-5-4 22:15 | 显示全部楼层 |阅读模式
我在用ADCINC12时遇到一个问题,当TMR clock和CNT clock设置为3M时,转换的数据是成线性的,1V输入对应输出为0X334,2V输入对应输出为0X66A,4V输入对应输出为0XCDD;而当TMR clock和CNT clock设置为8M时,发现1V输入对应输出为0X3B6,2V输入对应输出为0X6AF,4V输入对应输出为0XC88,小电压转换出来的数据偏大,大电压转换出来的数据偏小。单片机为CY29C466,CPU时钟设置为24M,电压基准为(Vdd/2)+/-(Vdd/2),而且它的三个BLOCK时钟我都设置为VC1,不知是什么原因造成的,请大家指点一下,因为我的AD转换速度至少要500SRS,精度又要12位,谢谢!
 楼主| shanyu20 发表于 2009-5-5 10:08 | 显示全部楼层

在评估板上做实验的程序

shanghai11!! 发表于 2009-5-5 18:17 | 显示全部楼层

应该是clock的频率太高。3M合适。

 楼主| shanyu20 发表于 2009-5-6 08:34 | 显示全部楼层

呵呵,谢谢!

但是datasheet上说可以到8M,对应480的字速率,但线性实在不敢恭维。我曾经怀疑可能是PGA造成的,但是我设置的是HIGHPOWER,DATASHEET上说可以到8.9M,而且用DELSIG8测试的时候,时钟设置为8M,发现线性是好的。而且ADCINC12的CLOCK为3M的时候,大电压的线性不太好;4M的时候,小电压的线性不太好;而且输入为0的时候,转换出来的数据还蛮大(0X17),不知道是自己的技术不行还是芯片的天生缺陷,只能牺牲精度,改用11位ADCINCVR ,保持原有的转换速度了!
 楼主| shanyu20 发表于 2009-5-6 10:09 | 显示全部楼层

补充

看了下AN2239文档,把Op-Amp Bia设置为High时,线性会有点提高,但零漂会很大,很小的输入电压无法测量
ys0fcheng 发表于 2009-5-20 00:03 | 显示全部楼层

注意时钟源选择

我用过ADC14(针对毫伏信号),时钟选择很重要,不怕误差,就怕误差不线性,我用外部2M晶振,ADC时钟选择VC1,VC1=系统时钟/8,误差成线性,可以用比值法之类的求出准确电压值,如果ADC时钟选择4分频,误差就不能接受,用内部6M时钟一样,8分频的结果比16分频的结果差很远!放大器最好采用INSAMP,性能比PGA好很多,可以去CY官网上下载AN2148看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

35

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部