浅谈传感器常用Delta-SigmaADC
过采样ADC,或噪声整形ADC,也叫Delta-Sigma ADC。名字很多,基本上都由求差电路,积分求和电路组成调制器,后续由数字滤波器获得Nbit数字输出。不管怎样,数学上的除法能够让你理解这类ADC的原理。【先说说:ADC就是除法器】ADC就是除法器,Dout=Vin/Vref* 2^n。离开Vref谈AD转换结果没有意义。分辨率为n位的ADC完成了一个以Vref为除数的除法,并且把结果用n位二进制数来表达。【除法的角度理解:Sigma-DeltaADC】Sigma-Delta最终实现的,与所有的ADC一样,就是完成除法。我们做模拟的人都知道,模拟除法器是不可实现的,但是模拟电路可以非常好的实现加法和减法(用运放及模拟开关对电容进行充放电)。Sigma-DeltaADC正是用加法和减法去实现除法的一种方式。
图1 一阶Sigma-Delta ADC调制器原理
如图1所示,在X2这个点,只有两种电平会进来,被送往积分器。那就是X1-Vref或者X1+Vref。当积分结果大于零时,X4点输出给数字滤波器的值为1,X5点输出Vref,X2=X1-Vref;当积分结果小于零时,X4点输出给数字滤波器的值为-1,X5点输出-Vref,X2=X1+Vref。如此反复,直至积分结果等于0。我们来思考一下,从开始,到积分结果等于零要经历多少次1和多少次-1。设1的次数为m,-1的次数为n。则有m(X1-Vref)+n(X1+Vref)=0 化简一下,提取X1和Vref作为公因子: X1(m+n)+Vref(n-m)=0 X1/Vref=(m-n)/(m+n)好,到这里我们已经成功了,把X1/Vref这个除法,转变(m-n)/(m+n)这个数字域的除法。这个除法好不好做?问问做数字的人他们就会偷笑了,这个非常简单,做个低通滤波器就实现了。所以,你可以认为Sigma-Delta调制器用加法和减法把Vin/Vref的除法变成了求最小公倍数。当然,这是把Vin作为直流的情况来考虑的。对交流信号的处理是基于过采样的,你可以认为在过采样期间,信号保持不变。当然,其实是变的,这也就造成了Sigma-Delta的另外一个特性:输出与输入不存在一一对应的关系。
浅谈传感器常用Delta-SigmaADC的更多相关文章
- 浅谈C#常用集合类的实现以及基本操作复杂度
List 集合类是顺序线性表,Add操作是O(1)或是O(n)的,由于List的容量是动态扩容的,在未扩容之前,其Add操作是O(1),而在需要扩容的时候,会拷贝已存在的那些元素同时添加新的元素,此时 ...
- 浅谈前端常用脚手架cli工具及案例
前端常用脚手架工具 前端有很多特定的脚手架工具大多都是为了特定的项目类型服务的,比如react项目中的reate-react-app,vue项目中的vue-cli,angular 项目中的angula ...
- 浅谈css常用伪类用法
着重写一下after和before的用法: css样式搞定:标签元素+伪类after a.'class名':after{//我的样式名称是这个,可以写成你自己的样式名称 content: '已打包'; ...
- 浅谈Python常用英文单词
一.交互式环境与print输出 1.print:打印/输出2.coding:编码3.syntax:语法4.error:错误5.invalid:无效6.identifier:名称/标识符7.charac ...
- C++ STL中的常用容器浅谈
STL是C/C++开发中一个非常重要的模板,而其中定义的各种容器也是非常方便我们大家使用.下面,我们就浅谈某些常用的容器.这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中 ...
- 【转】浅谈常用的几种web攻击方式
浅谈常用的几种web攻击方式 一.Dos攻击(Denial of Service attack) 是一种针对服务器的能够让服务器呈现静止状态的攻击方式.有时候也加服务停止攻击或拒绝服务攻击.其原理就是 ...
- $.ajax()方法详解 ajax之async属性 【原创】详细案例解剖——浅谈Redis缓存的常用5种方式(String,Hash,List,set,SetSorted )
$.ajax()方法详解 jquery中的ajax方法参数总是记不住,这里记录一下. 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为Str ...
- 浅谈MySQL中优化sql语句查询常用的30种方法 - 转载
浅谈MySQL中优化sql语句查询常用的30种方法 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中使 ...
- Qt3升至Qt4需要注意的几件事项浅谈
Qt3升至Qt4需要注意的几件事项浅谈 公司以前的项目是用Qt3写的,随着时间的推移慢慢显示出Qt3有多方面的限制,因此先公司决定用Qt4来改写这个项目,并为软件添加新功能,在此背景先编写此文章. 先 ...
随机推荐
- 文件夹生成zip
package com.leoodata.utils; import java.io.*; import java.util.zip.ZipEntry; import java.util.zip.Zi ...
- :hover在ios无效问题
:hover 设置的样式在ios显示不出来,需要在按钮元素或body/html上绑定一个touchstart事件才能激活:active状态. 解决方案: 方案1 js绑定: document.body ...
- Windows下使用Rtools编译R语言包
使用devtools安装github中的R源代码时,经常会出各种错误,索性搜了一下怎么在Windows下直接打包,网上的资料也是参差不齐,以下是自己验证通过的. 一.下载Rtools 下载地址:htt ...
- JMeter http(s)测试脚本录制器的使用
JMeter http(s)测试脚本录制器的使用 by:授客 QQ:1033553122 http(s) Test Script Recorder允许Jmeter在你使用普通浏览器浏览web应用时,拦 ...
- Python基础点
写这篇的目的并不是要把python的基础知识汇总一遍,而是着重记录一些实际编写代码时遇到的常用/重要的内容 以点的形式记录,之后遇到的内容会慢慢补充进来 1. 斜杠 / :斜字第一笔, 转义用反斜杠 ...
- maven五:查找jar包坐标,选择jar包版本
查找jar包坐标 以spring core的jar包为例,访问http://www.mvnrepository.com/ 在最上方中间,输入spring core,点击Search. 搜索结果第 ...
- 洗礼灵魂,修炼python(29)--装饰器(1)—>利用经典案例解析装饰器概念
前提必备 不急着进入正题,在前面函数作用域那一章介绍了闭包,全局变量局部变量,这里再看几个简单的闭包案例: 1):不带参数 注意: 1.这里的name属性是每个函数都有的,可以反馈函数名 2.temp ...
- SQL易错总结1
SQL易错总结1 进阶 select语句.select * 查询所有不规范,写出要查的属性.distinct慎用,性能消耗很大 like 模糊查询 ,空值判断是 is null 单行函数:lower( ...
- Deepin系统手动安装oracle jdk8详细教程
Deepin系统手动安装oracle jdk8详细教程 oracle官网下载jdk压缩包,使用 sudo tar -zxf jdk***解压文件,我放在在了home/diy/java/jdk路径下. ...
- 转://oracle字符集
一.oracle字符集基础知识oracle数据库有国家字符集(national character set)与数据库字符集(database character set)之分.两者都是在创建数据库时需 ...