声明原文来源于: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. 单元测试(junit使用)

    1.测试的对象是一个类中的方法. 2.导入jar包. 3.单元测试方法时候,测试方法命名规则为 public void 方法名(){},注意:测试类不能命名为public class Test{},T ...

  2. 简单且线程安全的两个单例模式java程序

    /***具体说明见 http://www.cnblogs.com/coffee/archive/2011/12/05/inside-java-singleton.html*/ package com. ...

  3. Installing Redis on Ubuntu

    wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable sudo ...

  4. dbs:apple-notes

    ylbtech-dbs:apple-notes -- =============================================-- apple_备忘录-- auhtor:Yuanbo ...

  5. ylbtech-dbs:ylbtech-7,welfareSystem(福利发放系统)

    ylbtech-dbs:ylbtech-7,welfareSystem(福利发放系统) -- =============================================-- Datab ...

  6. JAVA 边界布局管理器

    //边界布局管理器 import java.awt.*; import javax.swing.*; public class Jiemian1 extends JFrame{ //定义组件 JBut ...

  7. Yii 框架生成缩略图

    控制器 if($model->load(Yii::$app->request->post()))        { //原图            $model->img = ...

  8. spring mvc视频

    视频内容: 1.下载spring mvc以及spring mvc示例演示http://pan.baidu.com/s/1kTHRfDH 2.配置完善&初步探究控制器拦截http://pan.b ...

  9. linux 查看占用端口并kill掉

    主要可以使用ps  命令 或 netstat 命令 weihong@data1:~/jd_parser/jd_parser$ ps aux | head USER PID %CPU %MEM VSZ ...

  10. UITapGestureRecognizer 的用法

    最近在项目中用到了手势操作,键盘回收时还是挺常用的,现在总结下,多谢网络上大神们的分享. 先分享下我在项目中用的代码: UITapGestureRecognizer * mytap=[[UITapGe ...