医学信号数据采集系统课件_第1页
医学信号数据采集系统课件_第2页
医学信号数据采集系统课件_第3页
医学信号数据采集系统课件_第4页
医学信号数据采集系统课件_第5页
已阅读5页,还剩319页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字化医疗仪器第二章医学信号数据采集系统设计数字化医疗仪器第二章医学信号数据采集系统设计数字化医疗仪器第二章医学信号数据采集系统设计数字化医疗仪第一章医学信号数据采集系统学习要点一、能力培养要点1、模拟量输入通道的结构与调试能力。2、模拟量输出通道的结构与调试能力。3、数字化医疗仪器医学信号数据采集系统(基于单片机和PC机)软硬件的构成与调试能力。第一章医学信号数据采集系统学习要点一、能力培养要点第一章医学信号数据采集系统学习要点一、能力培养要点第一章二、主要习题1、A/D转换器的类型、质量评价水平的技术指标和特点是什么?2、ADC0809与8031单片机的接口电路与数据采集过程?3、12位AD574与8031单片机的接口电路特点?4、积分式MC14433A/D转换器与8031单片机接口工作原理?5、并行比较式高速ADC结构有何特点?6、D/A转换器主要技术参数是什么?二、主要习题1、A/D转换器的类型、质量评价水平的技术指标和二、主要习题1、A/D转换器的类型、质量评价水平的技术指标和二、主要习题7、DAC0832与8031单片机单、双缓冲接口电路工作原理?8、DAC0832与8031的输出接口电路应用方式?9、数据采集系统的基本组成和结构工作原理?10、采样定理的基本内容是什么?数据采集系统中为何要使用采样保持器?11、简述基于单片机的数据采集系统的工作原理。12、简述基于PC机的数据采集系统的工作原理。二、主要习题7、DAC0832与8031单片机单、双缓冲接口二、主要习题7、DAC0832与8031单片机单、双缓冲接口本章内容模拟量输入通道模拟量输出通道医学信号数据采集系统计本章内容模拟量输入通道本章内容模拟量输入通道本章内容模拟量输入通道数据采集系统是医学信号数字化的基础

人体的各种物理量,如生物电位、心音、体温、血压、血流、肌电、脑电、神经传导速度等,采用各种传感器将其变成电信号,经由诸如放大、滤波、干扰抑制、多路转换等信号检测及预处理电路,将模拟量的电压或电流送模/数转换器(A/D),变成适合于微处理机使用的数字量供系统处理。同样,微处理器处理后的数据往往又需要使用数/模转换器(D/A)及适应的接口将其变换成模拟量送出,如图2-1所示。

数据采集系统是医学信号数字化的基础人体的各种物理量,如生物数据采集系统是医学信号数字化的基础人体的各种物理量,如生物模拟量输入/输出通道示意A/D转换器及其接口统称为模拟量输入通道;D/A转换器及相应接口称为模拟量输出通道。D/A转换传感器并行接口A/D转换信号检测预处理微处理机模拟量输入/输出通道示意A/D转换器及其接口统称为模拟量输入模拟量输入/输出通道示意A/D转换器及其接口统称为模拟量输入2.1模拟量输入通道

2.1.1A/D转换器概述一.概述A/D转换器是将模拟量转换为数字量的器件,这个模拟量泛指电压、电流、时间等参量,但通常情况下,模拟量是指电压参量。在A/D转换的过程中通常要完成采样、量化和编码三个步骤。2.1模拟量输入通道

2.1.1A/D转换器概述一.概述2.1模拟量输入通道

2.1.1A/D转换器概述一.概述A/D转换的过程采样量化编码A/D转换的过程A/D转换的过程采样量化编码A/D转换的过程A/D转换的过程采样量化编码A/D转换的过程A/D转换的过程1.

采样待采样的模拟信号是连续的,可看成无限多个瞬时值组成,而A/D转换以及计算机处理需要一定的时间,不可能把每一个瞬时值都转换成数字量,必须在连续变化的模拟量上按周期取样的规律取出某一些瞬时值来代表这个模拟量,这个过程就是采样。1.

采样待采样的模拟信号是连续的,可看成无限多个瞬时值组1.

采样待采样的模拟信号是连续的,可看成无限多个瞬时值组tf(t)f(t)fs(t)S(t)采样器输入输出波形

tS(t)tfs(t)采样是通过采样保持电路实现的,采样器(电子模拟开关)在控制脉冲s(t)的控制下,周期性地把随时间连续变化的模拟信号f(t)转变为时间上的离散的模拟信号fs(t)。tf(t)f(t)fs(t)S(t)采样器输入输出波形tStf(t)f(t)fs(t)S(t)采样器输入输出波形tS输出信号能否如实反映原始输入信号?采样得到的信号fs(t)的值和原始输入信号f(t)在相应的瞬时值相同,因此采样后的信号在量值上仍然是连续的。可以证明:当采样器的采样频率fS高于或至少等于输入信号最高频率fm的两倍时(即fS≥2fm时),采样输出信号fs(t)(采样器脉冲序列)能代表或恢复成输入模拟信号f(t),这就是采样定理。输出信号能否如实反映原始输入信号?采样得到的信号fs(t)的输出信号能否如实反映原始输入信号?采样得到的信号fs(t)的如何知道输入信号f(t)的频率,特别是它的最高频率fm?信号“最高频率”指的是输入信号经频谱分析后得到的最高频率分量。“恢复”指的是样品序列fS(t)通过截止频率为fm的理想低通滤波器后,能得到的原始信号f(t)。在应用中,一般取采样频率fS为最高频率fm

的4~8倍。简单模拟信号的频谱范围是已知的,如温度低于1Hz,声音为20Hz~20000Hz。复杂信号要用傅立叶变换算出,或用频谱分析仪测得,也可用试验的方法选取最合适的fS。如何知道输入信号f(t)的频率,特别是它的最高如何知道输入信号f(t)的频率,特别是它的最高2.量化

所谓量化,就是以一定的量化单位把数值上连续的模拟量转变为数值上离散的阶跃量的过程。量化相当于只取近似整数商的除法运算。量化单位用q表示,对于模拟量小于一个q的部分,可以用舍掉的方法使之整量化,通常为了减少误差采用“四舍五入”的方法使之整量化。这种量化方法的输入输出特性如图2-3所示,图中虚线表示量化单位为0时的特性,实线表示实际特性。2.量化所谓量化,就是以一定的量化单位把数值上连续的模拟2.量化所谓量化,就是以一定的量化单位把数值上连续的模拟q/2X(t)5q4q3q2q

q0Y(t)

q2q3q4q5qX(t)Y(t)量化装置(a)ε+q/2-q/2X(t)(b)(c)

量化过程舍入误差为量化误差。以ε=x(t)-y(t)表示量化误差,量化误差有正有负(图2-3(c)),最大为±q/2,平均误差为0。最大误差随量化单位而改变,q愈小ε也愈小。量化单位用q表示,对于模拟量小于一个q的部分,可以用舍掉的方法使之整量化,通常为了减少误差采用“四舍五入”的方法使之整量化。这种量化方法的输入输出特性如图所示,图中虚线表示量化单位为0时的特性,实线表示实际特性。q/2X(t)5q4q3q2qq0Y(t)qq/2X(t)5q4q3q2qq0Y(t)q3.

编码编码往往涉及到A/D转换的具体应用,若考虑为双极性信号,可采用补码方式;若强化二进制数据的可靠性,可采用格雷码。

3.

编码编码往往涉及到A/D转换的具体应用,若考虑为双极性3.

编码编码往往涉及到A/D转换的具体应用,若考虑为双极性二.A/D转换器的技术指标

1.分辨率A/D转换器的分辨率指转换器能分辨最小的量化信号的能力。A/D转换器的分辨率取决于A/D转换器的位数,所以习惯上以输出二进制数或BCD码数的位数来表示。如ADC0809的分辨率为8位,即表示该转换器可以用28个二进制数对输入模拟量进行量化,其分辨率为1LSB(最低有效位值),若最大允许输入电压为10V,则可计算出它能分辨输入模拟电压的最小变化量1LSB=39.06mV。二.A/D转换器的技术指标

1.分辨率A/D转换器的分辨率指二.A/D转换器的技术指标

1.分辨率A/D转换器的分辨率指2.转换精度

转换精度反映实际A/D转换器与理想A/D转换器量化值上的差。用绝对或相对误差来表示(1)绝对精度指的是在A/D输出端产生给定的数字代码,实际需要的模拟输入值与理论上要求的模拟输入值之差(中间模拟值)。(2)相对精度指的是A/D满度值校准以后,任一数字输出所对应的实际模拟输入值(中间值)与理论值(中间值)之差。2.转换精度转换精度反映实际A/D转换器与理想A/D转换2.转换精度转换精度反映实际A/D转换器与理想A/D转换3.转换速率转换速率是指A/D转换器在每秒钟内所能完成的转换次数。这个指标也可以表述为转换时间,即A/D转换从启动到结束所需的时间,两者互为倒数。例如,某A/D转换器的转换速率为5KHz,则其转换时间是200s。

3.转换速率转换速率是指A/D转换器在每秒钟内所3.转换速率转换速率是指A/D转换器在每秒钟内所例题

某信号采集系统要求用一片A/D转换集成芯片在1s(秒)内对16个热电偶的输出电压分时进行A/D转换。已知热电偶输出电压范围为0~0.025V(对应于0~450oC温度范围),需要分辨的温度为0.1oC,试问应选择多少位的A/D转换器,其转换时间是多少?

例题某信号采集系统要求用一片A/D转换集成芯片在1s(秒)例题某信号采集系统要求用一片A/D转换集成芯片在1s(秒)

解:对于0~450oC温度范围,信号电压为0~0.025V,分辨温度为0.1oC,这相当于1/4500的分辨率。12位A/D转换器的分辨率为1/4096,所以必须选用13位的A/D转换器。系统的取样速率为每秒16次,取样时间为62.5ms。对于这样慢速的取样,任何一个A/D转换器都可达到。可选用带有取样-保持(S/H)的逐次比较A/D转换器或不带S/H的双积分式A/D转换器均可。

解:对于0~450oC温度范围,信号电压为0~0.025

解:对于0~450oC温度范围,信号电压为0~0.0254.满刻度范围

满刻度范围是指A/D所允许输入电压范围。如(0~5)V,(0~10)V,(-5~+5)V等。满刻度只是个名义值,实际的A/D转换器的最大输入值总比满刻度小1/2n(n为转换器的位数)。这是因为0值也是2n个转换器状态中的一个。例如12位的A/D转换器,其满刻度值为10V,而实际允许的最大输入电压值为:

10V*212-1/212=9.9976V4.满刻度范围满刻度范围是指A/D所允许输入电4.满刻度范围满刻度范围是指A/D所允许输入电A/D转换器的种类

常用的有逐次逼近式、积分式、并行式等三类。逐次逼近式A/D转换器的转换时间与转换精度比较适中,转换时间一般在1~100s之间,转换精度一般在0.1%上下,适用于一般场合。积分式A/D转换器速度较慢,其转换时间一般在ms级。适用于要求精度高,但转换速度较慢的仪器中使用。并行式又称闪烁式,采用并行比较,因而转换速率可以达到很高,其转换时间可达ns级,可用于医学图象处理等转换速度较快的仪器中。A/D转换器的种类

常用的有逐次逼近式、积分式、并行式等三类A/D转换器的种类

常用的有逐次逼近式、积分式、并行式等三类2.1.2 逐次逼近式ADC

逐次逼近式A/D原理概述

N位的逐次逼近式A/D转换器(见下页图),由N位寄存器、N位D/A转换器、比较器、逻辑控制电路、输出缓冲器等五部分组成。工作原理:启动信号作用后,时钟信号先通过逻辑控制电路使N位寄存器的最高位DN-1为1,以下各位为0,这个二进制代码经D/A转换器转换成电压U0(此时为全量程电压的一半)送到比较器与输入模拟电压UX比较。若UX>U0,则保留这一位;若UX<U0,则DN-1

位置0。2.1.2 逐次逼近式ADC

逐次逼近式A/D原理概2.1.2 逐次逼近式ADC

逐次逼近式A/D原理概逻辑控制N位存储器输出缓冲器D/A转换器-+比较器时钟启动EOCOEUxUoURDo~DN-1逻辑控制N位存储器输D/A转换器-比较器时钟启动EOCOEU逻辑控制N位存储器输D/A转换器-比较器时钟启动EOCOEUA/D转换器实际转换过程已不重要目前,逐次逼近式A/D转换器大都做成单片集成电路的形式,因而A/D转换器的实际转换过程已不是非常重要。使用时只需发出A/D转换启动信号,然后在EOC端查知A/D转换过程结束后,取出数据即可。这类芯片有ADC0809、ADC1210、ADC7574、AD574、TLC549、MAX1241等是应用得最多的A/D转换器类型。A/D转换器实际转换过程已不重要目前,逐次逼近式A/D转换器A/D转换器实际转换过程已不重要目前,逐次逼近式A/D转换器ADC0809芯片及其接口

ADC0809是8路8位逐次逼近式A/D转换器。它能分时地对8路模拟量信号进行A/D转换,结果为8位二进制数据,结构如图2-5所示,它由三大部分组成:第一部分是:8路输入模拟量选择电路;第二部分是:一个逐次逼近式A/D转换器;第三部分是:三态输出缓冲锁存器。ADC0809芯片及其接口ADC0809是8路8位逐次逼ADC0809芯片及其接口ADC0809是8路8位逐次逼ADC0809主要特性主要特性

1)8路8位A/D转换器,即分辨率8位。

2)具有转换起停控制端。

3)转换时间为100μs

4)单个+5V电源供电

5)模拟输入电压范围0~+5V,不需零点和满刻度校准。

6)工作温度范围为-40~+85摄氏度

7)低功耗,约15mW。ADC0809主要特性主要特性

1)8路8位A/D转换器ADC0809主要特性主要特性

1)8路8位A/D转换器ADC0809引脚功能ALE:地址锁存允许信号,输入,高电平有效。START:A/D转换启动信号,输入,高电平有效。EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一+5V。GND:地。ADC0809引脚功能ALE:地址锁存允许信号,输入,高电平ADC0809引脚功能ALE:地址锁存允许信号,输入,高电平图2-5ADC0809原理结构图

ADC0809原理结构图图2-5ADC0809原理结构图ADC0809原理结图2-5ADC0809原理结构图ADC0809原理结医学信号数据采集系统课件医学信号数据采集系统课件8路输入模拟量选择电路8路输入模拟量选择电路:8路输入模拟量信号分别接到IN0到IN7端,究竟选通哪一路去进行A/D转换由地址锁存器与译码器电路控制,见表2-1所示。A,B,C为输入地址选择线,地址信息由ALE的上升沿打入地址锁存器。ALECBA接通信号111111110000001010011100101110111

IN0IN1IN2IN3IN4IN5IN6IN7均不通表2-1ADC0809真值表

8路输入模拟量选择电路8路输入模拟量选择电路:8路输入模拟量8路输入模拟量选择电路8路输入模拟量选择电路:8路输入模拟量ADC0809工作过程首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。ADC0809工作过程首先输入3位地址,并使ALE=1,将地ADC0809工作过程首先输入3位地址,并使ALE=1,将地逐次逼近式A/D转换器工作原理逐次逼近式A/D转换器的工作原理可用天平秤重过程作比喻来说明。若有四个砝码共重15克,每个重量分别为8、4、2、1克。设待秤重量Wx=13克,可以用下表步骤来秤量:顺序砝码重比较判断暂时结果18g8g<13g保留8g28+4g12g<13g保留12g38+4+2g14g>13g撤消12g48+4+1g13g=13g保留13g逐次逼近式A/D转换器工作原理逐次逼近式A/D转换器的工作原逐次逼近式A/D转换器工作原理逐次逼近式A/D转换器的工作原A/D转换流程框图A/D转换流程框图A/D转换流程框图A/D转换流程框图逐次逼近式A/D转换器

START为启动信号,要求输入正脉冲信号,在上升沿复位内部逐次逼近寄存器,在下降沿启动A/D转换。EOC为转换结束标志位,“0”表示正在转换,“1”表示一次A/D转换的结束。CLOCK为外部时钟输入信号,时钟频率决定了A/D转换器的转换速率,ADC0809每一通道的转换约需(66~73)个时钟周期,当时钟频率取640KHz时,转换一次约需100s时间,这是ADC0809所能允许的最短转换时间。逐次逼近式A/D转换器START为启动信号,要求输入正脉冲逐次逼近式A/D转换器START为启动信号,要求输入正脉冲三态输出缓冲锁存器A/D转换的结果就是由EOC信号打入三态输出缓冲锁存器。OE为输出允许信号,当向OE端输入一个高电平时,三态门电路被选通,这时便可读取结果。否则缓冲锁存器输出为高阻态。三态输出缓冲锁存器A/D转换的结果就是由EOC信号打入三态输三态输出缓冲锁存器A/D转换的结果就是由EOC信号打入三态输ADC0809的时序图

ADC0809的时序图如图2-6所示。在启动ADC0809后,EOC约在10s后才变为低电平,因而在用START启动0809转换器后,不能立即通过检测EOC来判断转换是否结束,而应等待约10s再检测,否则会出现错误结果。编程时必须注意到这一点。ADC0809的时序图ADC0809的时序图如图2-6所示ADC0809的时序图ADC0809的时序图如图2-6所示稳定时钟ALE地址INxSTARTEOCOE输出ADC0809时序图稳定稳定时钟ADC0809时序图稳定稳定时钟ADC0809时序图稳定稳定时钟ADC0809时序图医学信号数据采集系统课件医学信号数据采集系统课件ADC0809与单片机8031接口电路

ADC0809输出带有三态输出缓冲锁存器,因而不加I/O接口芯片,可以直接接到微机系统的总线上。ADC0809的时钟信号(CLOCK)由8031的ALE端的输出脉冲(其频率为8031时钟频率的1/6)经二分频得到,8031由地址线P2.0和读写控制线启动ADC0809的START、地址锁存ALE和输出允许OE信号。A/D转换结束信号EOC反相后连至8031的INT1(P3.3)。模拟输入通道地址的译码输入信号A,B,C由P0.0~P0.2提供。根据以上连接,0809的地址为FEFFH。ADC0809与单片机8031接口电路ADC0809输出带ADC0809与单片机8031接口电路ADC0809输出带8031080974LS373CDQQ>1>111+5vIN0IN1IN2IN3IN4IN5IN6IN7ALEP0INTRDP2.0WRAB0~7ABCD0~7EOCOEALESTARTVCCR+R-GNDCLOCKP0.0~0.28031074LSCD>1>111+5vIN0ALEI8031074LSCD>1>111+5vIN0ALEI单周期指令的时序单周期指令的时序单周期指令的时序单周期指令的时序医学信号数据采集系统课件医学信号数据采集系统课件A/D转换常用的软件控制方式

常用的控制方式主要有:程序查询方式、延时等待方式和中断方式。1.程序查询方式 微处理器向A/D转换器发出启动信号后,读入转换结束信号,查询转换是否结束;若转换结束,可以读入数据;否则再继续查询,直至转换结束再读入数据。 这种方法微机“查询”消耗许多时间,因而效率低,但比较简单,可靠性高。实际应用还是比较普遍的。A/D转换常用的软件控制方式常用的控制方式主要有:程序查询A/D转换常用的软件控制方式常用的控制方式主要有:程序查询A/D转换常用的软件控制方式2.延时等待方式 启动A/D后,根据A/D转换所需的时间(如ADC0809为100s)软件延时等待,延时结束,读入数据。这种方法可靠性高,不占查询端口。3.中断方式 在中断方式中,微处理器启动A/D转换后可转去处理其他事情,A/D转换结束便向微处理器发出中断申请信号,微处理器响应中断后再来读入数据。微处理器与A/D转换器并行工作,提高了工作效率。A/D转换常用的软件控制方式2.延时等待方式A/D转换常用的软件控制方式2.延时等待方式A/D转换常用的ADC0809与单片机8031接口实例以下结合图2-7所示的ADC0809与单片机8031接口电路,给出查询、延时和中断这三种方式下的转换程序。转换程序的功能是将由IN0端输入的0~5V模拟信号转换为对应的数字量00H~FFH,然后再存入8031内部RAM的30H单元中。ADC0809与单片机8031接口实例以下结合图2-7所示的ADC0809与单片机8031接口实例以下结合图2-7所示的a. 查询方式

MOV DPTR,#0FEFFH MOV A,#00H

;赋通道0地址

MOVX@DPTR,A;启动IN0转换

MOV R2,#20HDLY:DJNZR2,DLY;延时,等待EOC变低WAIT:JB P3.3,WAIT;查询,等待EOC变高

MOVXA,@DPTR MOV 30H,A;结果存30Ha. 查询方式MOV DPTa. 查询方式MOV DPTb. 延时等待方式

MOV DPTR,#0FEFFH MOV A,#00H;赋通道0地址

MOVX@DPTR,A;启动IN0转换

MOV R2,#40HWAIT:DJNZ R2,DLY;延时约120uS MOVXA,@DPTR MOV 30H,A;结果存30H

b. 延时等待方式MOV b. 延时等待方式MOV c.中断方式

主程序:

MAIN: SETB IT1;选INT1为边沿触发

SETB EX1;允许INT1中断

SETB EA;打开中断

MOV DPTR,#0FEFFH MOV A,#00H

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

;执行其他任务c.中断方式主程序:c.中断方式主程序:c.中断方式主程序:中断服务程序INT1: PUSH DPL;保护现场

PUSH DPH PUSHA MOV DPTR,#0FEFFH MOVX A,@DPTR;读转换结果

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

MOVX @DPTR,A

;启动下一次转换

POP A POP DPH POP DPL;返回现场

RETI

;返回中断服务程序中断服务程序中断服务程序P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALEWR

P2.7RDINTO+++5VGNDD0D1D2D3D4D5D6D7ADDAADDBADDCCLKALESTARTOEEOCIN0IN1IN2IN3IN4IN5IN6IN7

VREF+VREF-ADC08098051分频器ADC0809与MCS-51单片机的接口1.硬件连接P0.0++D0IN08051分ADC0809与MCS-51P0.0++D0IN08051分ADC0809与MCS-51汇编语言编程:ORG0003HLJMPINT0ORG0100H;主程序MOVR0,#30H;设立数据存储区指针MOVR2,#08H;设置8路采样计数值SETBIT0;设置外部中断0为边沿触发方式SETBEA;CPU开放中断SETBEX0;允许外部中断0中断MOVDPTR,#0000H;送入口地址并指向IN0LOOP:MOVX@DPTR,A;启动A/D转换,A的值无意义HERE:SJMPHERE;等待中断2.软件编程设接口电路用于一个8路模拟量输入的巡回检测系统,使用中断方式采样数据,把采样转换所得的数字量按序存于片内RAM的30H~37H单元中。采样完一遍后停止采集。汇编语言编程:2.软件编程设接口电路用于一个8路模拟量输入的汇编语言编程:2.软件编程设接口电路用于一个8路模拟量输入的ORG0200H;中断服务程序INT0:MOVXA,@DPTR;读取转换后的数字量MOV@R0,A;存入片内RAM单元INCDPTR;指向下一模拟通道INCR0;指向下一个数据存储单元DJNZR2,NEXT;8路未转换完,则继续CLREA;已转换完,则关中断CLREX0;禁止外部中断0中断RETI;中断返回NEXT:MOVX@DPTR,A;再次启动A/D转换RETI;中断返回ORG0200H;中断服ORG0200H;中断服C语言编程:#include<reg51.h>#include<absacc.h>//定义绝对地址访问#defineucharunsignedchar#defineIN0XBYTE[0x0000]//定义IN0为通道0的地址staticuchardatax[8];//定义8个单元的数组,存放结果ucharxdata*ad_adr;//定义指向通道的指针uchari=0;voidmain(void){IT0=1;//初始化EX0=1;EA=1;i=0;ad_adr=&IN0;//指针指向通道0*ad_adr=i;//启动通道0转换for(;;){;}//等待中断}C语言编程:C语言编程:C语言编程:voidint_adc(void)interrupt0//中断函数{x[i]=*ad_adr;//接收当前通道转换结果i++;ad_adr++;//指向下一个通道if(i<8){*ad_adr=i;//8个通道未转换完,启动下一个通道返回}else{EA=0;EX0=0;//8个通道转换完,关中断返回}}voidint_adc(void)interruptvoidint_adc(void)interruptAD574芯片及其接口

AD574是12位快速逐次逼近型A/D转换器,其最快转换时间为25s,转换误差为1LSB。AD574具有下述几个基本特点:片内含有电压基准和时钟电路等,因而外围电路较少;数字量输出具有三态缓冲器,因而可直接与微处理器接口;模拟量输入有单极性和双极性两种方式,接成单极性方式时,输入电压范围为0~10V或0~20V,接成双极性方式时,输入电压范围为-5V~5V,-10V~10V。AD574芯片及其接口AD574是12位快速逐次逼近型A/AD574芯片及其接口AD574是12位快速逐次逼近型A/图2-8AD574原理与引脚图

图2-8AD574原理与引脚图图2-8AD574原理与引脚图图2-8AD574原理与AD574原理与主要引脚信号定义

CS

:片选,低有效;

CE

:片允许,高有效;

R/C

:读/变换,高为读A/D变换结果,低为启动A/D变换;

12/8

:数据格式,高为12位并行输出,低为8位(或4位)并行输出.本设计令其接地;

A0

:字节地址/短周期,高为8位变换/输出低4位,低为12位变换/输出高8位;

STS:变换状态,高为正在变换,低为变换结束;AD574原理与主要引脚信号定义CS:片选,低有效;

CAD574原理与主要引脚信号定义CS:片选,低有效;

CREFIN

:基准输入;REFOUT

:基准输出;BIPOFF

:双极性方式时,偏置电压输入端;DBII~DB0:12位数据总线;10VIN

:单极性0~10V模拟量输入;双极性0~±5V模拟量输入。20VIN

:单极性0~20V模拟量输入;双极性0~±10V模拟量输入。AG:模拟地。

REFIN:基准输入;REFIN:基准输入;REFIN:基准输入;表2-2AD574的操作表2-2AD574的操作表2-2AD574的操作表2-2AD574的操作表2-2AD574的操作表2-2AD574的操作表2-2

AD574与8031单片机的接口电路

8031单片机与AD574的各引脚的接口电路可按下页图2-9的电路来安排。由于8031的高8位地址P2.0~P2.7没有使用,故可采用寄存器间接寻址方式。其中启动A/D的地址为1FH;读出低4位数地址为7FH;读出高8位数地址为3FH。

AD574与8031单片机的接口电路8031单片机与ADAD574与8031单片机的接口电路8031单片机与AD图2-9AD574与8031单片机的接口电路图2-9AD574与8031单片机的接口电路图2-9AD574与8031单片机的接口电路图2-9AD574与8031单片机的接口电路图中STS可有三种接法以对应三种控制方式:(1)如STS空着,单片机只能采取延时等待方式,在启动转换后,延时25s以上时间,再读入A/D转换结果;(2)如STS接单片机一条端口线,单片机就可以用查询的方法等待STS为低后再读入A/D转换结果;(3)如STS接单片机外部中断线,就可以在引起单片机中断后,再读入A/D转换结果。AD574与8031单片机的接口电路图中STS可有三种接法以AD574与8031单片机的接口电路图中STS可有三种接法以采用延时等待方式的控制程序清单:MOV R0,#1FH

;启动MOVX @R0,AMOV R7,#10H ;延时DJNZ R7,$MOV R1,#7FH

;读低4位MOVX A,@R1MOV R2,A ;存低4位MOV R1,#3FH

;读高8位MOVX A,@R1 MOV R3,A ;存高8位SJMP $采用延时等待方式的控制程序清单:采用延时等待方式的控制程序清单:采用延时等待方式的控制程序清单极性模拟输入方式接线的调整

单极性模入方式(图2-9)中,10VIN输入电压范围为0V~+10V,1LSB对应的模拟电压为2.44mV;20VIN输入电压范围为0V~20V,1LSB对应的模拟电压为4.88mV。R1用于零点调整,R2用于满刻度校准。方法为:如输入电压接10VIN端,调整R1,使输入模拟电压为1.22mV(即1/2LSB)时,输出数字量从000000000000变到000000000001;调整R2,使得输入电压为9.9963V时,数字量从111111111110变到111111111111。单极性模拟输入方式接线的调整单极性模入方式(图2-9)中,单极性模拟输入方式接线的调整单极性模入方式(图2-9)中,双极性模拟输入方式的调整

对于双极性模入方式,把REFIN,REFOUT,和BIPOFF三个引脚的接线按图2-10重新安排,双极性模入方式零点与满刻度校准方法与单极性方式近似。需要注意的是,输入模拟量与输出数字量之间的对应关系为:10VIN端输入时:-5V→0V→+5V对应000H→800H→FFFH20VIN端输入时:-10V→0V→+10V对应000H→800H→FFFH双极性模拟输入方式的调整对于双极性模入方式,把REFIN双极性模拟输入方式的调整对于双极性模入方式,把REFIN图2-10AD574双极性模拟输入接线方式

图2-10AD574双极性模拟输入接线方式图2-10AD574双极性模拟输入接线方式图2-10MAX1241芯片及其接口

以串行数据形式输出的A/D转换器具有引脚少、体积小的特点;接口所需的I/O位数也比较少。有利于提高仪器的集成度和减小体积,能方便、廉价地实现需要进行模拟与数字隔离的场合。串行输出的A/D转换器虽有多种型号,接口时序也有所不同。但接口的实现和控制方法还是基本相同的。现以MAX1241为例来说明串行输出ADC接口技术。MAX1241芯片及其接口以串行数据形式输出的A/D转换器MAX1241芯片及其接口以串行数据形式输出的A/D转换器MAX1241串行输出单片ADC简介

MAX1241是一种低功耗、低电压的12位逐次逼近型ADC,最大非线性误差小于1LSB,转换时间9s。采用三线式串行接口,内置快速采样/保持电路。其结构和引脚定义如图2-11所示。

图2-11MAX1241内部结构和管脚定义

MAX1241串行输出单片ADC简介MAX1241是一种低MAX1241串行输出单片ADC简介MAX1241是一种低MAX1241串行输出单片ADC简介MAX1241采用8引脚DIP或SO形式封装,完善的内部电路几乎不需要外围器件即能工作。内置采样/保持电路在A/D转换开始时,自动捕捉信号,最大捕捉时间1.5s。12位逐次逼近型ADC的并行输出经输出移位寄存器变换为串行输出,整个工作过程受控于三线串行接口。

MAX1241串行输出单片ADC简介MAX1241采用8引脚MAX1241串行输出单片ADC简介MAX1241采用8引脚表2-3MAX1241管脚功能

MAX1241采用单电源供电,动态功耗在以每秒73K转换速率工作时,仅需0.9mA电流。在停止转换时,可通过控制端使其处于休眠状态,以降低静态功耗。休眠方式下,电源电流仅1A。表2-3MAX1241管脚功能MAX1表2-3MAX1241管脚功能MAX1MAX1241的工作时序

MAX1241的工作时序(图2-12):每次转换由芯片选通信号的下降沿触发,但此时驱动时钟SCLK必须为低。A/D转换启动后,内部控制逻辑切换采样/保持电路为保持状态,并使输出数据线DOUT变低。在整个转换期内,SCLK应保持低电平。转换结束时DOUT由低变高。一次转换结束,内部控制逻辑将自动把采样/保持器切换为捕捉状态。MAX1241的工作时序MAX1241的工作时序(图2-MAX1241的工作时序MAX1241的工作时序(图2-图2-12MAX1241工作时序

图2-12MAX1241工作时序图2-12MAX1241工作时序图2-12MAX1MAX1241的工作时序对MAX1241转换结果的输入在转换结束后进行,由驱动时钟SCLK的下降沿触发一位数据输出。在下一个SCLK脉冲下降沿到来前,该位数据将始终保持在DOUT输出端上。数据输出从最高位开始,每个SCLK脉冲下降沿输出一位。第12个SCLK的下降沿输出最低位。在数据输出周期内,必须保持低电平,若在第13个SCLK下降沿后,仍保持低电平,DOUT则一直保持为低电平。

MAX1241的工作时序对MAX1241转换结果的输入在转换MAX1241的工作时序对MAX1241转换结果的输入在转换2.MAX1241与8031/51的接口

MAX1241与微机接口的实现有二种选择,一是使用普通端口,利用程序实现串行输入。另一种则是直接使用串行接口。前者输入速度低,后者需占用串行通信口。(l)MAX1241与8031/51的通用I/O方式接口:

MAX1241与8031/51的通用I/O接口如图2-13所示。接口使用三位通用I/O端口P1.0~P1.2。其中P1.0用于片选信号,P1.2为数据输入,P1.1产生驱动脉冲SCLK。

2.MAX1241与8031/51的接口MAX12412.MAX1241与8031/51的接口MAX1241医学信号数据采集系统课件医学信号数据采集系统课件控制程序如下:控制子程序完成一次A/D转换和输入,输入数据存放于R0,R1寄存器。;寄存器及端口定义:CS:

BIT P1.0 ;片选信号位DOUT:

BIT P1.2 ;串行数据输入位SCLK:

BIT P1.1 ;驱动时钟位DATA_BH:

EQU R0 ;高字节数据存储单元DATA_BL:

EQU R1 ;低字节数据存储单元CONT_H:

EQU R0 ;高位取数计数器CONT_L:

EQU R1 ;低8位取数计数器

控制程序如下:控制子程序完成一次A/D转换和输入,输控制程序如下:控制子程序完成一次A/D转换和输入,输;控制子程序SADC_R:

XRL A,A ;清AMOV CONT_H,#04H;高8位计数

MOV CONT_L,#08H;低8位计数

CLRSCLK ;SCLK置“0” CLRCS ;选中1241,启动转换SADC_END:JNB DOUT,SADC_END;检测A/D转换结束READ_H:

SETB SCLK CLR SCLK ;产生一个驱动时钟

MOVC,DOUT ;输入一位数据”

RLCA ;数据移位至ACC.0DJNZ CONT_H,READ_H;高

4位输入结束判别

MOV DATA_BH,A ;高

4位数据送寄存器;控制子程序;控制子程序;控制子程序READ_L:

SETB SCLK CLR SCLK ;产生一个驱动时钟

MOVC,DOUT ;输入一位数据

RLC A ;数据移位置ACC.0DJNZ CONT_L,READ_L;低8位输入结束判别

MOV DATA_BL,A ;低8位数据送寄存器

SETB SCLK CLR SCLK ;清

DOUT输出

SETB CS ;撤消片选

RETREAD_L:SETB SCLK READ_L:SETB SCLK READ_(2)MAX1241与8031/51串行接口

当使用8031/51串行口实现与MAX1241联接时,串行口应工作于同步移位寄存器方式(方式0)。此时,串行口的接受数据端RXD(P3.0)被用于接受MAX1241的输出数据。而发送数据端TXD(P3.1)则被用于提供驱动时钟,为满足时序要求;应将其反相。片选信号仍使用P1.0。接口电路如图2-14所示。(2)MAX1241与8031/51串行接口当使用8031(2)MAX1241与8031/51串行接口当使用8031医学信号数据采集系统课件医学信号数据采集系统课件8031/51串行接口控制程序

由于8031/51串行口一次只能接受8位数据,故12位A/D转换结果必须分二次接受。同前述程序直接输入一样,控制程序必须检测A/D转换结束信号,即DOUT的上跳变,只要当DOUT变为高电平后,方能启动串行接受。接口控制程序如下所示:8031/51串行接口控制程序由于8031/51串行口一次8031/51串行接口控制程序由于8031/51串行口一次MAX1241ADC串行接口控制子程序;寄存器及端口定义CS:

BITP1.0EOC:

BITP3.0DATA_BH:EQUR0 ;接受数据高位存储寄存器DATA_BL:

EQUR1 ;接受数据低位存储寄存器

;串行口设置子程序SPOR_SET:CLRES ;禁止串行中断

MOVSCON,#00H;串行口为方式0,停止接受

SETBCS ;禁止

ADCRETMAX1241ADC串行接口控制子程序MAX1241ADC串行接口控制子程序MAX1241AD;接口控制子程序SAD_SR:

CLRCS ;启动

A/D转换AD_NEND:

JNBEOC,AD_NEND ;等待转换结束

SETB REN ;启动串行接收FR_NEND:

JNBRI,FR_NEND ;等待接收结束

MOVDATA_BH,SBUF ;从串行数据缓冲器输入高8位数据

CLRRI ;启动第二次接收SR_NEND:

JNBRI,SR_NEND ;等待接收结束

MOVDATA_BL,SBUF ;从串行数据缓冲器输入低4位数据

CLRREN ;停止接收

SETBCS ;禁止ADCRET;接口控制子程序;接口控制子程序;接口控制子程序2.1.3积分式ADC

大多用于低速、廉价的积分型A/D转换器中,几乎无一例外地采用了十进制编码方式,每次输出一位并行十进制编码,整个转换结果分若干次输出。这种低速、廉价但高精度、强抗干扰的集成A/D转换器以其优良的性能价格比被广泛应用于低速测量领域。2.1.3积分式ADC大多用于低速、廉价的积分型A/D转2.1.3积分式ADC大多用于低速、廉价的积分型A/D转1.MC144333位双积分ADC

MC14433是具备零漂补偿和采用CMOS工艺制造的3位单片双积分A/D转换器,最大输出数码1999,具有功耗低、输入阻抗高和自动调零、自动极性转换功能。其转换精度为土(0.05%Vi

+1LSB),输入电阻大于100M,对应时钟频率范围为50~150kHz,转换速度为每秒3~10次。内部结构框图及管脚功能如图2-15所示:1.MC144333位双积分ADCMC14433是具1.MC144333位双积分ADCMC14433是具图2-15MC14433ADC结构框图及管脚功能

图2-15MC14433ADC结构框图及管脚功能图2-15MC14433ADC结构框图及管脚功能图2-

MC14433采用土5V供电电源,只需一个正基准电压VR

,其与输入电压Vi成下列比例关系输出读数=1999(2-1)当满量程时Vi=VR

。Vi输入有2V和200mV两个量程挡。当满度电压为1.999V时,VR取2.000V;当满度电压为199.9mV时,VR取200.0mV。 当然,也可根据需要在200mV~2V之间任意选择VR的值,此时,读数的一个LSB所对应的输入电压则需通过式2-1求得。

MC14433采用土5V供电电源,只需一MC14433采用土5V供电电源,只需一MC14433输出时序

MC14433由内部电路自动控制转换,无需外加启动信号,输出数据通过Q3~Q1输出端,逐位输出BCD码,并不断重复。并通过DS1~DS4指明现行输出BCD码是十进制位中的哪一位。A/D转换结束,在EOC端输出一正脉冲,宽度为一个时钟周期。输出数据更新需通过DV端的正跳变信号实现,通常将EOC与其短接。其整个输出时序如图2-16所示。在千位输出时,携带输出极性及超量程信息,如表2-4所示。MC14433输出时序MC144MC14433输出时序MC144图2-16MC14433输出时序图2-16MC14433输出时序图2-16MC14433输出时序图2-16MC14433MC14433千位编码定义

表2-4MC14433千位编码定义

MC14433千位编码定义表2-4MC14433千位编MC14433千位编码定义表2-4MC14433千位编2.MC14433ADC与8031/51接口

MC14433输出不具有三态缓冲,故必须通过接口方可挂接于微机总线。对于8031/51单片机而言,最简接的方法是直接与其I/O端口相连。因MC14433为低速ADC,所以宜采用中断方式接口。图2-17给出了其与8031/51的接口电路。2.MC14433ADC与8031/51接口MC14432.MC14433ADC与8031/51接口MC1443

图2-17MC14433ADC与

8031/51的接口

图2-18数据格式

图2-17MC14433ADC与图2-18数据格式图2-17MC14433ADC与图2-18数据格式MC14433ADC与8031/51接口接口使用P1口,高4位输入BCD码,低4位输入位选信号DS1~DS4。EOC的下跳沿触发中断。按MC14433的输出时序和接口形式,控制程序如下所示。控制程序由中断启动,每次输入一个完整的转换结果,并存入8031/51内部RAM。存入数据格式如图2-18所示。

MC14433ADC与8031/51接口接口使用P1口,MC14433ADC与8031/51接口接口使用P1口,

2.1.4 并行或特高速ADC在高速数据采集领域,如图像处理、频谱分析等,双积分式和逐次逼近型A/D转换器的转换速度都不能满足要求。并行型A/D转换器的速度高,它将输入模拟电压Vi与一系列标准电压同时进行比较,将比较的结果经过编码后得到二进制数据。2.1.4 并行或特高速ADC在高速数据采集领域,如2.1.4 并行或特高速ADC在高速数据采集领域,如并行或特高速ADC原理

3位二进制并行型A/D转换器(图2-19)由标准电压源经电阻分压后得到m(m=2n-1)个标准电压(n是转换后得到二进制数位数);每一个分压后的标准电压与输入模拟电压Vi同时(并行)进行比较,若输入模拟电压大于标准电压,则相应的比较器输出为“真”(即为“1”),反之为“假”(即“0”);经数字编码后,输出即为等效于输入模拟量的二进制数据。一个n位二进制并行型A/D转换器需要m(m=2n-1)个比较器。并行或特高速ADC原理3位二进制并行型A/D转换器(图2-并行或特高速ADC原理3位二进制并行型A/D转换器(图2-图2-19并行型A/D转换器原理图

图2-19并行型A/D转换器原理图图2-19并行型A/D转换器原理图图2-19并几点说明:

①由图可知,并行型A/D转换器的精度取决于几个因素:分压电阻精度要高,主要是一致性要好;比较器的灵敏度要能鉴别两个相邻标准电压;标准电压源VR的精度也有一定的要求。②并行ADC的速度主要取决于比较器的响应速度及数据寄存器(D触发器)的响应时间。③n位并行型ADC转换器需要(2n-1)个比较器,成本相当昂贵。几点说明:①由图可知,并行型A/D转换器的精度取决于几个因几点说明:①由图可知,并行型A/D转换器的精度取决于几个因并行型A/D转换器的应用输入信号是双极性时,只需将参考电压的接地端改接为"负"电源端。这种转换器速度极快,但结构复杂,无法做到高精度,价格也非常昂贵,如图像处理及模式识别等领域。因为模式识别及图像处理一帧画面有数以2.2万计的像素,为了适应视觉的要求必须每秒钟处理几十帧画面。如果每秒钟处理30个画面,则相当每秒钟要对6.6兆个像素进行处理,所以对A/D转换速度要求极高。并行型A/D转换器的应用输入信号是双极性时,只需将参考电压的并行型A/D转换器的应用输入信号是双极性时,只需将参考电压的2.2 模拟量输出通道

模拟量输出通道的作用是将经智能化医学仪器处理后的数据转换成模拟量送出,它是许多智能设备的重要组成部分。模拟量输出通道一般由D/A转换器、多路模拟开关、采样/保持器等组成。本节侧重讨论D/A转换器及其与微处理器的接口。2.2 模拟量输出通道模拟量输出通道的作用是将经智能化医学2.2 模拟量输出通道模拟量输出通道的作用是将经智能化医学2.2.1D/A转换器概述

一、D/A转换原理

D/A转换器是由电阻网络、开关及基准电源等部分组成,目前基本都已集成于一块芯片上。为了便于接口,有些D/A芯片内还含有锁存器。D/A转换器的组成原理有多种,采用最多的是R-2R梯形网络D/A转换器,图2-20显示了一个4位D/A转换器的原理图。

2.2.1D/A转换器概述

一、D/A转换原理D/A转2.2.1D/A转换器概述

一、D/A转换原理D/A转D/A转换原理一般由D/A转换器,多路模拟开关,采样/保持器等组成。作用是将经智能仪器处理后的数据转换成模拟量送出。一、D/A转换原理(图2-20) 由电阻网络,开关及基准电源等组成。

UR U0=-(23D3+22D2+21D1+20D0)

24D/A转换原理一般由D/A转换器,多路模拟开关,采样/保持器D/A转换原理一般由D/A转换器,多路模拟开关,采样/保持器R-2R梯形网络D/A转换器原理

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

R-2R梯形网络D/A转换器原理图2-20R-2R梯形网R-2R梯形网络D/A转换器原理图2-20R-2R梯形网二、D/A转换器的主要技术指标

分辨率:当输入数字发生单位数码变化时所对应模拟量输出的变化量.转换精度: 在整个工作区间实际的输出电压与理想输出电压之间的偏差.转换时间:通常为几十个纳秒.尖峰误差:指输入代码发生变化时刻,而使输出模拟量产生的尖峰所造成的误差.二、D/A转换器的主要技术指标分辨率:当输入数字发生单位数二、D/A转换器的主要技术指标分辨率:当输入数字发生单位数

D/A转换器尖峰误差及消峰原理

D/A转换器尖峰误差及消峰原理D/A转换器尖峰误差及消峰原理D/A转换器尖峰误差及消三、D/A转换电路输入与输出形式

D/A数字量输入端可以分为:1.不含数据锁存器(需外加数据锁存器).2.含单个数据锁存器.3.含双个数据锁存器(用于多个D/A同时转换的场合).D/A的输出电路分为:1.单极性电路 图2-222.双极性电路 图2-23三、D/A转换电路输入与输出形式D/A数字量输入端可以分为三、D/A转换电路输入与输出形式D/A数字量输入端可以分为UOUT=-(VREF/28)DUOUT=-(VREF/28)DUOUT=-(VREF/28)DUOUT=-(VREF/2UOUT=-(2U1+VREF)UOUT=-(2U1+VREF)UOUT=-(2U1+VREF)UOUT=-(2U1+VRE2.2.2 D/A转换器与微机接口

8位D/A转换器DAC0832及其与微机接口

八位D/A转换器DAC0832及其与微机接口内部含有双输入数据锁存器的8位D/A器件(图2-24)。 1、单缓冲接口电路(图2-25)程序:MOV DPTR,#0FEFFH MOV A,#DATA MOVX @DPTR,A2.2.2 D/A转换器与微机接口

8位D/A转换器DAC02.2.2 D/A转换器与微机接口

8位D/A转换器DAC0医学信号数据采集系统课件医学信号数据采集系统课件医学信号数据采集系统课件医学信号数据采集系统课件双缓冲接口的程序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转换器同时输出双缓冲接口的程序MOV DPTR,#0FEFFH双缓冲接口的程序MOV DPTR,#0FEFFH双医学信号数据采集系统课件医学信号数据采集系统课件【例】根据下图编程从DAC0832输出端分别产生锯齿波、三角波和方波。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论