首页 > 其他分享 >数-模转换和模-数转换

数-模转换和模-数转换

时间:2022-10-30 22:00:49浏览次数:51  
标签:误差 转换 电阻 输出 和模 电压 转换器

基本内容

转换精度和转换速度乃是衡量A/D转换器和D/A转换器性能优劣的主要标志。

D/A转换器

权电阻网络D/A转换器

一个多位二进制数中每一位的1所代表的数值大小称为这一位的权。下图是4位权电阻网络D/A转换器的原理图,它由权电阻网络、4个模拟开关和1个求和放大器组成。

数-模转换和模-数转换_有效位

当RF=R/2的时候

数-模转换和模-数转换_数模转换_02

对于n位的权电阻网络D/A转换器,当反馈电阻取为R/2时,所以输出电压

数-模转换和模-数转换_建立时间_03

输出的模拟电压正比于输人的数字量Dn,从而实现了从数字量到模拟量的转换。

数-模转换和模-数转换_模数转换_04

优点

结构比较简单,所用的电阻元件数很少

缺点

各个电阻的阻值相差较大

为了克服这个缺点,设计了双权电阻网络

数-模转换和模-数转换_有效位_05

数-模转换和模-数转换_有效位_06

在D/A转换器中通常用分辨率和转换误差来描述转换精度。

分辨率用输人二进制数码的位数给出。分辨率表示D/A转换器在理论上可以达到的精度。

由各种因素引起的转换误差是一个综合性指标。转换误差表示实际的D/A转换特性和理想转换特性之间的最大偏差。此外,有时也用输出电压满刻度FSR(系FullScaleRange的缩写)的百分数表示输出电压误差绝对值的大小。

造成D/A转换器转换误差的原因有参考电压VREF的波动、运算放大器的零点漂移、模拟开关的导通内阻和导通压降、电阻网络中电阻阻值的偏差以及三极管特性的不一致等等。

如果VREF偏离标准值ΔVREF,则输出将产生误差电压

数-模转换和模-数转换_有效位_07

由ΔVREF所引起的转换误差称为比例系数误差。当输出电压的误差系由运算放大器的零点漂移所造成时,误差电压ΔvO2的大小与输人数字量的数值无关, 输出电压的转换特性曲线将发生平移(移上或移下),如下图中的虚线所示。我们将这种性质的误差称为漂移误差或平移误差。

数-模转换和模-数转换_有效位_08

由于模拟开关的导通内阻和导通压降都不可能真正等于零,因而它们的存在也必将在输出产生误差电压ΔvO3。需要指出的是,每个开关的导通压降未必相等,而且开关在接地时和接VREF时的压降也不一定相同,因此ΔvO3既非常数也不与输人数字量成正比。这种性质的误差称为非线性误差。这种误差没有一定的变化规律。产生非线性误差的另一个原因是倒T形电阻网络中电阻阻值的偏差。

以上所讨论的转换误差都是在输人、输出已经处于稳定状态下得出的,所以属于静态误差。此外,在动态过程中(即输人的数码发生突变时)还有附加的动态转换误差发生。假定在输入数码突变时有多个模拟开关需要改变开关状态,则由于它们的动作速度不同,在转换过程中就会在输出端产生瞬时的尖峰脉冲电压,形成很大的动态转换误差。

为彻底消除动态误差的影响,可以在D/A转换器的输出端附加取样-保持电路,并将取样时间选在过渡过程结束之后。因为这时输出电压的尖峰脉冲已经消失,所以取样结果可以完全不受动态转换误差的影响。

通常用建立时间tset来定量描述D/A转换器的转换速度。建立时间tset是这样定义的:从输入的数字量发生突变开始,直到输出电压进人与稳态值相差土1/2LSB范围以内的这段时间,称为建立时间tset, 如下图所示。

数-模转换和模-数转换_建立时间_09

A/D转换器

取样定理

为了保证能从取样信号将原来的被取样信号恢复,必须满足

数-模转换和模-数转换_有效位_10

也就是要满足抽样定理。

量化和编码

在进行A/D转换时,必须将取样电压表示为这个最小单位的整数倍。这个转化过程称为量化,所取的最小数量单位称为量化单位,用Δ表示。显然,数字信号最低有效位(LSB)的1所代表的数量大小就等于Δ。

将量化的结果用代码(可以是二进制,也可以是其他进制)表示出来,称为编码。这些代码就是A/D转换的输出结果。既然模拟电压是连续的,那么它就不一定能被Δ整除,因而量化过程不可避免地会引入误差。这种误差称为量化误差。

将每个输出二进制代码所表示的模拟电压值规定为它所对应的模拟电压范围的中间值,所以最大量化误差自然不会超过1/2Δ。当输人的模拟电压在正、负范围内变化时,一般要求采用二进制补码的形式编码。

在单片集成的A/D转换器中也采用分辨率(又称分解度)和转换误差来描述转换精度。分辨率以输出二进制数或十进制数的位数表示,它说明A/D转换器对输入信号的分辨能力。转换误差通常以输出误差最大值的形式给出,它表示实际输出的数字量和理论上应有的输出数字量之间的差别,一般多以最低有效位的倍数给出。

为获得较高的转换精度,必须保证供电电源有很好的稳定度,并限制环境温度的变化。对于那些需要外加参考电压的A/D转换器,尤其需要保证参考电压应有的稳定度。

A/D转换器的转换速度主要取决于转换电路的类型。此外,在组成高速A/D转换器时还应将取样-保持电路的获取时间(即取样信号稳定地建立起来所需要的时间)计人转换时间之内。一般单片集成取样-保持电路的获取时间在几微秒的数量级,和所选定的保持电容的电容量大小很有关系。

标签:误差,转换,电阻,输出,和模,电压,转换器
From: https://blog.51cto.com/u_15350455/5807877

相关文章

  • linux 中实现将fasta文件的碱基数目转换为指定的个数
     001、每行输出为4个碱基[root@pc1test]#lstest.fa[root@pc1test]#cattest.fa>chr1aattcctt>chr2ttggaacc>chr3TTCCGG[root@pc1test]#awk'{if($0~......
  • js图片格式转换(File、blob、二进制)
    一、File转Blob​​MDN文档createObjectURL​​​​​​<buttonclass="btn"onclick="openFile()">点我</button>functionopenFile(){varinput=document.createEle......
  • Struts2的类型转换
    使用标签注意:Struts2使用标签库找不到URI:[struts-tags]的taglib[s]问题解决[1]新建login2.jsp​文件,内容如下:<%@pagelanguage="java"contentType="text/html;cha......
  • golang日期格式转换
    在日常开发的过程中,经常会遇到前端或接口调用返回的时间格式的字符串转换为time格式落库的诉求,在转换格式的的过程中经常会遇到如下报错:问题的意思是,需要转换的字符串格式不......
  • 进制的转换
    十进制转换为其他进制:直接用取余法(注意最后重下往上排)其他到十进制:用数成对应的数权然后想加二到八:从右向左每三位得到一个数值然后排序写好即可(注意不足三位补零在左边......
  • 文件名编码转换工具
    简介基于python开发的编码转换工具,图形化界面基于pyside2(也就是qt5)开发。支持批量转换任意格式的文件编码;可将文件编码转为UTF-8BOM、UTF-8、GB2312中的任意一种......
  • Java 读取 Excel 模板,将数据填入Excel表格,后转换为PDF文件(实用)
    前言我在互联网上冲浪的时候,看到有的小伙伴说可以使用​​Excel​​模板,来实现这个功能。这个方式我是喜欢的~(ps:因为不要用代码去画表格,是真的舒服~)大致流程如下:编写一个E......
  • linux 中如何将一列数据转换为指定行的数据
     001、[root@pc1test]#cata.txt12345678910[root@pc1test]#awk-va=$(awk'END{if(NR%3!=0){printf("%d",NR/3+1)}else{printNR/3}}......
  • C++11 unistring 类(编码转换)
    C++11 的编码转换程序: #ifndefUNISTRING_HPP#defineUNISTRING_HPP#include<algorithm>#include<codecvt>#include<cstdio>#include<cstdarg>#include<i......
  • 标识符,数据类型,强制转换,分割线
    标识符(由类名,变量名,方法名)注:1.以字母(A~Z或a~z),美元符$,下划线开始首字符后用字母,$,下划线,数字不能用关键字做变量名标识符大小写敏感数据类型:强类型语言(要求变量......