原创 ADC 分辨率和精度的区别

2014-7-1 10:10 4084 12 16 分类: 模拟

 

分辨率和精度这两个,经常拿在一起说,才接触的时候经常混为一谈。对于ADC来说,这两样也是非常重要的参数,往往也决定了芯片价格,显然,我们都清楚同一个系列,16位AD一般比12位AD价格贵,但是同样是12位AD,不同厂商间又以什么参数区分性能呢?性能往往决定价格,那么什么参数对价格影响较大呢?不好意思,我其实还是有些迷惑的,但是看了下篇文章,至少知道“精度”是有很大影响力的。该篇文章主要解释ADC分辨率和精度的区别,非常详细且易懂,值得一看,全文如下:


最近做了一块板子,当然考虑到元器件的选型了,由于指标中要求精度比较高,所以对于AD的选型很慎重。

很多人对于精度和分辨率的概念不清楚,这里我做一下总结,希望大家不要混淆。


我们搞电子开发的,经常跟精度分辨率打交道,这个问题不是三言两语能搞得清楚的,在这里只作抛砖引玉了。


简单点说,精度是用来描述物理量的准确程度的,而分辨率是用来描述刻度划分的。从定义上看,这两个量应该是风马牛不相及的。(是不是有朋友感到愕然^_^)。很多卖传感器的JS就是利用这一点来糊弄人的了。简单做个比喻:有这么一把常见的塑料尺(中学生用的那种),它的量程是10厘米,上面有100个刻度,最小能读出1毫米的有效值。那么我们就说这把尺子的分辨率是1毫米,或者量程的1%;而它的实际精度就不得而知了(算是0.1毫米吧)。当我们用火来烤一下它,并且把它拉长一段,然后再考察一下它。我们不难发现,它还有有100个刻度,它的分辨率还是1毫米,跟原来一样!然而,您还会认为它的精度还是原来的0.1毫米么?(这个例子是引用网上的,个人觉得比喻的很形象!)


回到电子技术上,我们考察一个常用的数字温度传感器:AD7416。供应商只是大肆宣扬它有10位的AD,分辨率是1/1024。那么,很多人就会这么欣喜:哇塞,如果测量温度0-100摄氏度100/1024……约等于0.098摄氏度!这么高的精度,足够用了。但是我们去浏览一下AD7416的数据手册,居然发现里面赫然写着:测量精度0.25摄氏度!所以说分辨率跟精度完全是两回事,在这个温度传感器里,只要你愿意,你甚至可以用一个14位的AD,获得1/16384的分辨率,但是测量值的精度还是0.25摄氏度^_^


所以很多朋友一谈到精度,马上就和分辨率联系起来了,包括有些项目负责人,只会在那里说:这个系统精度要求很高啊,你们AD的位数至少要多少多少啊……


其实,仔细浏览一下AD的数据手册,会发现跟精度有关的有两个很重要的指标:DNLINL。似乎知道这两个指标的朋友并不多,所以在这里很有必要解释一下。


DNLDifferencial NonLiner——微分非线性度


INLInterger NonLiner——积分非线性度(精度主要用这个值来表示)


他表示了ADC器件在所有的数值点上对应的模拟值,和真实值之间误差最大的那一点的误差值。也就是,输出数值偏离线性最大的距离。单位是LSB(即最低位所表示的量)。


当然,像有的AD—∑系列的AD,也用Linearity error 来表示精度。


为什么有的AD很贵,就是因为INL很低。分辨率同为12bit的两个ADC,一个INL±3LSB,而一个做到了±1.5LSB,那么他们的价格可能相差一倍。

所以在这里帮大家把这两个概念理一下,以后大家就可以理直气壮的说精度和分辨率了,而不是将精度理解为分辨率。呵呵,希望对大家有用!
分辨率计算:测量电压范围/(2^AD位数-1)
PARTNER CONTENT

文章评论4条评论)

登录后参与讨论

用户746059 2015-11-11 11:11

太感谢,总结的很是清楚。

用户377235 2015-10-25 21:08

I've been loniokg for a post like this forever (and a day)

用户1383711 2015-7-15 11:21

谢谢

用户1669729 2015-7-13 21:58

精辟,

用户439981 2015-7-13 09:15

其实...还是没讲清楚...
相关推荐阅读
用户1642694 2014-09-16 11:27
arm常用指令
  常用ARM指令及汇编包括   1、ARM处理器寻址方式 2、指令集介绍 3、伪指令 4、ARM汇编程序设计 5、C与汇编混合编程   ARM处理器寻址方式 ...
用户1642694 2014-09-16 11:26
Android中Intent的
  本文介绍Android中Intent的各种常见作用。       1 Intent.ACTION_MAIN   String: android.intent.act...
用户1642694 2014-09-16 11:25
验证 大端小端
  #include <stdio.h>   int main(void) {     union{         short s;         ch...
用户1642694 2014-09-09 20:42
VC#通过TCP/IP实现远程控制
  如何控制对方计算机,有程序人员自己定义.,这里给出核心技术代码并且实现部分控制功能. 这里我们把运行在我们自己电脑上的控制程序叫 Server  被管理电脑运行的程序叫Client ...
用户1642694 2014-09-09 20:40
共模扼流圈在高速数据链路的使用
   简介 共模扼流圈广泛应用于高速串行数据传输。当传输介质是连接两个子系统的差分线电缆时, 其应用则更为普遍。使用共模扼流圈可以减少电缆的电磁辐射噪音,并有助于符合规范要求。由于共...
用户1642694 2014-09-09 20:38
电平和频率计算
  图:输入端口电平要求 图:输出端口电平极限条件 图:输入端口电平要求   图:输出端口电平 图:时序要求:接线图9013的参数 ...
EE直播间
更多
我要评论
4
12
关闭 站长推荐上一条 /3 下一条