ADC/DAC 教程

作者:Pat Sagsveen, 投稿人:DigiKey, 2017-09-13

https://www.digikey.cn/zh/articles/adc-dac-tutorial

如今的世界充满着各种数字信号和模拟信号。

这些信号表现不同,但通常都被用来帮助实现更大的目标。

  • ADC:

    想象你是负责控制 HVAC 装置的工程师。

    无论你打算使用哪种类型的微控制器或微处理器,它必须能够读取具有无限量值的模拟温度,

    并将其转换为分立步进中的二进制表示形式。这种二进制表示的模拟值将由微控制器或微处理器处理。

    这些数据将被 HVAC 装置用来帮助执行一个程序,以帮助维持稳定的环境。

    在处理需要由数字系统处理的模拟值时,模数转换器 (ADC) 是必不可少的。

  • DAC:

    同样的理论也向后适用于需要转换成模拟信号的数字信号。

    在线播放歌曲涉及到将数字信号转换为模拟信号的几个步进。

    主机设备从服务器接收到的信号将是原始模拟信号的二进制表示。

    侦听器无法解读此二进制数据的音频响应。

    原始信号是模拟的,所以最后的表示也应是模拟的。模数转换器 (ADC) 可以解决这个问题。

    这种类型的设备可以将一个被模数转换器编码的二进制代码转换回模拟电压。

对如今的工程师来说,将模拟信号和数字信号相互转换是一项不可避免的任务。

有很多不同类型的模数转换器和数模转换器。虽然它们的架构不同,但功能是类似的。

不能用模拟值来进行数字信号处理,这就跟讲法语的人跟讲德语的人无法交谈是一个道理,必须要有翻译员才行,

而 ADC 和 DAC 就相当于翻译员。

  • ADC的目标与作用:

    ADC “看到”模拟电压时,其工作就是在给定的时间段内将模拟电压转换为二进制码,这意味着它必须在瞬间完成对模拟电压的采样,然后确定 ADC 输出端的二进制值

    该器件每秒钟采样的数量将在其说明文档中被调出。

  • Sampling采样: S.R.(Sampling Rate采样率)与S.P.(Sampling Resolution“分辨率”)

    • 例如 Maxim Integrated 的 MAX1118EKA+T。

      该器件的采样率为100 kHz,即每秒钟对输入端的模拟电压采样 100,000 次。

      它能够在一秒钟内采集这么多样本,意味着可以通过使用二进制表示来精确地记录模拟电压。
    • 有时,ADC 的采样速率不够高,不足以准确地重建引起混叠的输入。这时,信号开始无法彼此区分或混叠。

      想象一下,数码摄像机每秒可拍摄 24 帧,对大多数应用来说是足够的,但要捕捉移动非常快的物体,可能就会导致图像扭曲。回想九十年代后期在电视上看录像带的效果,电视上的图像会不停闪烁,这是因为电视本身的刷新率比录像带的每秒帧数还要快。图像之所以会扭曲,是因为视频实际上是一连串图片的组合。视频实际无法呈现出每两幅图片之间发生的所有活动。ADC 也是同样的道理。
    • 为避免这种情况,应确保采样率至少比需要传输的最高频率高两倍。这通常被称为“奈奎斯特率”
    • 更高的采样率可以使设备更加精确,但这不是控制精度的唯一方法。

      这是一个将模拟信号转换为二进制码的过程,因此,有一定数量的离散步进可用于表示特定时间点的电压

      用来表示这个数字的位数是分辨率

      ADC 的分辨率越高,可采取的分立步进就越多

      为获取更多细节,应了解如何确定 ADC 可采取的步进的数量。

      ADC 的一个二进制输出可代表供电电压。

      如果供电电压是 10 V 并且有一个 8 位 ADC,可能会有 256 步。

      分辨率可通过等式 2^N 计算出来。“2”是一个常数,“N”代表位数。例如,等式 2^8 的结果是 256 步。

      如果供电电压是 10 V 并且有 256 步,那么每步是 39.0625 mV。针对每个步将会有不同的二进制码。

      如果在 ADC 上从低到高运行所有可能的输入选项,就可以看到结果呈现出楼梯的形状,这是 ADC 传递函数的图形表示。

      图 1 展示了使用 3 位 ADC 和 2 V 基准进行的转换。
  • ADC的类型:

    如前所述,ADC 有几种不同的架构。

    每一种类型的转换器都可以将模拟信号转换为数字输出,但在实现过程方面有细微的差别。

    三种最常见的 ADC 架构是SAR(逐次逼近寄存器 )∆∑(三角积分) 流水线转换器

    • SAR(逐次逼近寄存器 )对模拟输入进行采样并保存然后将其转换为数字信号并输出
    • ∆∑(三角积分)转换器取的是一段时间内所采样本的平均值,然后再转换为数字信号。
    • 流水线转换器将转换过程划分为多个阶段,以实现超快的转换速度

    这些转换器都各有优势和劣势。

    • SAR 架构易于使用,通常具有低功耗、低延时和高精度的优点。
    • ∆∑三角积分转换器具有分辨率极高、稳定性高、功耗低和成本低的优点,但工作速度要比 SAR 和流水线架构低很多。
    • 流水线 ADC 的工作速度和带宽相对较高,但分辨率较低,需要更多的功耗。

SciTech-EECS-ADC/DAC: 源自Digikey的模数/数模转换文章:原理、类型、特点、应用、推荐产品的更多相关文章

  1. ADC/DAC的一些参数

    1.LSB,Least Significant Bit LSB是指最低位一个bit的权值,比喻ADC是一把尺子,那LSB则是它的最小刻度.LSB=Vfs/(2^N),Vfs为full scale vo ...

  2. ADC/DAC设计常见40问

    本文章是关于ADC/DAC设计经典问答,涵盖时钟占空比.共模电压.增益误差.微分相位误差.互调失真等常见问题. 1. 什么是小信号带宽(SSBW)? 小信号带宽(Small Signal Bandwi ...

  3. 嵌入式硬件之ADC/DAC

    嵌入式硬件之ADC/DAC 写在前面 这几天在做一个寒假练项目,其中涉及到了音频的处理,ADC.DAC再次进入到了我的视野,并引起了我新的思考. 1.初次相识 记得去年七月份,本科毕业刚离校,就到研究 ...

  4. 对于adc dac使用细节

    1. 要更具内部线路图决定引脚分配,adc和dac绑定在一个线路上,所以设计的时候最好尽量间隔三个引脚以上,如果adc必须放到一起,请使用开关控制,但是dma等可能不能正常工作. 2.dac输出内部缓 ...

  5. Python猫 2021 文章小结,翻译竟比原创多!

    最近给自己放了两周的"长假",刷视频.看小说.玩游戏,就是不写文章不更新公众号. 半途而废的事情令得 2021 年的时间流逝加快,最后留下只是遗憾和不甘. 又到了新的一年,按照惯例 ...

  6. (转载)高速ADC的关键指标:量化误差、offset/gain error、DNL、INL、ENOB、分辨率、RMS、SFDR、THD、SINAD、dBFS、TWO-TONE IMD

    (一)一个基本概念 分贝(dB):按照对数定义的一个幅度单位.对于电压值,dB以20log(VA/VB)给出:对于功率值,以10log(PA/PB)给出.dBc是相对于一个载波信号的dB值:dBm是相 ...

  7. STC 单片机ADC实现原理

    模数转换器原理 数模转换器( analog to digitI converter,ADC),简称为A/D,ADC是链接模拟世界和数字世界的桥梁.它用于将连续的模拟信号转换为数字形式离散信号.典型的, ...

  8. AVR单片机教程——DAC

    本文隶属于AVR单片机教程系列.   单片机的应用场景时常涉及到模拟信号.我们已经会使用ADC把模拟信号转换成数字信号,本讲中我们要学习使用DAC把数字信号转换成模拟信号.我们还将搭建一个简单的功率放 ...

  9. ADC相关内容

    SFDR定义 无杂散动态范围(Spurious Free Dynamic range ,SFDR) 是衡量A/D和D/A数据转换器(ADC/DAC)的指标,表示在杂散分量干扰基本信号或导致基本信号失真 ...

  10. ADC驱动器或差分放大器设计指南

    作为应用工程师,我们经常遇到各种有关差分输入型高速模数转换器(ADC)的驱动问题.事实上,选择正确的ADC驱动器和配置极具挑战性.为了使鲁棒性ADC电路设计多少容易些,我们汇编了一套通用“路障”及解决 ...

随机推荐

  1. HttpServletRequest相关

    简介 获取客户端请求头及参数 获取提交给服务器的中文数据 简介 这个对象封装了客户端提交过来的一切数据. 获取客户端请求头及参数 package com.zhujunwei.httpServletRe ...

  2. MySQL高可用之PXC

    1.PXC简介 参考Percona官方https://www.percona.com/software/mysql-database/percona-xtradb-cluster   PXC(Perc ...

  3. 小程序自定义组件 - 插槽slot

    和 vue 的 slot 几乎是一模一样的. 这个学小程序就相当于复习了一把 vue, 还是很值的. 我们之前说组件是页面的一部分, 目的是为了代码复用, 作为组件封装者, 有时候需要设计一些让用户能 ...

  4. 如何反向绘制出 .NET程序 异步方法调用栈

    一:背景 1. 讲故事 这个问题源于给训练营里的一位朋友分析的卡死dump,在分析期间我需要知道某一个异步方法的调用栈,但程序是 .framework 4.8 ,没有sos后续版本独有的 !dumpa ...

  5. ShadowSql之开源不易

    ShadowSql集本人以前为公司内部开发的ORM之众长 再次进化而来,性能更好也更通用 其一.历时3个多月,已经发布了8个版本 在此期间深感做个开源项目非常的不易 好在现在本人想要的功能基本都已经开 ...

  6. 【语义分割专栏】先导篇:常用数据集(VOC、Camvid、Cityscape、ADE20k、COCO)

    目录 前言 mask模式 PASCAL-VOC2012 下载 数据集简介 数据加载(dataloader) CamVid 下载 数据集简介 数据加载(dataloader) Cityscape 下载 ...

  7. C#之CultureInfo.InvariantCulture

    number.ToString(CultureInfo.InvariantCulture) 是 C# 中一个重要的文化设置(Culture)相关的字符串格式化方法,它的作用是 确保数字在不同系统/语言 ...

  8. Intellij IDEA 设置JDK版本

    问题描述: 项目JDK版本不对 如果项目JDK版本不兼容,在编译或者启动项目的时候抛出如下异常提示信息: Error:(29, 34) java: -source 1.7 中不支持 lambda 表达 ...

  9. 「Log」NOIP 2023 游记

    Day 0 打了大半天板子,然后开摆. 打块,快下班的时候玩了猜词游戏. 回家睡大觉. Day 1 早上起床状态良好,收拾收拾就出门了,跟爸妈吃了肯德基,然后坐车到三校区. 才看到 cc0000 之前 ...

  10. Java常用类Object

    1 package com.lv.study.pm; 2 3 public class TestObject { 4 5 public static void main(String[] args) ...