ADC芯片型号很多,在精度、速度和价格方面千差万别,较为常见的ADC主要是逐次比较型和双积分型,还有电压-频率变换器(V/F变换器)构成的ADC。
双积分型ADC,精度较高,对周期变化的干扰信号积分为零,因此具有抗干扰性好、价格便宜等优点,但转换速度慢。
逐次比较型ADC,在转换速度上同双积分型相比要快得多。精度较高(例如12位及12位以上的),但是价格较高。
V/F变换型ADC,优点是具有很高的精度,其分辨率可达16位以上,价格低廉,但是转换速度不高。
1.ICL7109
ICL7109是一种高精度、低噪声、低漂移、价格低廉的双积分型12位A/D转换器。在要求速度不太高的场合,例如用于称重、测压力等各种传感器信号的高精度测量系统中时,可以采用廉价的双积分型高精度12位A/D转换器ICL7109。
ICL7109的主要特性如下:
1)高精度(精确到1/212=1/4096)。
2)低噪声(典型值位15μVP-P)。3)低漂移(小于1μV/℃)。
4)高输入阻抗(典型值1012Ω)。
5)低功耗(小于20mW)。
6)转换速度最快为30次/s,当采用3.58MHz晶体振荡器作为振荡源时,可达到7.5次/s转换。
7)片内带有振荡器,外部可接晶体或RC电路以组成不同频率的时钟电路。
8)12位二进制输出,同时还有1位极性位和1位溢出位输出。
9)输出与TTL兼容,以字节方式(分高、低字节)的三态输出,并具有UART挂钩方式,可以用简单的并行或串行接口接到微处理器系统中。
10)可以用(运行/保持)和STATUS(状态)信号监视和控制转换定时。
11)所有输入端都有抗静电保护电路。
ICL7109内部有一个14位(12位数据和1位极性、1位溢出)的锁存器和一个14位的三态输出寄存器,同时可以很方便地与各种微处理器直接连接,而无须外部加额外的锁存器。ICL7109有两种接口方式:一种是直接接口方式;另一种是挂钩接口方式。在直接接口方式中,当ICL7109转换结束时,由STATUS发出转换结束信号到单片机,单片机对转换后数据分高字节和低字节进行读数。在挂钩接口方式时,ICL7109提供工业标准的数据交换模式,适用于远距离的数据采集系统。
ICL7109为40线双列直插式封装,其引脚功能如图7-4所示。
ICL7109的引脚功能如下:
GND:接地端。
STATUS:状态输出,ICL7109转换结束时,该引脚发出转换结束信号。
POL:极性输出,高电平表示ICL7109的输入信号为正。
OR:过量程状态输出,高电平表示过量程。
图7-4 ICL7109引脚图
B1~B12:转换结果输出,三态,B12为最高位,B1为最低位。
TEST:此引脚仅用于测试芯片,接高电平时为正常操作,接低电平时则强迫所有位B1~B12输出为高电平。
LBEN:低字节使能端,当MODE和CE/均为低电平时,此信号将作为低位字节(B1~B8)输出的辅助选通信号;当MODE为高电平时,此信号将作为低位字节输出。
HBEN:高字节使能端,当MODE和CE/均为低电平时,此信号将作为高位字节(B9~B12)以及POL、OR输出的辅助选通信号;当MODE为高电平时,此信号将作为高位字节输出而用于信号交换方式。
片选端,当MODE为低电平时,它用作输出的主选通信号;当本脚为低电平时,数据正常输出;当本脚为高电平时,则所有数据输出端(B1~B12,POL、OR)均处于高阻状态。
MODE:方式选择,当输入低电平信号时,转换器为直接输入工作方式。此时可在片选和数据使能的控制下直接读取数据。当输入高电平脉冲时,转换器处于UART方式,并在输出两个字节的数据后,返回到直接输出方式。当输入高电平时,转换器将在信号变换方式的每一转换周期的结尾输出数据。
OI:振荡器输入。
OO:振荡器输出。
OS:振荡器选择。输入高电平时,采用RC振荡器;输入低电平时,采用晶体振荡器。
BOO:缓冲振荡器输出。
运行/保持输入。输入高电平时,每经8192个时钟脉冲完成一次转换。当输入低电平时,转换器将立即结束消除积分阶段并跳至自动调零阶段,从而缩短了消除积分阶段的时间,提高了转换速度。
SEND:输入,用于信号变化方式以指示外部器件能够接受数据的能力。
V-:负电源,-5V。
VRO:基准电压输出,一般为2.8V。
BUF:缓冲器输出。(www.daowen.com)
AZ:自动调零电容CAZ连接端。
INT:积分电容CINT连接端。
COMMON:公共模拟端。
INLO:差分输入低端。
INHI:差分输入高端。
VRI+:正差分基准输入端。
CR+:正差分电容连接端。
CR-:负差分电容连接端。
VRI-:负差分基准输入端。
V+:正电压,+5V。
ICL7109以直接方式与8031单片机的接口电路如图7-5所示。
图7-5 ICL7109与8031的直接接口连接方式
图7-5中,ICL7109的MODE端接地,使ICL7109工作在直接接口输出方式。
在电路图中,振荡器选择端(即OS端,24脚)接地,则ICL7109的时钟振荡器以晶体振荡器工作,内部时钟等于58分频后的振荡器频率,本电路中外接晶体为6MHz,则时钟频率=6MHz/58=103k Hz,积分时间=2048×时钟周期=20ms,与50 Hz的电源周期相同。积分时间为电源周期的整数倍,可抑制50Hz的串模干扰。
在模拟输入信号较小时,如0~409.6mV,自动调零电容CAZ可选为比积分电容CINT大一倍,以减少噪声。CAZ的值越大,噪声越小,如果CINT选为0.15μF,则:
CAZ=2CINT=0.33μF
通常由传感器来的微弱信号都要经过运算放大器放大成较大的信号,如0~4.096V。这时噪声的影响不是主要的,可把积分电容CINT选大一些以减小复零误差,使CINT=2CAZ。图7-5即为这种情况,选CINT=0.33μF,CAZ=0.15μF,通常CINT和CAZ可在0.1~1μF间选择。
积分电阻RINT=满度电压/20μA,当输入满度电压=4.096V时,RINT=200kΩ,此时基准电压和之间为2V,由电阻R1、R3和电位器R2分压取得。如满度电压为409.6mV,则RINT=20kΩ,基准电压=0.2V。
在本电路中,引脚接地,使芯片一直处于有效状态。(运行/保持)引脚接+5V,A/D转换连续进行。
A/D转换正在运行时,STATUS(状态)引脚输出高电平,STATUS引脚降为低电平时,由P2.6(A14)输出低电平信号到ICL7109的(高位字节允许),读高4位数据、极性和溢出位,由P2.7(A15)输出低电平信号(低位字节允许),读低8位数据。
在本例中尽管CE/LOAD接地,RUN/HOLD接+5V,A/D转换连续进行,但是,如果8031不查询P1.0引脚,就不会给信号,A/D转换的结果不会出现在数据总线D0~D7上,在不需要采集数据时,不会影响8031的工作。因此,这种方法可以简化设计,节省硬件和软件。
读取A/D转换后数据的另一种方法是用中断法,如图7-5的虚线所示,STATUS接到8031的一个中断输入引脚上而与P1.0断开。当需要读A/D转换后的数据时,开放中断,则当STATUS降为低电平时,使8031产生外部中断,在中断服务程序中12位数据要分两次读出,分别用控制,并能同时得到极性和是否溢出的标志。下面介绍ICL7109连接转换时的转换程序:
2.ADC0809(逐次逼近型ADC)
ADC0809是8位的A/D转换芯片,它是采用逐次逼近的方法完成A/D转换的。ADC0809的内部结构如图7-6所示。ADC0809由单一+5V电源供电;片内带有锁存功能的8路模拟多路开关,可对8路0~5V的输入模拟电压信号分时进行转换,完成一次转换的时间约需100μs;片内具有多路开关的地址译码器和锁存电路、高阻抗斩波器、稳定的比较器,256R电阻T型网络和树状电子开关以及逐次逼近寄存器。输出具有TTL三态锁存缓冲器,可直接接到单片机的数据总线上;通过适当的外接电路,ADC0809可对0~5V的双极性模拟信号进行转换。
图7-6 ADC0809的内部结构图
ADC0809采用28脚双列直插式(DIP)封装,引脚图如图7-7所示。各引脚功能如下:
图7-7 ADC0809引脚图
D7~D0:8位数字量输出引脚。
IN0~IN7:8路模拟量输入引脚。
VCC:+5V工作电压。
GND:地。
REF(+):参考电压正端。
REF(-):参考电压负端。
START:A/D转换启动信号输入端。
ALE:地址锁存允许信号输入端。
(以上两信号用于启动A/D转换)
EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。
OE:输出允许控制端,用以打开三态数据输出锁存器。
CLK:时钟信号输入端。
A、B、C:地址输入线,经译码后可选通IN0~IN7八个通道中的一个通道进行转换。A、B、C的输入与被选通的通道的关系见表7-2。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。