文档库 最新最全的文档下载
当前位置:文档库 › 第二章 医学信号采集系统-2

第二章 医学信号采集系统-2

A/D和HI7159 A/D转换器精度优于0.005%,分辨率相当于17位二进制A/D转换器,而价格并不很高,这就为开发高精度的电压测量仪表创造了良好的条件。

ICL7135,AD7555和HI7159的使用及其与微型计算机的接口技术和MC14433类同,具体设计时还需查阅有关技术资料。

2.3.2 逐次比较式A/D芯片及其接口

1. ADC0809芯片及其接口

ADC0809是8路逐次比较式A/D转换器,它能分时地对8路模拟量信号进行A/D转换,结果为8位二进制数据,其结构如图2-4所示。

ADC0809由三大部分组成:

第一部分是8路输入模拟量选择电路,8路输入模拟量信号分别接到IN0到IN7端,究竟选择哪一路去进行A/D转换由地址锁存器与译码器电路控制。A,B,C为输入地址选择线,地址信息由ALE的上升沿打入地址锁存器。

第二部分是一个逐次比较式A/D转换器,START为启动信号,要求输入正脉冲信号,在上升沿复位内部逐次逼近寄存器,在下降沿启动A/D转换。EOC为转换结束标志位,“0”表示正在转换,“1”表示转换结束。CLOCK为外部时钟输入信号,时钟频率决定了A/D转换器的转换速率,ADC0809每一通道的转换约需(66~73)个时钟周期,

时间,这是ADC0809当时钟频率取640kHz时,转换一次约需100s

所能容许的最短转换时间。

图2-4 ADC0809原理结构图

第三部分是三态输出缓冲锁存器,A/D转换的结果由EOC信号上升沿打入三态输出缓冲锁存器。OE为输出允许信号,当向OE端输入一个高电平时,三态门电路被选通,这时便可读取结果,否则缓冲锁存器输出为高阻态。

图2-5为ADC0809的工作时序图。从图中可看出,在启动ADC0809

μ后才变为低电平,因而在用START启动0809转后,EOC约在10 s

换器后,不能立即通过检测EOC来判断转换是否结束,而应等待约μ再检测,否则会出现错误结果,编程时需要注意。

10s

图2-5 ADC0809时序图

ADC0809输出带有三态输出锁存器,因而可以不加I/O接口芯片,直接接到微机的总线上,图2-6为ADC0809与单片机8031接口的一个典型电路。

图2-6 ADC0809与单片机8031接口电路

图2-6中,ADC0809的时钟信号(CLOCK)由8031的ALE端

的输出脉冲经二分频得到,并将ADC0809作为8031的一个外扩并行I/O端口,由地址线P2.0和WR联合控制ADC0809的A、B、C端。P2.0还和RD联合控制ADC0809的OE端,来读取数据。

根据A/D转换器与微处理器连接方式以及智能仪器要求的不同,实现A/D转换软件的方式有多种,目前常用的控制方式有:程序查询方式、延时等待方式和中断方式。

1)程序查询方式

该方式是首先由微处理器向A/D转换器发出启动信号,然后读入转换结束信号,查询转换是否结束,若转换结束,可以读入数据,否则再继续读入转换结束信号进行查询,直至转换结束再读入数据。

这种方式比较简单,可靠性高,但由于微处理器把许多时间都消耗在查询上,因而效率低。

2)延时等待方式

该方式是指在向A/D发出启动信号后,先根据所采用的A/D转换器所需要的转换时间进行软件延时等待,延时程序执行完以后,A/D 转换过程也已结束,便可读入数据。但在这种方式中,为了保险起见,延时时间应略大于A/D转换所需要的时间。

这种方式的不足之处是占用了较多的时间,因而适合用于微处理器处理任务比较少的场合。这种方式的优点是可靠性较高,不占用查询端口。

3)中断方式

前两种方式中,在A/D转换的整个过程中,微处理器实际处于等待方式,因而效率比较低。在中断方式中,微处理器启动A/D转换后可转去处理其他事情,A/D转换结束便向微处理器发出中断申请信号,微处理器响应中断后再来读入数据。这样,微处理器与A/D转换器并行工作,提高了工作效率。

下面结合图2-6所示的ADC0809与8031的接口电路,说明查询、等待定时和中断这三种方式下的转换程序。转换程序的功能是将由IN0端输入的模拟电压转换为对应的数字量,然后再存入8031内部RAM 的30H单元中。

各种工作方式下的编程实现:

a. 查询方式

MOV DPTR, #0FEF8H ;指出IN0通道地址

MOV A, #00H

MOVX @DPTR, A ;启动IN0通道转换

MOV R2, #20H

DL Y: DJNZ R2, DL Y ;延时,等待EOC变低WAIT: JB P3.3, WAIT ;查询,等待EOC变高MOVX A, @DPTR

MOV 30H, A ;结果保存30H

b. 延时等待方式

MOV DPTR, #0FEF8H

MOV A, #00H

MOVX @DPTR, A

MOV R2, #48H

WAIT: DJNZ R2, WAIT ;延时约140us

MOVX A, @DPTR

MOV 30H, A

c. 中断方式

主程序:

MAIN: SETB IT1 ;选INT1为边沿触发SETB EX1 ;允许INT1中断

SETB EA ;打开中断

MOV DPTR, #0FEF8H

MOV A, #00H

MOVX @DPTR, A ;启动A/D转换

……;执行其他任务中断服务程序:

INTR1: PUSH DPL ;保护现场

PUSH DPH

PUSH A

MOV @DPTR, #0FEF8H

MOVX A, @DPTR ;读转换结果

MOV 30H, A ;结果存30H

MOV A, #00H

MOVX @DPTR, A ;启动下一次转换

POP A ;恢复现场

POP DPH

POP DPL

RETI ;返回

2. AD574芯片及其接口

AD574是12位快速逐次比较式A/D 转换器,其最快转换时间为25us ,转换误差为±1 LSB 。

AD574具有下述几个基本特点:(1)片内含有电压基准和时钟电路等,因而外围电路较少;(2)数字量输出具有三态缓冲器,因而可直接与微处理器接口;(3)模拟量输入有单极性和双极性两种方式。其中,单极性:0V ~10V 或0V ~20V ;双极性:-5V ~+5V 或-10V ~+10V 。

图2-7为AD574的原理与引脚图。

图2-7 AD574原理与引脚图

CS: 片选信号,低电平有效。

CE: 片使能信号,高电平有效。

R/C: 读/启动转换信号,高时读A/D 转换结果,低时启动A/D 转换。

12/8:输出数据长度控制信号,高为12位,低为8位。

A 0: 该信号具有两种含义:当R/C 为低时,A 0为高,启动8位A/D

转换,A 0为低,启动12位A/D 转换。当R/C 为高时,A 0为高,输出低

4位数据,A 0为低,输出高8位数据。

上述5个信号的组合所对应的A/D 转换器的状态如表2-1所示。 STS: 工作状态信号,高表示正在转换,低表示转换结束。 REF IN: 基准输入线。

REF OUT: 基准输出线。BIP OFF: 单极性补偿。

DB

11~DB

: 12位数据线。

10V

IN ,20V

IN

: 模拟量输入端。

表2-1 AD574的操作

图2-8为AD574与8031单片机的一个接口电路。图中,8031的高8位地址P2.

0~P2.7没有使用,编程时可采用寄存器间接寻址方式。其中启动A/D的地址为1FH,读出低4位数地址为7FH,读出高8位数地址为3FH。

图2-8 AD574与8031单片机的接口电路

图中STS可有三种接法以对应三种控制方式:如果STS空着,单片机只能采取延时等待方式,在启动转换后,延时25us以上时间,再读入A/D转换结果;如果STS接单片机一条端口线,单片机就可以用查询的方法等待STS为低后再读入A/D转换结果;如果STS接单片机外部中断线,就可以在引起单片机中断后,再读入A/D转换结果。

下面以延时等待方式为例来进行编程控制。

MOV R0, #1FH ;启动

MOVX @R0, A

MOV R7, #10H ;延时

DJNZ R7,$

MOV R1, #7FH ;读低4位

MOVX A, @R1

MOV R2, A ;存低4位

MOV R1, #3FH ;读高8位

MOVX A, @R1 ;存高4位

MOV R3, A

SJMP $

图2-9 AD574双极性模拟输入接线方式

图2-8是按单极性模拟输入的方式接线,对于双极性模拟输入方式,则把REF IN,REF OUT和BIP OFF三个引脚按图2-9进行连接。

2.4 高速数据采集与数据传输

在微型计算机数据采集装置的设计中存在着一个很重要的问题,即高速数据采集与数据传输速率之间的协调。这不仅与A/D转换器转换速率有关,还与A/D转换的控制方式以及数据传输方式相关。数据传输主要有程序控制的数据传输、DMA传输、基于数据缓存技术的高速数据传输等多种方式。下面分别加以介绍。

1. 程序控制的数据传输方式

这种方式是指通过CPU执行程序来控制A/D转换与数据传输的方式,例如前几节讨论的查询方式、延时等待方式、中断方式等均属于这种方式。

在程序控制的A/D转换和数据传输方式下,每传输一个数据,CPU 都要执行若干条指令,这对于高速数据采集以及要求成批交换数据的场合,就显得速度较慢了。例如要求一个A/D转换器实时采集一批数据,并传输到微型计算机系统中的一段存储区域内。若采用程序控制的方法,编制的控制程序要完成下列几项工作:首先,它必须建立一个指向缓冲区的存储器地址指针,并且每传输一个数据都要使地址指

针加1;第二,它还必须确定所传输数据的字节数目,并以此作为测试是否需要终止传输循环的依据;第三,采用查询、延时等待或中断方式控制A/D转换的过程并将转换的数据传输到微型计算机系统中。若上例中的微型计算机系统采用IBM-PC机(或单片机系统),可以估算出,每传输一个字节数据需要长达10μs左右的时间。

近年来,随着CPU时钟频率和总线速度大幅度的提升,这种数据传输方式的速度也有很大的提高,但是相对地说,这种方式的传输速度不高。因此,程序控制的数据传输方式一般只能使用于速度较慢的应用场合。

2. DMA控制的数据传输方式

DMA方式即在DMA控制器控制下的直接存储器存取方式,在这种方式下,外设与内存之间的数据传输过程不再由CPU控制,而是在DMA控制器的控制和管理下进行直接传输,从而提高了传输速度。

例如在PC机系统中进行DMA传输时,CPU将让出对总线的控制权,而由DMA控制器暂时控制,其过程可用图2-23来说明。

图2-23 DMA传输示意图

DMA控制器中的地址寄存器和计数器都是可寻址的。在DMA控制器工作之前,必须在主程序中用指令对DMA控制器初始化:预置地址寄存器的初值,即存储器中要传输数据区的首地址;预置计数器初值,即传输字节总数;预置状态或控制寄存器来决定读或写操作等。初始化之后便可启动外设。当外设准备好数据后,就向DMA发出DMA 请求。DMA接受申请后又转向CPU发出总线请求信号。CPU在结束当前机器周期后,即响应DMA申请并“脱开”系统总线。DMA接管总线控制权之后,就在地址总线上发出所要读/写的存储单元地址以及控制存储器和I/O设备的读、写信号,实现I/O设备与存储器之间的一个字节的传输。然后DMA控制器内的地址寄存器加1,计数器减1,

再实现下一次传输过程。这样循环操作,直至计数器值为零,表示数据传输完毕。最后,DMA控制器撤消向CPU提出的总线请求信号,CPU接管总线控制权后继续执行有关程序。

在上述DMA传输过程中,传输字节数据的途径是I/O设备接口、总线和存储器接口,并不经过DMA控制器,因而速度很快。在大多数情况下,DMA方式传输一个字节只需要两个时钟周期的时间。除此之外,CPU在现行指令的每个机器周期结束即可响应DMA,故CPU 响应DMA请求的最大延时不会超过一个机器周期。

PC机采用DMA传输方式后使数据传输的速率得到很大的提高,但在DMA传输过程中,由于CPU“脱开”系统总线不再工作,因而CPU的工作效率较低。此外,传输速率还受到DMA控制器芯片最高工作频率的限制,例如DMA控制芯片8237A的最大工作频率为3MHz。

为了提高CPU的工作效率,许多现代高性能DSP芯片内含有多个在片(on-chip)DMA控制器,并提供专门的DMA传输总线,可以在几乎不需要处理器核干预的情况下就能完成数据的DMA传输。这样,就使处理器核从内存与外设的数据传输中解放出来,而去执行更重要的工作。由于处理器核的运行与数据传输并行工作,工作效率很高。

3、基于高速数据缓存技术的数据传输方式

在一般的高速数据采集系统中,微处理器控制的数据传输速率及有关数据处理的速度与前端A/D转换器的采集速度往往是不一致的,为了协调它们之间的工作,可以在两者之间加入数据缓存器进行缓冲,使前端采集数据与后级数据处理异步工作。另外,在多微处理器系统应用场合,各微处理器系统的工作也不可能完全同步,当它们之间需要高速传输数据时,也可以采用高速数据缓存技术。总之,在系统或模块之间,如果没有能够高速传输数据的接口,极易造成瓶颈堵塞现象,影响整个系统的处理能力。

目前采用比较多的数据缓存方式是:基于双口RAM的高速数据缓存方式和基于FIFO的高速数据缓存方式。

2.5 模拟量输出通道

2.5.1 D/A转换器概述

1. D/A转换原理

D/A转换器是由电阻网络、开关及基准电源等部分组成,目前基本都已集成于一块芯片上。为了便于接口,有些D/A芯片还含有锁存

器。D/A 转换器的组成原理有多种,采用最多的是R-2R 梯形网络D/A 转换器,图2-28为一个4位D/A 转换器的原理图。

图2-28 R-2R 梯形网络D/A 转换原理

由图2-28可见,D/A 转换器电阻网络中电阻的规格仅为R ,2R 两种。U R 为基准电压,它可由内电子开关S 3 ,S 2 ,S 1 ,S 0 ,在二进制码D= D 3 D 2 D 1 D 0 的控制下分别控制4个支路,并使电流各自进入A 3 ,A 2 ,A 1 ,A 0 4个结点。这种网络的特点是:任何一个结点的三个分支的等效电阻都是2R ,因此由任一个分支流进结点的电流都为I=R

U R 3,并且I 将在结点处被平分为相等的两个部分,经另外两个分支流出。现假设数字输入D=0001,即S 0被接通,S 1 ,S 2 ,S 3断开(如图所示状态),则基准U R 经开关S 0流入支路所产生的电流为I=R U R 3,此电流经过A 0 ,A 1 ,A 2 ,A 3 等4个结点,经4次平分而得161I 注入运算电路,以便将电流信号转换为电压信号。设反馈电阻R fb =3R ,则运算放大器输出端产生的电压

R R U R R U R I Uo 42

133161316-=??-=?-= 根据叠加原理,可以得出D 为任意数时四位D/A 转换器的总输出电压

D U D D D D U Uo R R ?--=?+?+?+?-=4001223342

)2222(21 当U R 为正时,D/A 转换器输出Uo 为负,反之为正。

2. D/A 转换器的主要技术指数

1. 分辨率

D/A 转换器的分辨率定义为:当输入数字发生单位数码变化时所对应模拟量输出的变化量,具体表达方式与A/D 转换器分辨率基本一致。

2. 转换精度

转换精度是指在整个工作区间实际的输出电压与理想输出电压之间的偏差,可用绝对值或相对值来表示。转换精度包含了造成D/A 转换器误差的所有因素。与A/D 转换器一样,转换精度指标有时以综合误差方式来描述,有时用分项误差的方式来描述,具体各分项误差的含义与A/D 转换器的定义基本一致,不再赘述。

3. 转换时间

指当输入的二进制代码,从最小值突跳到最大值时,其模拟量电压达到与其稳定值之差小于±2

1LSB 所需的时间。转换时间又称稳定时间,其值通常比A/D 转换器的转换时间要短得多。

4. 尖峰误差

尖峰误差是指输入代码发生变化时而使输出模拟量产生的尖峰所造成的误差。如图2-29(a)所示,产生尖峰的原因是由于诸开关在切换过程中响应时间不一致和寄生参数所致。

尖峰持续的时间虽然很短,但幅值可能很大,在某些应用场合必须施加措施予以避免。由于尖峰的出现是非周期的,因此不能用简单的滤波方法来消除,常用的方法是采用一单稳电路和S/H ,利用单稳的延迟时间来躲过尖峰。其消峰原理如图2-29(b )所示。

图2-29 D/A 转换器尖峰误差及消峰原理

3. D/A 转换电路输入与输出形式

D/A 转换器的数字量输入端可以分为:不含数据锁存器;含单个

数据锁存器;含双数据锁存器三种情况。第一种与微型计算机接口时一定要外加数据锁存器,以便维持D/A 转换输出稳定。后两种与微型计算机接口时可以不外加数据锁存器。第三种可用于多个D/A 转换器同时转换的场合。

D/A 转换器的输出电路有单极性和双极性之分。图2-30所示的电路是将一个8位D/A 转换器连接成单极性输出方式的电路,其输出输入关系式为D V U REF OUT ?-=82

,即输出为全正或为全负。其数字量与模拟量的关系如图2-30(b )所示。

图2-30 D/A 转换器单极性输出电路

在实际使用中,有时还需要双极性输出,如输出为-5V ~+5V 、-10V ~+10V 。图2-31给出了将D/A 芯片连接成双极性输出的电路图,其原理是:基准电压V REF 经R 1向A 2提供一个偏流I 1,A 1的输出U 1经R 2向A 2提供偏流I 2,因此运算放大器的输入为偏流I 1 ,I 2 之代数和。由于R 1与R 2的比值为2:1,因此,输出电压U OUT 与基准电压V REF 及A 1输出电压的关系为)2(1REF V U Uout +-=。其数字量与模拟量的关系如图2-31(b )所示。

图2-31 D/A 转换器双极性输出电路

2.5.2 D/A 转换器与微型计算机接口

1. D/A 转换原理

1)8位D/A 转换器DAC0832及其与微型计算机接口

DAC0832是含有双输入数据锁存器的D/A 数模转换器,其内部原理框图如图2-23所示。

图2-32 DAC0832内部原理框图

DAC0832内部的LE 为寄存命令,当LE 为1时,寄存器的输出数据随输入变化;当LE 为0时,数据被锁存在寄存器中,而不再随数据总线上的数据变化而变化。其逻辑表达式为

1)1(WR CS I LE LE ??=

由此可见,当I LE 为1,CS 和WR 为0时,)1(LE 为1,允许数据输入;而当1WR 为1时,)1(LE 为0,数据被锁存。能否进行D/A 转换,除了取决于)1(LE 外,还有赖于)2(LE 。由图可见,当2WR 和XFER 均为低电平时,)2(LE 为1,

此时允许数据通过并进行D/A 转换,否则当)2(LE 为0时,将不允许数据通过。

在与微处理器接口时,DAC0832可以采用双缓冲方式(两级输入锁存),也可以采用单缓冲方式(只用一级输入锁存,另一级始终直通),或者接成全直通的形式,再外加锁存器与微型计算机接口,因此,这种D/A 转换器使用非常灵活方便。

图2-33给出了DAC0832与8031单片机连接成单缓冲方式的接口

电路。它主要应用于只有一路模拟输出,或有几路模拟量输出但不需要同步的场合。在这种接口方式下。二级寄存器的控制信号并接,即将1

WR与2

WR同时与8031的WR端口相接,CS和XFER相连接到P2.0 ,使DAC0832作为8031的一个外部I/O装置,口地址为#FEFFH。这样,8031对它进行一次写操作,输入数据便在控制信号的作用下,直接打入0832内部的DAC寄存器中锁存,并由D/A转换成输出电压。其相应的程序如下:

……

MOV DPTR, # 0FEFFH ;给出0832的地址

MOV A, # DATA ;欲输出的数据装入A

MOVX @ DPTR, A ;数据装入0832并启动D/A转换

图2-33 DAC0832单缓冲接口电路

如果需要二路以上的模拟量同步输出,则DAC0832必须按双缓冲方式连接,图2-34给出了DAC0832与8031单片机按这种方式连接的接口电路。按照图中连接,两片DAC0832输入寄存器的地址分别为FEFFH和FDFFH,两片0832的DAC寄存器地址都为FBFFH。设欲输出的数据置于R2,R3中,可编制相应的程序段如下:

MOV DPTR, # 0FEFFH

MOV A,R2

MOVX @ DPTR, A ;数据送1#0832输入寄存器

MOV DPTR, # 0FDFFH

MOV A,R3

MOVX @ DPTR, A ;另一数据送2#0832输入寄存器

MOV DPTR, # 0FBFFH

MOVX @ DPTR, A ;1#、2#D/A转换器同时输出2)12位D/A转换器DAC1208与微型计算机接口

为了提高精度,有时需要用到10,12,16位等高精度D/A转换器。

下面以DAC1208系列为例,说明十二位D/A转换器原理及接口技术。

图2-34 DAC0832双缓冲接口电路

DAC1208系列是与12位微处理器兼容的双缓冲D/A转换器,它包括DAC1208,DAC1209,DAC1210等各种型号的产品。DAC1208系列带有两级缓冲器,第一级缓冲器由高8位输入寄存器和低4位输入寄存器构成;第二级缓冲器即12位DAC寄存器。此外,还有一个12位D/A转换器。DAC1208的控制信号与DAC0832极其相似,所不

BYTE。当此端输入为高电同的是增加了一个字节控制信号端BYTE1/2

平时,12位数字量同时送入输入寄存器;当此端输入为低电平时,只将12位数字中的低4位送到对应的4位输入寄存器中。其他控制信号CS,2

WR及XFER与DAC0832的用法类同。

当DAC1208系列D/A转换器与16位微处理器一起使用时,它的12位数据输入线可直接与微处理器的数据总线接口。但当DAC1208系列与8位微处理器一起使用时,则需分步传输。DAC1208与8031单片机接口电路示意图如图2-35所示。它是先将高8位和低4位数据分别送入DAC1208的二个输入寄存器中,再将12位数据同时送入DAC寄存器。

设有一个12位的待转换的数据存放在内容DATA及DATA+1单元中,其存放顺序为:(DATA)存高8位数据,(DATA+1)存低4位数据(存放在该单元的低半字节上)。则把这个数据送往D/A转换器的程序段为:

MOV DPTR, # 0FDFFH

MOV A, DATA

MOVX @ DPTR, A ;输出高8位数据

DEC DPH

MOV A, DATA+1

MOVX @ DPTR, A ;输出低4位数据

MOV DPTR, # 7FFFH

MOVX @ DPTR, AM ;12位数据同时送DAC寄存器

图2-35 DAC1208与8031单片机接口电路示意图

2. D/A转换器应用举例

1)锯齿波的产生

在许多应用中,都要求产生一个线性增长的锯齿波电压,用来控制电子束的扫描或驱动记录笔的移动。采用图2-33所示的接口电路产生锯齿波电压的程序段如下:

MOV DPTR, #0FEFFH ;给出DAC0832口地址

MOV A, # 00H

LOOP: MOVX @ DPTR, A

INC A

MOV R0, # DATA ;改变#DATA,用以延时

DJNZ R0, $

SJMP LOOP

上述程序执行后在示波器上能观察到如图2-36所示的连续锯齿波。实际上,从零增长到最大电压中间有256个小台阶,但从宏观上看则为线性增长的电压波形,

图2-36 连续锯齿波形图

2)任意波形的产生

产生一个高精度的任意时间函数曲线,在科学实验中也是经常需要的。实际应用中,可采用事先存储数据然后顺序输出的方法来实现,这种方法比运算法速度快且曲线形状修改灵活简便,下面以一个正弦信号的产生为例来说明实现的原理。

若要求产生有正负电压输出的正弦波,则要采用如图2-37所示的双极性输出形式的电路。编程前先进行离线计算工作,本例将360度分为256个点,则每两点的间隔约1.4度,然后计算每个点的电压所对应的数字量,并将这些数值列成一个表格编入程序中,计算正弦波表的示意图如图2-38所示。

图2-37 DAC0832双极性输出形式的接口电路

运用时,只要反复输出这组数据到DAC,就可在DAC的输出端获得正弦波。具体输出程序段如下:

MOV R5, # 00H ;计数器赋初值SIN: MOV A,R5

MOV DPTR, # TABH

MOVC A, @ A+DPTR ;查表得输出值

MOV DPTR, # 7FFFH ;指向0832

MOVX @DPTR, A ;转换

INC R5 ;计数器加一

AJMP SIN

TAB: DB 80H, 83H, 86H, 89H, 8DH, 90H,93H, 96H

DB 99H, 9CH, 9FH, A2H, A5H, A8H, ABH, AEH

DB B1H, B4H, B7H, BAH, BCH, BFH, C2H, C5H

DB C7H, CAH, CCH, CFH, D1H, D4H, D6H, D8H

DB DAH, DDH, DFH, E1H, E3H, E5H, E7H, E9H

……

图2-38 计算正弦波表的示意图

该方法虽然可以产生任意波形的信号,但由于受单片机程序控制方法的限制,不可能产生很高频率的信号波形。欲要采用纯数字方法产生高频信号的波形,可以采用直接频率合成(DDS)技术。DDS方法首先将一个周期正弦波(或其他波形)信号离散取样,并把样点的幅度数字量存入ROM中,然后按一定的地址间隔读出,经D/A转换后即可形成对应的模拟波形信号。很显然,若驱动ROM地址的时钟频率足够高,就可以获得很高频率的信号。目前已有专用的DDS集成电路芯片,其最高时钟频率可以达到1GHz,因而可以实现频率达到数百兆赫的正弦波信号源。有关DDS原理及其DDS集成电路芯片可查阅有关资料。

2.6数据采集系统

有一类相对简单但用途很广泛的智能仪器称为数据记录器,这类仪器通过调整一个内部定时器来规定每隔若干时间自动测量一个数据,并把数据直接或做成曲线显示或打印出来,这类仪器主要部分是一个数据采集系统。

2.6.4 数据采集系统的组成

数据采集系统简称DAS (Data Acquisition System ),目前已有不少厂家专门生产与各种微型计算机系统相配用的DAS插件板。微型计算机与DAS相配合可以完成各种测量任务,其通用性是很强的。随着集成技术的进步,数据采集系统的体积已从机箱、插件板到大部分器件可缩小到一块芯片内,甚至可将其中一部分置于微处理器之中。但其基本工作过程及基本组成仍保持不变。图2-39给出了一个较完整的DAS基本结构图。

图中上半部分为数据输入通道,多路模拟输入信号经多路开关依次接通并顺序输入,再经放大及滤波后被采样/保持器(S/H)采样并保持,使输入到A/D转换器的模拟量在保持时间内保持恒定,以保证A/D转换的准确性,A/D转换器转换后的数字量可经三态门送入总线,以便由微型计算机对采集的数据进行处理。图中下半部分为数据输出通道,其过程刚好相反,经处理后的数据通过锁存器送到D/A转换器,然后再在多路分配器的作用下依次输出。为了保持输出量的连续性,各路也要接入采样/保持电路。由此可见,一个完整的数据采集工作过程大致可分为三步。

1.数据采集

被测信号经过放大,滤波,A/D转换,并将转换后的数字量送入计算机。这里要考虑干扰抑制、转换准确度、采样/保持及与计算机接口等问题。

2.数据处理

由计算机系统根据不同要求对采集的原始数据进行各种数学运算。

3.处理结果的复现与保存

将处理后的结果在X-Y绘图仪、电平记录仪或CRT上复现出来,或者将数据存入磁盘形成文件保存起来,或通过线路进行远距离传输。

2.6.5 模拟多路开关及接口

多路开关的主要用途是把模拟信号分时地送入A/D转换器,或者把经计算机处理后的数据由D/A转换器转换成的模拟信号,按一定的顺序输出到不同的控制回路中去。前者称为多路开关,完成多到一的转换;后者称为反多路开关或多路分配器,完成一到多的转换。有时也把多到一和一到多开关分别叫做多路调制器和多路解调器。

图2-39 DAS的基本结构图

目前,智能仪器大多采用半导体多路开关,半导体多路开关种类很多,例如CD4051(双向8路)、CD4066(4路双向)、CD7501(单向8路)、CD4052(单向,差动,4路)等等。所谓双向,就是既可以实现多到一的转换,也可以完成一到多的转换。而单向则只能完成多到一的转换。差动即同时有两个开关动作,从而完成差动信号的传输。下面以CD4051为例说明多路开关在数据采集系统中的使用方法。

CD4051是双向8通道多路开关,其内部结构如图2-40所示。它由电平转换、译码/驱动和开关电路三部分组成,其中电平转换可实现COMS到TTL逻辑电平的转换,因此,加到通道选择输入端的控制信号的电平幅度可为3V~20V。同时,最大模拟量信号的峰值可达20V。CD4051带有三通道选择输入端A,B,C和一个禁止端INH。当CBA为000~111B时,可产生8选1 控制信号,使8路通道中的某一通道的输入与输出接通。当INH为0时,允许通道接通;当INH为1时,禁止通道接通。其真值表如表2-3所示。改变CD4051的IN/OUT 0~7及OUT/IN的传递方向,可用做多路开关和反多路开关。

使用禁止端INH,可以很方便地实现通道数的扩展,例如使用两片CD4051可组成16路的多路开关,其连接方法如图2-41所示。当通道

选择码D

3D

2

D

1

D

取0000~1111B之一时,便唯一地选中这16路通道中

相关文档
相关文档 最新文档