STM32 逐次逼近寄存器型(SAR)模拟数字转换器(ADC)

发布者:sumig最新更新时间:2017-02-19 来源: eefocus关键字:STM32  SAR  模拟数字转换器  ADC 手机看文章 扫描二维码
随时随地手机看文章

是采样速率低于5Msps (每秒百万次采样)的中等至高分辨率应用的常见结构。

SAR ADC的分辨率一般为8位至16位,具有低功耗、小尺寸等特点。

这些特点使该类型ADC具有很宽的应用范围,例如便携/电池供电仪表、笔输入量化器、工业控制和数据/信号采集等。

顾名思义,SAR ADC实质上是实现一种二进制搜索算法。

所以,当内部电路运行在数兆赫兹(MHz)时,由于逐次逼近算法的缘故,ADC采样速率仅是该数值的几分之一。

SAR ADC的架构

尽管实现SAR ADC的方式千差万别,但其基本结构非常简单(见图1)。

模拟输入电压(VIN)由采样/保持电路保持。

为实现二进制搜索算法,N位寄存器首先设置在中间刻度(即:100... .00,MSB设置为1)。

这样,DAC输出(VDAC)被设为VREF/2,VREF是提供给ADC的基准电压。

然后,比较判断VIN是小于还是大于VDAC。

如果VIN大于VDAC,则比较器输出逻辑高电平或1,N位寄存器的MSB保持为1。

相反,如果VIN小于VDAC,则比较器输出逻辑低电平,N位寄存器的MSB清0。

随后,SAR控制逻辑移至下一位,并将该位设置为高电平,进行下一次比较。

这个过程一直持续到LSB。上述操作结束后,也就完成了转换,N位转换结果储存在寄存器内。

图2给出了一个4位转换示例,y轴(和图中的粗线)表示DAC的输出电压。

本例中,第一次比较表明VIN < VDAC。所以,位3置为0。

然后DAC被置为0100,并执行第二次比较。由于VIN > VDAC,位2保持为1。

DAC置为0110,执行第三次比较。根据比较结果,位1置0,

DAC又设置为0101,执行最后一次比较。

最后,由于VIN > VDAC,位0确定为1。

注意,对于4位ADC需要四个比较周期。

通常,N位SAR ADC需要N个比较周期,在前一位转换完成之前不得进入下一次转换。

由此可以看出,该类ADC能够有效降低功耗和空间,当然,也正是由于这个原因,

分辨率在14位至16位,速率高于几Msps (每秒百万次采样)的逐次逼近ADC极其少见。

SAR ADC的另一个显著的特点是:功耗随采样速率而改变。

这一点与闪速ADC或流水线ADC不同,后者在不同的采样速率下具有固定的功耗。

这种可变功耗特性对于低功耗应用或者不需要连续采集数据的应用非常有利(例如,用于PDA 数字转换器)。

SAR的深入分析

SAR ADC的两个重要部件是比较器和DAC,稍后我们可以看到,

图1中采样/保持电路可以嵌入到DAC内,不作为一个独立的电路。

SAR ADC的速度受限于:

  • DAC的建立时间,在这段时间内必须稳定在整个转换器的分辨率以内(如:½ LSB)

  • 比较器,必须在规定的时间内能够分辨VIN与VDAC的微小差异

  • 逻辑开销

DAC

DAC的最大建立时间通常取决于其MSB的建立时间,原因很简单,MSB的变化代表了DAC输出的最大偏移。

另外,ADC的线性也受DAC线性指标的限制。因此,由于元件固有匹配度的限制,

分辨率高于12位的SAR ADC常常需要调理或校准,以改善其线性指标。

虽然这在某种程度上取决于处理工艺和设计,但在实际的DAC设计中,元件的匹配度将线性指标限制在12位左右。

许多SAR ADC采用具有固有采样/保持功能的电容式DAC。

电容式DAC根据电荷再分配的原理产生模拟输出电压,由于这种类型的DAC在SAR ADC中很常用,所以,我们最好讨论一下它们的工作原理。

电容式DAC包括一个由N个按照二进制加权排列的电容和一个“空LSB”电容组成的阵列。

图3是一个16位电容式DAC与比较器相连接的范例。采样阶段,阵列的公共端(所有电容连接的公共点,见图3)接地,

所有自由端连接到输入信号(模拟输入或VIN)。采样后,公共端与地断开,自由端与VIN断开,在电容阵列上有效地获得了与输入电压成比例的电荷量。

然后,将所有电容的自由端接地,驱动公共端至一个负压-VIN。

作为二进制搜索算法的第一步,MSB电容的底端与地断开并连接到VREF,驱动公共端电压向正端移动½VREF。

因此,VCOMMON = -VIN + ½ × VREF

如果VCOMMON < 0 (即VIN > ½ × VREF),比较器输出为逻辑1。如果VIN < ½ × VREF,比较器输出为逻辑0。

如果比较器输出为逻辑1,MSB电容的底端保持连接至VREF。否则,MSB电容的底端连接至地。

接下来,下一个较小电容的底端连接至VREF,将新的VCOMMON电压与地电位进行比较。

继续上述过程,直至所有位的值均确定下来。

简言之,VCOMMON = -VIN + BN-1 × VREF/2 + BN-2 × VREF/4 + BN-1 × VREF/8 + ... + B0 × VREF/2N-1 (B_为比较器输出/ADC输出位)。

比较器

比较器需要具有足够的速度和精度,尽管比较器的失调电压不影响整体的线性度,

它将给系统传输特性曲线带来一个偏差,为减小比较器的失调电压引入了失调消除技术。

然而,还必须考虑噪声,比较器的等效输入噪声通常要设计在1 LSB以内。

比较器必须能够分辨出整个系统精度以内的电压,也就是说比较器需要保证与系统相当的精度。

SAR ADC与其它ADC结构的比较

与流水线ADC相比

流水线ADC采用一种并行结构,并行结构中的每一级同时进行一位或几位的逐次采样。

这种固有的并行结构提高了数据的吞吐率,但要以功耗和延迟为代价。

所谓延迟,在此情况下定义为ADC采样到模拟输入的时间与输出端得到量化数据的时间差。

例如,一个5级流水线ADC至少存在5个时钟周期的延迟,而SAR只有1个时钟周期的延迟。

需要注意的是,延迟的定义只是相对于ADC的吞吐率而言,并非指SAR的内部时钟,该时钟是吞吐率的许多倍。

流水线ADC需要频繁地进行数字误差校准,以降低对流水线上每一级闪速ADC (即比较器)的精度要求。

而SAR ADC的比较器精度只需与整体系统的精度相当即可。

流水线ADC一般比同等级别的SAR需要更多的硅片面积。

与SAR一样,精度高于12位的流水线ADC通常需要一些某种形式的微调或校准。

与闪速ADC相比

闪速ADC由大量的比较器构成,每个比较器包括一个宽带、低增益预放大器和锁存器。

预放大器必须仅用于提供增益,不需要高线性度和高精度,这意味着只有比较器的门限值才需具有较高的精度。

所以,闪速ADC是目前转换速率最快的一种架构。

通常需要折衷考虑闪速ADC的速度以及SAR DAC的低功耗和小尺寸特性。

尽管极高速的8位闪速ADC (以及它们的折叠/内插变种)具有高达1.5Gsps的采样速率,但很难找到10位的闪速ADC,

而12位(及更高位)闪速ADC还没有商用化的产品。

这是由于分辨率每提高1位,闪速ADC中比较器的个数将成倍增长,同时还要保证比较器的精度是系统精度的两倍。

而在SAR ADC中,提高分辨率需要更精确的元件,但复杂度并非按指数率增长。

当然,SAR ADC的速度是无法与闪速ADC相比较的。

与Σ-Δ转换器相比

传统的过采样/Σ-Δ转换器被普遍用于带宽限制在大约22kHz的数字音频应用。

近来,一些宽带Σ-Δ转换器能够达到1MHz至2MHz的带宽,分辨率在12位至16位。

这通常由高阶Σ-Δ调制器(例如,4阶或更高)配合一个多位ADC和多位反馈DAC构成。

Σ-Δ转换器具有一个优于SAR ADC的先天优势:

即不需要特别的微调或校准,即使分辨率达到16位至18位。

由于该类型ADC的采样速率要比有效带宽高得多,因此也不需要在模拟输入端增加快速滚降的抗混叠滤波器。

由后端数字滤波器进行处理。Σ-Δ转换器的过采样特性还可用来“平滑”模拟输入中的任何系统噪声。

Σ-Δ转换器要以速率换取分辨率。由于产生一个最终采样需要采样很多次(至少是16倍,一般会更多),

这就要求Σ-Δ调制器的内部模拟电路的工作速率要比最终的数据速率快很多。

数字抽取滤波器的设计也是一个挑战,并要消耗相当大的硅片面积。

在不远的将来,速度最高的高分辨率Σ-Δ转换器的带宽将不大可能高出几兆赫兹很多。

总结

综上所述,SAR ADC的主要优点是低功耗、高分辨率、高精度、以及小尺寸。

由于这些优势,SAR ADC常常与其它更大的功能集成在一起。

SAR结构的主要局限是采样速率较低,并且其中的各个单元(如DAC和比较器),需要达到与整体系统相当的精度。 

The ADC in STM32x microcontrollers uses the SAR (successive approximation register) principle,

by which the conversion is performed in several steps.

The number of conversion steps is equal to the number of bits in the ADC converter.

Each step is driven by the ADC clock.

Each ADC clock produces one bit from result to output.

ADC internal design is a switched-capacitor type.

The following figures (Figure 1 to Figure 6) explain the principle of ADC operation.

The example given below shows only the first steps of approximation

but the process continues till the LSB is reached.


关键字:STM32  SAR  模拟数字转换器  ADC 引用地址:STM32 逐次逼近寄存器型(SAR)模拟数字转换器(ADC)

上一篇:STM32 USB CAN 学习笔记 - 共享RAM的用法
下一篇:stm32的swd接口的烧写协议是否公开的呢?

推荐阅读最新更新时间:2024-03-16 15:33

STM32之中断与事件---一个使用GPIO作为外部中断的示例
1.GPIO的正确设置 GPIO_InitTypeDef GPIO_InitStructure; /* Enable GPIOD clock */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); /* Configure PD.03, PC.04, as input floating */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 ; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOD, &GPIO_InitSt
[单片机]
如何用ST-LINK给STM32下载HEX文件
这里介绍一种用ST-LINK通过JTAG(或者SWD)口下载HEX文件的方法。 接下来介绍的,这种方法是ST官网推荐的,使用的是ST官方的免费下载软件:STM32 ST-LINK utility 4.5.0 https://www.st.com/en/development-tools/stsw-link004.html 安装软件没有特别注意的地方,一直点击 Next(下一步)就可以。 安装好软件以后,软件界面如下: 掌握下载程序的方法,只需要会使用三个图标就可以。 第一个图标:Connect to the target 这个图标的作用是“连接器件”,点击以后,在硬件连接正确并通电的情况下,就会读出器件的ID号
[单片机]
如何用ST-LINK给<font color='red'>STM32</font>下载HEX文件
提升ADC分辨率的电路设计
许多数据采集系统都要求高精度和快速采集数据,以便允许该系统能够检测小信号并且能将更多的传感器通道聚集在同一系统。传感器通道越多,系统的外形就能够越小,成本和功耗也越低。远程光通信和医用设备(例如,CT扫描仪)即得益于快速和高精度的数据采集系统。在光功率系统(例如,激光泵)中,需要不断监视其功率水平。在这种数据采集系统中,对于需要≥90dB动态范围的输入激光功率,其激光控制环路响应时间要求具有1MSPS的采样率。在CT扫描仪中,数据采集系统必须具有16 b到22 b的分辨率,以便处理通过各种人体组织的宽动态范围的X射线信号。该系统需要大量的光检测器(较多的数据采集通道)和高精度数据采集以提高图像分辨率。   以上两个例子说明了系统要
[工业控制]
提升<font color='red'>ADC</font>分辨率的电路设计
stm32 独立看门狗
独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。 /* * 采用独立看门狗作为看门狗定时器 * 独立看门狗由内部专门的 40Khz 低速时钟驱动, * 即使主时钟发生故障,它也仍然有效 *000:预分频因子=4 // 最短时间 0.1 ms *001:预分频因子=8 // 最短时间 0.2 ms *010:预分频因子=16 // 最短时间 0.4 ms *011:预分频因子=32 // 最短时间 0.8 ms
[单片机]
STM32串口通信详解
一.数据通信方式 1.串行与并行通信 按数据传送的方式,通讯可分为串行通讯与并行通讯。 串行通讯:是指设备之间通过一根数据信号线,地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式,同一时刻只能传输一位(bit)数据。 并行通讯:是指使用 8、16、32 及 64 根或更多的数据线(有多少信号为就需要多少信号位)进行传输的通讯方式,可以同一时刻传输多个数据位的数据。 串行通讯与并行通讯的特性对比: 并行可以同时发送多位数据所以速度比串行的速度要快很多,但并行要的数据线也更多相对成本会更高,而且并行传输对同步要求较高,且随着通讯速率的提高,信号干扰的问题会显著影响通讯性能。 2.全双工、半双工及单工通讯 单工通信:
[单片机]
<font color='red'>STM32</font>串口通信详解
STM32实现单麦克风实时神经网络降噪
本文是基于NNoM神经网络框架实现的。NNoM是一个为单片机定制的神经网络框架,可以实现TensorFlow 模型的量化和部署到单片机上,可以在Cortex M4/7/33等ARM内核的单片机上实现加速(STM32,LPC,Nordic nRF 等等)。 NNoM和本文代码可以在后台回复:“麦克风降噪”领取。 STM32实现单麦克风实时神经网络(RNN)降噪演示 硬声创作者:麻博士在科研 这个例子是根据著名的 RNNoise (https://jmvalin.ca/demo/rnnoise/) 的降噪方法进行设计的。整体进行了一些简化和定点化的一些修改。 本例与RNNoise主要的区别如下: 此例子并非从RNN
[单片机]
<font color='red'>STM32</font>实现单麦克风实时神经网络降噪
stm32串口DMA方式发送数据
DMA发送数据 启动DMA并发送完成后,产生DMA发送完成中断,在DMA中断服务函数中执行以下操作: 在数据发送缓冲区内放好要发送的数据(此数据缓冲区的首地址必须要在DMA初始化时写入到DMA配置中去) 将数据缓冲区内要发送的数据字节数传给DMA通道(串口发送和接收不是同一个通道) 开启DMA,一旦开启,则DMA开始发送数据, 等待数据发送完成标志! 判断数据发送完成: 清DMA发送完成标志 关闭串口发送DMA通道 给前台(应用)程序设置一个软件标志位,说明数据发送完成。 DMA接收数据 串口接收DMA在初始化时就处于开启状态,一直等待数据的到来,串口中断IDLE在串口一直没有数据时,是不会产生的,
[单片机]
艾迈斯欧司朗推出全新用于CT探测器的512通道ADC
中国 上海,2024年2月26日——全球领先的光学解决方案供应商艾迈斯欧司朗 今日宣布,推出了首款用于CT探测器的512通道模拟数字转换器(ADC)AS5912,采用23mm×15mm球栅阵列(BGA)的紧凑型系统级封装解决方案。本款ADC具有高通道密度优势,可使CT模组达到更小像素,使CT扫描仪的成像质量达到较高的分辨率。 AS5912采用系统级封装,集成了硅片和电源去耦电容器以实现可靠性能,可降低客户的物料清单(BoM)成本,易于系统集成。 它在每个通道上设置模拟前端和模拟数字转换,具有低压差稳压器(LDO)并集成参考电压和温度传感器。片上自动校准功能可减少数据采集系统的开发工作量。 同时,本款ADC还降低了
[传感器]
艾迈斯欧司朗推出全新用于CT探测器的512通道<font color='red'>ADC</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved