关键词:数据采集系统 A/D转换 ∑-△A/DC MAX1400
传统的数据采集系统大多采用Nyquist率ADC(积分型、逐次比较型、闪烁型等),当需要较高分辨率时(16bit以上),这些传统的A/D转换技术将面监很多困难,因为它们需要复杂的高阶模拟抗混迭滤波器、定时以及幅度误差都极小的采样-保持电路等,因而实现起来困难较大,成本很高。新型的∑-△A/D转换技术能够比较低的成本获得极高的分辨率(16bit以上),但速度不易做得很高,这一点非常符合不需要很高速率,但要求较高分辨率的数字音响产品,因而首先在音频领域得到了广泛应用。大多数数据采集系统对转换速率的要求低于音频,但要求较高,也很适合采用∑-△结构的ADC。为此,很多模拟器件制造商开发了专用于数据采集领域的∑-△ADC,并将数据采集普遍需要的模拟前端功能集成在一起,如多路复用器、可编程增益放大器(PGA)、增益及零点校正等。这样,整个数据采集系统只需单片IC即可实现,可以直接处理传感器输出的微弱信号,而且在简化设计的同时提高了系统性能并降低了成本。这类产品中具有代表性的有ADI的AD7714系列,Cirrus Logic的CS5521系 列,Maxim的MAX1400系列等。本文以MAX1400为例简单介绍这类IC的性能特点及应用要点。
1 内部结构
图1所示为MAX1400系列及其它同类产品普遍采用的结构。部分是一个高分辨率∑-△ADC(MAX1400为18bit),前端包括一个用来切换采样通道的多路复用器、用于隔离信号源内阻和后级电路输入阻抗的输入缓冲器;以及用来将低电平输入信号放大到适合A/D转换水平的程控增益放大器(PGA)。
除此之外,MAX1400内部还提供了一个小电流源,在进行系统自检时可以将其接入输入通道来检测传感器的完整性。三个独立的DAC用来校正三路输入信号中的直流成分,以使输入信号落在ADC的量程以内。
居于位置的∑-△ADC由一个二阶∑-△调制器和数字抽取滤波器组成,时钟产生及分频电路用于为ADC提供操作时钟。由多路开关选出的输入信号经缓冲、放大后送入∑-△调制器。∑-△调制器对输入信号以远大于Nyquist率的速度进行“过采样”,并将各样本转化为1bit分辨率的高速码流。同时对量化噪声频谱化“成形”处理,从而使大部分中量化噪声转移至基带以外。接下来,由数字抽取滤波器滤除带外噪声,再从高速码流中抽取出低速、高分辨率的码流。上述各部分电路受控于一个内部控制逻辑。控制逻辑通过串行接口接收用户控制命令并设置各部分电路的工作状态及参数,将转换结果通过串口送出。
2 编程要点
MAX1400内部各部分电路的工作状态由一组内部寄存器控制。这些内部寄存器包括8个可单独寻址的寄存器。其中,通信寄存器主要控制对内部寄存器的访问(寻址、读/写模式选择);两个全局设置寄存器主要用来选择模拟输入通道、设置∑-△调制频率、数字抽取滤波器抽取因子、数字滤波器频率响应和其它工作状态;特殊功能寄存器用于控制整个器件的关疡;三个传输函数寄存器分别用来设置对应于三个模拟输入通道的PGA增益和DAC偏移量;一个24bit的数据寄存器用于保存转换结果。一般情况下,每次访问MAX1400之前都要首先向通信寄存器写入一个8bit控制码,以便选定所要访问的寄存器以及读/写操作模式。只有一种情况例外,那就是当MAX1400工作在扫描模式时(全局设置寄存器中的SCAN位置1),在每次转换完成后可以直接读取24bit数据寄存器,而不必重新设置爱信寄存器。对于MAX1400的编程大体可分为四个方面:系统工作模式选择、模拟输入通道选择、通道增益和偏移量设置以及∑-△ADC工作参数设置。
系统工作模式选择通过编程通信寄存器、全局设置寄存器和特殊功能寄存器中的相位控制位来实现。MAX1400具有自动扫描所有通道和连续采样选定通道两种主要工作方式。另外还具有待机和掉电两种省电模式。
模拟输入通道选择通过编程全局设置寄存器1和2中的A1、A0、M1、M0和DIFF位来实现。通过这些控制位的编程,可以设定输入多路转换开关的工作方式(单端或差分),并选定需要采样的通道。
通道增益和偏移量由传输函数寄存器控制。三个传输函数寄存器分别对应于三个模拟输入通道,每个寄存器内均包含有设定PGA增益和DAC偏移量的代码。通过增益和偏移量的编程,可以将输入信号动态范围调整到ADC的量程之内,以充分利用ADC的有效测量范围。
对∑-△ADC工作参数的编程直接影响到整个数据采集系统的、速率和功耗等关键特性,这是该种类型的ADC所特有的。∑-△ADC主要由三部分组成:时钟产生电路,∑-△调制器和数字抽取滤波器。相应 软件编程也分为三个方面:时钟频率选择,调制频率选择,数字抽取因子和滤波器选择。时钟频率选择包括两个编程位:CLK和X2CLK,CLK用于选择两种系统默认的时钟频率之一(1.024MHz或2.4578MHz);X2CLK用于控2分频器,X2CLK=1时分频器使能,允许选择二倍于内部时钟频率的晶振或外部时钟。调制频率和调制频率,对应于两种内部时钟总共有8种调制频率可选。调制频率越高,相应的转换和转换速率越高,但功耗也越大。数字滤波器抽取因子由FS1、FS0两闰控制,它们直接影响到转换、转换速率和滤波器的陷波频点。如图2所示,数字抽取滤波器频率响应为梳状态滤波器,个陷波频点正好正应于数据输出速率,将陷波频点设置在工频位置将有利于抑制工频及其谐波的干扰。另外还有一个控制位FAST用来设置滤波器阶数。FAST=1时执行一阶梳状滤波(NINC1),FSAT=0时执行三阶梳状滤波(NINC3)。该位不影响数据输出速率和滤波器频响外形(陷波频点),只影响滤波器滚降速率(频宽)。当选择SINC1滤波时系统具有比较高的影应速率,在输入发生跳变时只需一个转换周期输出即可达到稳定。SINC3滤波响应较慢,对于输入阶跃需要三个以上转换周期的输出建立时间,但具有较高的转换。有关时钟频率、调制器和抽取因子编程与输出数据速率的关系见表1所列。
表1 数据输出速率与时钟频率、调制器频率位、滤波器选择的关系
时钟频率(MHz) | CLK | MF1 | MF0 | 输出数据速率(bps) | |||
FS1,FS0,(0,0) | FS1,SF0(0,1) | FS1,FS0(11,0) | FS1,FS0(1,1) | ||||
1.024 | 0 | 0 | 0 | 20 | 25 | 100 | 200 |
1.024 | 0 | 0 | 1 | 40 | 50 | 200 | 400 |
1.024 | 0 | 1 | 0 | 80 | 100 | 400 | 800 |
1.024 | 0 | 1 | 1 | 160 | 200 | 800 | 1600 |
2.4576 | 1 | 0 | 0 | 50 | 60 | 300 | 600 |
2.4576 | 1 | 0 | 1 | 100 | 120 | 600 | 1200 |
2.45761 | 1 | 1 | 0 | 200 | 240 | 1200 | 2400 |
2.4576 | 1 | 1 | 1 | 400 | 480 | 2400 | 4800 |
图3所示为MAX1400的编程及转换结果读取程序流程。该流程中MAX1400被设定为单通道连续采样模式。
3 典型应用
MAX1400采用SPI/QSPI兼容的三线串行接口,非常节省CPU的I/O口,也便于采用光电隔离,它的工作电流较低,比较适用于便携式测量仪表、4~20mA环路供电的变送器、压力变送器等领域。图4所示为MAX1400在压力变送器中的典型应用。该应用中采用同一个电源来产生传感器桥路激励电流和参考电压,这样在电源电压发生变动时它们所受到的影响能相互抵消,因此降低了对电压稳定度的要求,可以用同一个电源为MAX1400供电,同时产生桥路激励电流和参考电压。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。