资讯详情

单片机A/D及D/A转换接口

1.单片机测控系统和模拟输入通道

1 、单片机测控系统概述

测控包括测和控两个过程。

所谓的测量是指实时收集被控对象的物理参数,如温度、压力、流量、速度和速度。这些参数通常是模拟量,即不断变化的物理量。

所谓控制,就是通过单片机计算和比较收集的数据来得出结论,从而校正和控制被控对象。但是单片机处理后得到的是数字结果。

测控系统离不开模拟量和数字量的相互转换。因此,模/数(A/D)与数/模(D/A)转换已成为测控系统的重要组成部分。

2、模拟输入通道

模拟输入通道的工作从采集信号开始。由于传感器采集的模拟信号振幅通常很小,连续变化的信号容易受到干扰,因此传感器采集的原始信号应放大、采样、维护、滤波A/D转换器。这一系列的处理过程构成了模拟输入通道,如下图所示。

图片

(1)传感器

传感器的主要功能是收集信号,并具有信号转换功能,即将收集到的非电信号转换为电信号(电压或电流),以便后续处理。传感器种类繁多,常用传感器如下:

① 温度传感器:用于将温度转换为电信号。

② 光电传感器:利用光电效应将光信号转换为电信号。

③ 湿度传感器:常用的湿度传感器有毛发湿度计、干湿球湿度计、金属氧化物湿敏元件等。

④ 流量传感器:用于测量液体和气体的流量。常用的流量传感器有速度流量计和体积流量计。

⑤ 压力传感器:用于大气压力(气压)测量和容器壁压力测量。

⑥ 机械量传感器:常用的机械量有拉力、压力、位移、速度、加速度、扭矩及荷重等。常见的机械量传感器有电阻应变片、力传感器、荷重传感器、位移传感器和转速传感器等。

⑦ 成分分析传感器:用于自动分析混合气体或混合物的成分。

⑧ pH值传感器:用于测量水溶液的pH值。

(2) 放大器

传感器获得的电压或电流信号往往较小,难以直接进行A/D模拟信号需要使用放大器进行放大。

放大器有很多种,但在模拟输入通道中使用的是一种具有高放大倍数和深度负反馈的直接耦合放大器,因为它可以计算输入信号(如比例、加、减、积分、减少、积分和微点等),所以它被称为操作放大器。操作放大器具有输入阻抗高、增益大、可靠性高、价格低、使用方便等特点。现在有各种特殊或通用的操作放大器可供选择。

(3)采样/维持电路

采样是为了跟踪输入信号的变化。其本质是将连续变化的模拟信号转换为时间上离散的采样信号。采样频率远高于模拟信号中的最高频率成分(一般为2.5倍)。

保持采样信号是为了保持一段时间,因为以后A/D转换需要一个时间过程。保持信号稳定,尽量保持信号不变。

在模拟输入通道中,采样电路入通道中合并,称为采样/保持电路。如下图所示。

(4) 滤波器

滤波可分为模拟滤波和数字滤波。

模拟滤波器由电子元件构建的滤波电路完成,可分为无源滤波器和有源滤波器。无源滤波器是由无源设备(电感、电容和电阻)组成的滤波电路。有源滤波器是由放大器、电容器和电阻组成的滤波电路。

数字滤波是通过程序平稳处理采样信号,以改善其有用信号,消除或抑制干扰信号。有多种数字滤波程序,如程序判断滤波程序、中值滤波程序、算术平均滤波程序、加权平均滤波程序、一级滞后滤波程序和复合滤波程序。

与模拟滤波器相比,数字滤波器具有许多优点,因此数字滤波器被广泛应用于现代测控系统。数字滤波器不仅不需要硬件设备,而且使用方便,只需在程序进入数据处理或控制算法之前添加一个滤波器程序。

(5) 多路转换

许多测控系统都是多路系统,以收集多路参数。在多路系统中,只要速度允许,就应该使用多通道共享一个A/D为了简化结构,降低成本,转换器的方案。需要在模拟输入通道中设置多路开关进行通道切换,以实现每个通道的循序渐进和分时连接。

二、A/D转换器接口

1 、8位A/D转换芯片与80C51接口

(1)ADC0809芯片

ADC0809采用逐步逼近的方式A/D转换原理可以实现8个模拟信号的分时采集,电影中有8个模拟选择开关,相应的通道地址定和翻译电路,转换时间为100 μs左右。ADC0809的内部逻辑结构如下图所示。

图中多路开关可选通8个模拟通道,允许8个模拟量分时输入,共用一个A/D转换芯片进行转换。地址锁与译码电路完成A、B、C 锁定和翻译三个地址位置,其翻译输出用于通道选择。8位A/D转换器由控制和时间电路、寄存器、树状开关和256逐步接近R由电阻阶梯网等组成。用于存储和输出转换的数字量的输出锁。

ADC0809各引脚功能如下:

IN7~IN0:模拟量输入通道。

A、B、C:模拟通道选择信号的地址线。A低位地址,C高位地址。可选择8个通道。

ALE:地址锁定允许信号。ALE上跳沿,A、B、C地址状态发送到地址锁存器。

START:转换启动信号。START上跳边时,所有内部寄存器清除0;START下跳边时,开始进行A/D转换;在A/D转换期间,START保持低电平。

D7~D0:数据输出线。

OE:输出允许信号。用于控制三态输出锁

转换到单片机的数据。OE=0,

输出数据线电阻高;OE=1,输出转换获得的数据。

CLK:外部时钟信号引入端。

EOC:转换结束信号。EOC=0,正在进行

转换;EOC=1,转换结束。VCC: 5 V电源。

VREF:参考电源。

(2)ADC0809与80C51接口

下图给出了ADC0809与80C51连接。8路模拟通道选择信号A、B、C连接最低3位地址A0、A1、A2(即P0.0、P0.1、P0.2)地址锁定允许信号ALE由P2.0控制,8路模拟通道的地址为FEF8H~FEFFH。

2 、12位A/D转换芯片与80C51接口

8位以上A/D转换芯片时,应考虑转换结果的分时读取。现在是12位A/D转换芯片AD574A举例说明。AD574A与80C接口的信号线连接部分如下图所示。

AD574A模拟输入端有两个,其中10个VIN电压范围为0~10 V,20VIN电压范围为0~20 V。在80C51系统中使用AD574A芯片的转换数据应分两次读取,分为高8位和低4位。分次读取的原因A0控制,引脚通常连接到地址线的最低位置A0。A0=0时,读高8位;A0=1时,读低4位。

  • R/C:读/启动转换信号。R/C=0为启动转换信号;R/C=1是读取信号。

  • STS:转换结束信号。转换期为高电平,转换结束时为低电平。

  • 12/8:输出位数选择信号。12/8=1时,12位输出,12/8=0时,8位输出。

  • CE:允许信号,高电平有效。参与数据的启动转换和读取控制。

3、A/D转换芯片应用说明

(1)芯片类型按原理划分

  • 积分型A/D转换器也称为双斜率或多斜率。A/D转换器。应用最广泛,精度高,抗干扰能力强。

  • 逐次逼近型A/D转换器。原理简单,实现方便,无时间延迟问题。

  • 闪烁型A/D转换器。最大的特点是速度快,但功耗大,电路复杂,芯片尺寸大。

  • ∑△型A/D转换器又称过采样。A/D转换器。虽然出现较晚,但具有分辨率高、价格低廉、抗干扰能力强等优点。

(2)输入电压信号

  • 单极性电压信号,各种A/D转换芯片有这种输入形式。一般允许电压变化范围为0~ 5 V、0~ 10 V和0~ 20 V等。

  • 双极形式的电压信号可以是正的,也可以是负的。虽然过引线输入,但芯片需要一对极性相反的工作电源来配合。

  • 差分信号是不共地的电压信号,两个极性差分信号需要输入两条信号线,在芯片上表示VIN 和VIN-。差分电压信号可以从零开始V一开始,它的变化范围可以是±2 V、±4 V、±5 V和±10 V等。

(3) 输出二进制代码形式

  • 二进制码A/D二进制代码输出转换芯片,其位数可分为8位、10位、12位、14位、16位、20位和24位。

  • BCD码A/D转换芯片输出多位BCD这种转换芯片的典型应用是在数字电压表中输出的BCD码可直接送LED或LCD显示。常见的BCD码A/D转换芯片的位数为3位半、4位半和5位半。

(4)A/D转换器分辨率

A/D转换器,转换量为电压,因此分辨率是输入电压信号变化的分辨率,A/D转换器位数越多,分辨率值越小,分辨率越强,即转换器对输入变化的敏感性越高。所以选择A/D将位数放在转换器的重要位置。

(5) A/D控制信号的转换器

A/D转换芯片中有一些控制信号,包括时钟信号、转换启动信号和转换结束信号等。这些信号应该在接口连接时处理。

1)时钟信号

时钟信号A/D转换需要时钟信号的配合,有些A/D转换芯片(例如AD571等)内部有时钟电路。A/D转换芯片(例如DC0808/0809等)内部没有时钟电路,所需时钟信号由外界提供。

2)转换启动信号

转换启动信号转换启动信号应由CPU提供,不同型号的A/D转换芯片对转换启动信号的要求不尽相同。有的要求脉冲信号启动,例如ADC0804、ADC0809等芯片,而有的芯片则要求电平信号启动,例如AD570、AD571和AD574等 。

(6) 转换结束与数据读取

A/D转换后得到的数字量数据应及时传送给单片机进行处理,在数据转换完成后,进行读取。

1)定时等待方式

对于一个A/D转换芯片来说,转换时间作为一项技术指标是已知且固定的,可用延时的方法等待转换结束,此即定时等待方式。

2)查询方式

A/D转换芯片都提供表明转换完成的状态信号,可以用查询方式,通过测试状态就可以知道转换是否完成。

3)中断方式

表明转换是否完成的状态信号(ADC0809为EOC)都可作为中断请求信号使用,从而可采用中断方式进行转换数据的传送。

三、D/A转换器接口

1、 D/A转换芯片

D/A转换芯片很多,现以DAC0832为例进行说明。

DAC0832为8位D/A转换芯片,单一+5 V电源供电,基准电压的幅度范围为±10 V,电流建立时间为1 μs,采用CMOS工艺,低功耗(20 mW),芯片为20引脚双列直插式封装。引脚排列如下图所示。

  • DI7~DI0:转换数据输入 。

  • CS:片选信号(输入),低电平有效。

  • ILE:数据锁存允许信号(输入),高电平有效。

  • WR1:第1写信号(输入),低电平有效。

  • XFER:数据传送控制信号(输入),低电平有效。

  • WR2:第2写信号(输入),低电平有效。

  • IOUT1:电流输出1。当数据为全1时,输出电流最大;为全0时,输出电流最小。

  • IOUT2:电流输出2。

  • RFB:反馈电阻端,即运算放大器的反馈电阻端,电阻(15 kΩ)已固化在芯片中。DAC0832是电流输出型D/A转换器,为得到电压的转换输出,使用时需在两个电流输出端接运算放大器,RFB即为运算放大器的反馈电阻。

  • VREF:基准电压,是外加高精度电压源,与芯片内的电阻网络相连接,该电压可正可负,范围为-10~+10 V。基准电压决定D/A转换器的输出电压范围,例如,若VREF接+10 V,则输出电压范围是0~-10 V。

  • DGND:数字地 。

  • AGND:模拟地  

    DAC0832的内部结构框图如下图所示,电阻解码网络包含在图中的8位D/A转换器中。输入通道由输入寄存器和DAC寄存器构成两级数据输入锁存,由3个“与”门电路组成控制逻辑,产生LE1和LE2信号,分别对两个输入寄存器进行控制。

2、 DAC0832单缓冲连接方式

所谓单缓冲连接方式,就是使DAC0832的两个输入寄存器中有一个(多为DAC寄存器)处于直通状态,另一个处于受控的锁存状态。在实际应用中,如果只有一路模拟量输出,或虽是多路模拟量输出但并不要求输出同步的情况下,就应当采用单缓冲方式。其连接如下图所示。

3 、DAC0832双缓冲连接方式

所谓双缓冲连接方式,就是把DAC0832的输入寄存器和DAC寄存器都接成受控锁存方式。在多路D/A转换中,如果要求同步输出,就应当采用双缓冲连接方式。DAC0832的双缓冲方式连接如下图所示。

 

四、 A/D与D/A转换器芯片的串行接口

1 、通过I2C总线的串行接口

对于有I2C总线接口的A/D或D/A转换芯片,可以通过I2C总线实现接口,现以A/D和D/A混合芯片PCF8591为例进行说明。

PCF8591由Philips公司生产,是一个比较典型的带I2C总线接口的A/D和D/A转换混合芯片,CMOS半导体工艺。A/D转换部分的模拟输入通道为4路,转换结果为8位,采用具有采样/保持电路的逐次逼近转换方式。D/A转换部分为1路模拟输出。双列直插式芯片的引脚排列如下图所示。

 

各引脚功能如下:

  • AIN3~AIN0:模拟信号输入。
  • A3~A0:引脚地址。
  • SCL、SDA:I2C总线接口信号。
  • OSC:外部时钟输入,内部时钟输出。
  • EXT:内外时钟选择,EXT=0选择内部时钟,EXT=1选择外部时钟。
  • Aout:D/A转换模拟量输出。
  • VDD、VSS:芯片电源。
  • VREF:参考电源。
  • AGND:模拟地。
  •  PCF8591的器件地址为1001,引脚地址由A2、A1和A0设定。一个系统最多可扩展8片PCF8591。
  • PCF8591片内有控制寄存器,单片机通过向该寄存器写入控制字来控制A/D和D/A转换,为此在转换前要进行写控制字传送。A/D转换部分读数据时先进行控制字的设置,以进行模拟通道选择、通道增量位和模拟信号输入形式(单端输入与差分输入)等设置。
  •  PCF8591芯片D/A转换部分写数据中的控制字的主要内容是设置模拟量输出允许位为1。随后每写入一个数据字节,转换结果就在AOUT端输出。 

 

 

 

 

 

 

 

 

 

 

 

 

2、 通过软件模拟的串行接口

对于没有串行接口的单片机芯片,可以使用软件模拟方法实现串行接口。以MAX187为例进行说明。MAX187是一个具有SPI总线的12位单模拟通道A/D转换芯片,内部有采样/保持电路,采用逐次逼近式转换方式,转换时间为10 μs。其引脚排列如下图。

各引脚功能如下:

  • AIN:模拟信号输入,有效电压范围为0 V~VREF。
  • DOUT:转换结果串行输出。
  • SCLK:时钟信号输入。
  • CS:片选信号。
  • SHDN:控制信号。该引脚接低电平,芯片处于低功耗状态;该引脚接高电平,芯片使用内部参考电源;该引脚悬空,芯片使用外部参考电源。
  • VREF:参考电源。
  • VDD:芯片电源。
  • GND:数字地和模拟地。

 

 

 

 

 

 

 

 

软件模拟串行接口的连接十分简单,只需80C51的3根口线分别连接MAX187的CS、SCLK和DOUT信号引脚,如下图所示。

 

标签: d酸碱度传感器ph模块4系列荷重传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台