Voltage Translation for Analog to Digital Interface ADC
Voltage Translation for Analog to Digital Interface
孕龙逻辑分析仪 ZeroPlus Logic Analyzer
How to modify analog output range of Arduino Due
In today's microcontroller market, most of the Analog to Digital converters
are only able to accept voltages from the Vcc of the device to ground.
But what if you want to measure a bipolar signal?
This short tutorial plans to show you a simple but effective method
to interface a bipolar voltage to any single polarity input.

On the left is the ideal basic circuit for interfacing.
vi is the input voltage, vo is the voltage sent to the ADC,
vr is a reference voltage used for setting the center or zero input voltage,
and R1 and R2 are used for input scaling and current limiting
to bring the input voltage into the range of the ADC.

- Input impedance of at least 1Mohm.
- vin = +/- 12V
- vo = 0-5V
So when vin = 12v, vo = 5v
vin = -12v, vo = 0v
vin = 0v, vo = 2.5v
To begin, I need to calculate the value of R
R2 = (R * R1)/(1-R) = (.2083 * 1M)/(1-.2083) = 208,300/.7917 = 263,104 ohms.
Next I need to calculate the value of vr.
Using the case of vin = 12, vo = 5, and using formula III:
vr = (vo - R * vi)/(1 - R) = (5 - .2083 * 12)/(1 - .2083) = 2.5004/.7917 = 3.158v
I now have the 3 values required for my design.
R1 = 1M
R2 = 263,104
vr = 3.158v
vo (vin=+12) = R(vi - vr) + vr = .2083(12 - 3.158) + 3.158 = 5.000
vo (vin= 0) = .2083(0 - 3.158) + 3.158 = 2.500
vo (vin=-12) = .2083(-12 - 3.158) + 3.158 = 0

To the left is a practical circuit to interface to an ADC. The features are:
- A diode and zener diode used to protect the ADC input from overvoltage.
- R2 is composed of a fixed value, and a trim pot to dial in the correct value.
- A trim pot connected to the non inverting input of an op amp in a voltage follower configuration for setting vr.
Now I have a working circuit, but the last thing to calculate is the maximum and minimum input voltages.
vi = ((vo - vr)/R) + vr = ((5.1 - 3.158)/.2083) + 3.158 = 12.481v
The minimum input voltage will occur when the diode is forward biased.
vi = ((-0.7 - 3.158)/.2083) + 3.158 = -15.363v
Effective input impedance can be calculated as follows:
zin = vin(R1 + R2)/(vin - vr)
This is a varying quantity depending on vin.
Voltage Translation for Analog to Digital Interface ADC的更多相关文章
- Fully Digital Implemented Delta-Sigma Analog to Digital Converter
http://www.design-reuse.com/articles/14886/fully-digital-implemented-delta-sigma-analog-to-digital-c ...
- Analog/digital converter (ADC)
1.ADC1 and ADC2 are 10-bit successive approximation Anolog to Digital Converters. 所谓successive appro ...
- STM8S——Analog/digital converter (ADC)
1.ADC1 and ADC2 are 10-bit successive approximation Anolog to Digital Converters. 所谓successive appro ...
- DG449 High Voltage Single SPDT Analog Switch in SOT23-8
DESCRIPTION The DG449 is a dual supply single-pole/double-throw (SPDT) switches. On resistance is 38 ...
- How to modify analog output range of Arduino Due
Voltage Translation for Analog to Digital Interface ADC How to modify analog output range of Arduino ...
- 孕龙逻辑分析仪 ZeroPlus Logic Analyzer
Voltage Translation for Analog to Digital Interface ADC http://openschemes.com/2010/03/23/zeroplus-l ...
- quick start guide for XMEGA ADC
This is the quick start guide for the Analog to Digital Converter (ADC), with step-by-step instructi ...
- BOOST Converter Analog/Digital Adjusted Output Voltage TPS61045 MAX1932
DIGITALLY ADJUSTABLE BOOST CONVERTER The TPS61045 is a high frequency boost converter with digitally ...
- Digital Adjustment of DC-DC Converter Output Voltage in Portable Applications
http://pdfserv.maximintegrated.com/en/an/AN818.pdf http://www.maximintegrated.com/app-notes/index.mv ...
随机推荐
- 2018-2019-2-20175225 实验二《Java开发环境的熟悉》实验报告
姓名:张元瑞 学号:20175225 班级:1752 实验课程:JAVA程序设计 实验名称:Java面向对象程序设计 实验时间:2019.4.16 指导老师:娄嘉鹏 实验内容 测试点一 - " ...
- html----不常见标签
控制文字滚动 <!-- direction="right up down left" --> <!-- behavior:滚动方式(包括3个值:scroll.sl ...
- 性能测试二十三:环境部署之Redis安装和配置
redis:非关系型数据库,内存数据库,no-sql典型, 数据存放在内存中,一断电或者关闭就没有了 mysql.oracle.sqlserver···是关系型数据库,数据存放在磁盘中 一个Red ...
- JavaScript中函数的继承
大多OOP语言都支持两种继承方式: 接口继承和实现继承 ,而ECMAScript中无法实现接口继承,ECMAScript只支持实现继承,而且其实现继承主要是依靠 原型链 来实现. 1.原型链 基本思想 ...
- jxl的使用总结(java操作excel)
jxl.jar是通过java操作excel表格的工具类库: jxl.jar包:链接:http://pan.baidu.com/s/1o8qFJHw 密码:5jyq 1:通过模拟实现创建一个表格,然后模 ...
- day6作业--游戏人生完善
本节作业: 熟练使用类和模块,写一个交互性强.有冲突的程序. 一.作业目的 1.规范程序写法,要按照模块来规范书写: 2.类的使用,文件之间的调用练习: 3.思路的开阔,自己编写冲突,实现调用 ...
- Here We Go(relians) Again HDU2722
处理完输入就是很简单的一题 但是输入好难 勉强找到一种能看懂的... #include<iostream> #include<stdio.h> #include<str ...
- 072 HBase的架构以及各个模块的功能
一:整体架构 1.体系结构 2.物理模型 3.存储体系 regionserver—>region->多个store(列簇)->一个memstore和多个storefile 4.HDF ...
- Scrapy爬虫学习笔记 - 爬虫基础知识
一.正则表达式 二.深度和广度优先 三.爬虫去重策略
- Python2 - 基础2 - 数据类型和模块
一.数据类型 标准数据类型(5): Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 其中数字类型有4种: int(有符号整型) 在3 ...