打印

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

[复制链接]
2248|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 ,保持原有的转换速度了!

使用特权

评论回复
5
shanyu20|  楼主 | 2009-5-6 10:09 | 只看该作者

补充

看了下AN2239文档,把Op-Amp Bia设置为High时,线性会有点提高,但零漂会很大,很小的输入电压无法测量

使用特权

评论回复
6
ys0fcheng| | 2009-5-20 00:03 | 只看该作者

注意时钟源选择

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

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

34

帖子

0

粉丝