声明原文来源于:http://wenku.baidu.com/view/1e6d8f3083c4bb4cf7ecd1c2.html

讨论AD转换分辨率的算法(zt)

(1)在总长度为5米的范围里,平均分布6棵树(或说6个元素),算出每科树(或说每个元素)的间隔?

解:每棵树(或说每个元素)应该这样分布:

在开头0米处种第1棵(记为0号树)

在1米处种第2棵(记为1号树);

在2米处种第3棵(记为2号树);

在第5米(即终点)处种第6棵(记为5号树)

所以,每棵树的间隔(或分辨率)的算法是:总长度/(长度内总元素-1)

即:5米/(6-1)棵=1米/棵

每隔1米有1棵树,这个道理大家都很清楚,应该没有人说分辨率=总长度/长度内总元素=5/6=0.83米,

即每隔0.83米有1棵树吧??? XXX, 再看例子(2)

(2)在总长度为5米的范围里,平均分布256棵树,算出每棵树的间隔?

解:总长度=5;长度内总元素=256

所以:按上述算法,每棵树的间隔(或分辨率)=5/(256-1)=0.019607843

即:0号树的位置,即第1棵树的位置=0*0.019607843=0(米)

1号树的位置,即第2棵树的位置=1*0.019607843=0.019607843(米)

100号树的位置,即第101棵树的位置=100*0.019607843=1.9607843(米)

255号树的位置,即第256棵树的位置=255*0.019607843=4.99999997=5(米)

(3)在总电压为5V的范围里,平均分布256个元素(0-ff),算出每个元素的间隔?

解:总电压=5V;长度内总元素=256 (0-ff)

所以:每元素的间隔(或分辨率)=5/(256-1)=0.019607843

即:0号元素的位置,即AD<00>的电压=0*0.019607843=0(V)

100号元素的位置,即AD<64>的电压=100*0.019607843=1.9607843(V)

255号元素的位置,即AD<ff>的电压=255*0.019607843=4.99999997=5(V)

(4)AD转换的分辨率=参考电压/(总元素-1)

当AD为8位,总元素=256(ff)取参考电压=Vdd=5V时

分辨率=5/(256-1)= 0.019607843

当AD=255时,AD转换值=255*0.019607843=4.99999997=5(V)

如这样算:转换值=255*(5/256)=4.98046875=4.98(V)  结果就错了,我们看看用这种算法算算例(1)看看:

每棵树的间隔(或分辨率)=总长度/长度内总元素=5/6=0.8333333333

即:0号树的位置,即第1棵树的位置=0*0.8333333333=0(米)

1号树的位置,即第2棵树的位置=1*0.8333333333=0.8333333333(米)

5号树的位置,即第6棵树的位置=5*0.8333333333=4.166666666(米)

可见,最后的元素不在终点5米处,很明显不把总元素减1的算法是不对的,忽略了有一个元素在0的位置啊。

AD转换精度的计算的更多相关文章

  1. s5pv210 AD转换

    1:ADC:Analog-to-Digital Converter,模拟信号转数字信号,自然界一般为模拟信号,而SoC需要数字信号,所以之间通信需要ADC. 2:转换原理: 以逐次逼近式AD转换为例: ...

  2. 在AD转换中的过采样和噪声形成

    1. 直接量化的过采样AD转换 此类系统的模型可以用下图表示. 图中xa(t)是输入信号,e(t)是量化引入的噪声,xd[n]是最终得到的数字信号,包含分量xda和xde. 对于M倍过采样,信号与量化 ...

  3. MSP430常见问题之AD转换类

    Q1:MSP430F149 AD 的输入阻抗有多大?A1:RC<2000欧*30PF Q2:MSP430 ADC12 模块的速度?A2: ADC12 的转换速率是转换所需的ADC12CLK 以及 ...

  4. AD转换

    一.AD转换的概念  AD转换的功能是把模拟量电压转换为数字量电压.DA转换的功能正好相反,就是讲数字量转换位模拟量. 二.芯片PCF8591介绍 PCF8591是一个单片集成.单独供电.低功耗.8- ...

  5. verilog实验3:AD转换后串口输出到PC端

    一.实验任务 通过tcl549AD转换芯片将模拟电压信号转换为数字信号,并通过串口显示到电脑上.此AD转换芯片为串行转换芯片,且转换速率要和串口选择的速率匹配.等待串口发送完后,再进行下一次AD转换. ...

  6. STM8S AD转换

    //不说那么多了,直接上程序 void ADC1_DeInit(void) { ADC1->CSR = ADC1_CSR_RESET_VALUE; ADC1->CR1 = ADC1_CR1 ...

  7. AD转换后数字量的处理

    假设模拟输入电压的最大值为5V,A/D转换器件为8位转换. [该转换器的分辨率为1/2n=0.3906%.] [能分辨输入模拟电压变化的最小值为5*0.3906%=19.5mv.] 则模拟电压与数字输 ...

  8. 【小思考】Python的float转换精度损失所想到的

    首先,为啥会要讨论这个问题. 我得为昨天拖了小组后腿深表歉意.其实程序逻辑很快就理通了的,但自己总是会因为各种各样的小问题束缚手脚,看接下来这个图片: 稍微有数据敏感性的同学就能看出,中间这么一大堆又 ...

  9. BigDecimal 小数 浮点数 精度 财务计算

    简介 float和double类型的使用局限: 单精度浮点型变量float可以处理6~7位有效数,双精度浮点型变量double可以处理15~16位有效数,在实际应用中,如果需要对更大或者更小的数进行运 ...

随机推荐

  1. C#读取系统信息

    using System; using System.Management; namespace Soyee.Comm { /// <summary> /// Computer Infor ...

  2. java.io.FileNotFoundException:SESSIONS.ser (系统找不到指定的路径。)

    问题如下: java.io.FileNotFoundException: E:\apache-tomcat-8.0.37\work\Catalina\localhost\20161013Shoppin ...

  3. 如何巧用.htaccess设置网站的压缩与缓存

    <IfModule mod_expires.c> ExpiresActive On ExpiresDefault A86400 ExpiresByType image/gif A25920 ...

  4. iphone dev 入门实例5:Get the User Location & Address in iPhone App

    Create the Project and Design the Interface First, create a new Xcode project using the Single View ...

  5. HashMap的实现

    HashMap的工作原理是近年来常见的Java面试题.几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道Hashtable和HashMap之间的区别,那么为何这道面试题如此 ...

  6. PLSQL_基础系列01_正则表达REGEXP_LIKE / SUBSTR / INSTR / REPLACE(案例)

    2014-11-30 Created By BaoXinjian

  7. MVC ViewData和ViewBag[转]

    转自:http://blog.csdn.net/a497785609/article/details/7854402#t0       视图数据可以通过ViewBag属性访问,它主要是为了从Contr ...

  8. Java中的hashCode 方法

    http://www.cnblogs.com/dolphin0520/p/3681042.html

  9. C++多态的实现及原理详细解析

    C++多态的实现及原理详细解析 作者: 字体:[增加 减小] 类型:转载   C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型 ...

  10. JAVA 理解封装的概念,private私有的,public公有的

    封装就是把不想或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开. 做法:修改属性的访问权限来限制对属性的访问,并为每一个属性创建一对取值和赋值的方法,用于对这些属性的访问 通过封装,可以在给属性赋 ...