1、数字化医疗仪器数字化医疗仪器第二章第二章 医学信号医学信号数据采集系统设计数据采集系统设计第一章第一章 医医学信号学信号数数据采集系统据采集系统学习要点学习要点v一、能力培养要点一、能力培养要点v1、模拟量输入通道的结构与调试模拟量输入通道的结构与调试能力。能力。v2、模拟量输出通道的结构与调试模拟量输出通道的结构与调试能力。能力。v3、数字化医疗仪器医、数字化医疗仪器医学信号学信号数数据采集系统(基于据采集系统(基于单片机和单片机和PC机)机)软硬件的软硬件的构成构成与调试能力。与调试能力。二、二、主要习主要习题题v1、A/D转换器的类型、质量评价水平的技术指标转换器的类型、质量评价水平的技
2、术指标和特点是什么?和特点是什么?v2、ADC0809与与8031单片机的接口电路与数据采单片机的接口电路与数据采集过程?集过程?v3、12位位AD574与与8031单片机的接口电路特点?单片机的接口电路特点?v4、积分式积分式MC14433 A/D转换器与转换器与8031单片机接单片机接口工作原理?口工作原理?v5、并行比较式高速并行比较式高速ADC结构有何特点?结构有何特点?v6、D/A转换器主要技术参数是什么?转换器主要技术参数是什么?二、二、主要习主要习题题v7、DAC0832与与8031单片机单、双缓冲接口电路单片机单、双缓冲接口电路工作原理?工作原理?v8、DAC0832与与803
3、1的输出接口电路应用方式?的输出接口电路应用方式?v9、数据采集系统的基本组成和结构工作原理?、数据采集系统的基本组成和结构工作原理?v10、采样定理的基本内容是什么?数据采集系统、采样定理的基本内容是什么?数据采集系统中为何要使用采样保持器?中为何要使用采样保持器?v11、简述基于单片机的数据采集系统的工作原理、简述基于单片机的数据采集系统的工作原理。v12、简述基于、简述基于PC机的数据采集系统的工作原理。机的数据采集系统的工作原理。本章内容本章内容n模拟量输入通道模拟量输入通道n模拟量输出通道模拟量输出通道n医学信号数据采集系统计医学信号数据采集系统计数据采集系统是医学信号数字化的基础数
4、据采集系统是医学信号数字化的基础 v人体人体的各种的各种物理量物理量,如生物电位、心音、体温、,如生物电位、心音、体温、血压、血流、肌电、脑电、神经传导速度等,血压、血流、肌电、脑电、神经传导速度等,采用各种传感器将其变成采用各种传感器将其变成电信号电信号,经由诸如放,经由诸如放大、滤波、干扰抑制、多路转换等信号检测及大、滤波、干扰抑制、多路转换等信号检测及预处理电路,将预处理电路,将模拟量模拟量的电压或电流送的电压或电流送模模/ /数数转换器(转换器(A/DA/D),变成适合于微处理机使用的,变成适合于微处理机使用的数字量数字量供系统处理。供系统处理。v同样,微处理器处理后的同样,微处理器处
5、理后的数据数据往往又需要使用往往又需要使用数数/ /模转换器(模转换器(D/AD/A)及适应的接口将其变换成及适应的接口将其变换成模拟量模拟量送出,如图送出,如图2-1所示。所示。 模拟量输入模拟量输入/ /输出通道示意输出通道示意A/D转换器及其接口统称为转换器及其接口统称为模拟量输入通道模拟量输入通道;D/A转换器及相应接口称为转换器及相应接口称为模拟量输出通道模拟量输出通道。D/A转换转换传感器传感器并行并行接口接口A/D转换转换信号检信号检测预处测预处理理微处理机微处理机2.1 模拟量输入通道模拟量输入通道2.1.1 A/D转换器概述转换器概述v一概述一概述vA/DA/D转换器是将模拟
6、量转换为数字量的器件,转换器是将模拟量转换为数字量的器件,这个模拟量泛指电压、电流、时间等参量这个模拟量泛指电压、电流、时间等参量, ,但但通常情况下,通常情况下,模拟量是指电压参量模拟量是指电压参量。v在在A/DA/D转换的过程中通常要完成转换的过程中通常要完成采样、量化和采样、量化和编码编码三个步骤。三个步骤。A/D转换的过程采样采样量化量化编码编码A/DA/D转换的过程转换的过程1 采样采样v待采样的模拟信号是连续的,可看成无限多个待采样的模拟信号是连续的,可看成无限多个瞬时值组成,而瞬时值组成,而A/DA/D转换以及计算机处理需要转换以及计算机处理需要一定的时间,不可能把每一个瞬时值都
7、转换成一定的时间,不可能把每一个瞬时值都转换成数字量,必须在连续变化的数字量,必须在连续变化的模拟量模拟量上按上按周期取周期取样样的规律取出某一些瞬时值来代表这个模拟量,的规律取出某一些瞬时值来代表这个模拟量,这个过程就是采样。这个过程就是采样。采样器输入输出波形采样器输入输出波形 v采样是通过采样保持电路实现的,采样是通过采样保持电路实现的,采样器(电子模拟开关)在控制脉采样器(电子模拟开关)在控制脉冲冲s(t)s(t)的控制下,的控制下,周期性地把随时周期性地把随时间连续变化的模拟信号间连续变化的模拟信号f(t)f(t)转变为转变为时间上的离散的模拟信号时间上的离散的模拟信号fs(t)fs
8、(t)。输出信号能否如实反映原始输入信号?输出信号能否如实反映原始输入信号?v采样得到的信号采样得到的信号f fs s(t)(t)的值和原始输入信号的值和原始输入信号f(t)f(t)在相应的瞬时值相同,因此采样后的信号在量在相应的瞬时值相同,因此采样后的信号在量值上仍然是连续的。值上仍然是连续的。v可以证明:当采样器的采样频率可以证明:当采样器的采样频率f fS S高于或至少高于或至少等于输入信号最高频率等于输入信号最高频率f fm m的两倍时(即的两倍时(即f fS S 2f2fm m时),采样输出信号时),采样输出信号f fs s(t)(t)(采样器脉冲采样器脉冲序列)能代表或恢复成输入模
9、拟信号序列)能代表或恢复成输入模拟信号f(t)f(t),这这就是就是采样定理采样定理。 如何知道输入信号如何知道输入信号f(t)的频率,的频率,特别是它的最高频率特别是它的最高频率fm ?v信号信号“最高频率最高频率”指的是输入信号经频谱分析指的是输入信号经频谱分析后得到的最高频率分量。后得到的最高频率分量。“恢复恢复”指的是样品指的是样品序列序列f fS S(t)(t)通过截止频率为通过截止频率为f fm m的理想低通滤波器的理想低通滤波器后,能得到的原始信号后,能得到的原始信号f(t)f(t)。v在应用中,一般取采样频率在应用中,一般取采样频率f fS S为最高频率为最高频率f fm m
10、的的4 48 8倍倍。 v简单模拟信号的频谱范围是已知的,如温度低简单模拟信号的频谱范围是已知的,如温度低于于1 1HzHz,声音为声音为2020HzHz20000Hz20000Hz。复杂信号要用复杂信号要用傅立叶变换算出,或用频谱分析仪测得,也可傅立叶变换算出,或用频谱分析仪测得,也可用试验的方法选取最合适的用试验的方法选取最合适的f fS S 。2. 量化量化 v所谓量化,就是以一定的量化单位把数值上连续所谓量化,就是以一定的量化单位把数值上连续的的模拟量模拟量转变为数值上转变为数值上离散的阶跃量离散的阶跃量的过程。的过程。v量化相当于只取近似整数商的除法运算。量化相当于只取近似整数商的除
11、法运算。v量化单位用量化单位用q q表示,对于模拟量小于一个表示,对于模拟量小于一个q q的部分,的部分,可以用舍掉的方法使之整量化,通常为了减少误可以用舍掉的方法使之整量化,通常为了减少误差采用差采用“四舍五入四舍五入”的方法使之整量化。这种量的方法使之整量化。这种量化方法的输入输出特性如图化方法的输入输出特性如图2-32-3所示,图中虚线所示,图中虚线表示量化单位为表示量化单位为0 0时的特性,实线表示实际特性。时的特性,实线表示实际特性。q/2X(t)5q4q3q 2q q0Y(t) q 2q 3q 4q 5qX(t)Y(t)量化装置量化装置(a) +q/2q/2X(t)(b)(c) 量
12、化过程舍入误量化过程舍入误差为量化误差。差为量化误差。以以=x(t)-y(t)表示表示量化误差,量化量化误差,量化误差有正有负误差有正有负(图(图2-3(c)),最大最大为为q/2,平均误平均误差为差为0。最大误差。最大误差随量化单位而改随量化单位而改变,变,q愈小愈小也愈也愈小。小。 v量化单位用量化单位用q表示,对于模拟量小于一个表示,对于模拟量小于一个q的部的部分,可以用舍掉的方法使之整量化,通常为了减分,可以用舍掉的方法使之整量化,通常为了减少误差采用少误差采用“四舍五入四舍五入”的方法使之整量化。这的方法使之整量化。这种量化方法的输入输出特性如图所示,图中虚线种量化方法的输入输出特性
13、如图所示,图中虚线表示量化单位为表示量化单位为0时的特性,实线表示实际特性。时的特性,实线表示实际特性。3 3 编码编码v编码往往涉及到编码往往涉及到A/DA/D转换的具体应用,若考转换的具体应用,若考虑为虑为双极性信号双极性信号,可采用,可采用补码方式补码方式;若强化;若强化二进制数据的可靠性,可采用格雷码。二进制数据的可靠性,可采用格雷码。 二二A/D转换器的技术指标转换器的技术指标1 1分辨率分辨率vA/DA/D转换器的分辨率指转换器转换器的分辨率指转换器能分辨最小的量能分辨最小的量化信号的能力化信号的能力。vA/DA/D转换器的分辨率取决于转换器的分辨率取决于A/DA/D转换器的位数,
14、转换器的位数,所以所以习惯上习惯上以输出二进制数或以输出二进制数或BCDBCD码数的码数的位数位数来来表示表示。v如如ADC0809ADC0809的分辨率为的分辨率为8 8位位,即表示该转换器,即表示该转换器可以用可以用2 28 8个二进制数对输入模拟量进行量化,个二进制数对输入模拟量进行量化,其分辨率为其分辨率为1 1LSBLSB(最低有效位值),若最大最低有效位值),若最大允许输入电压为允许输入电压为1010V V,则可计算出它能分辨输则可计算出它能分辨输入模拟电压的最小变化量入模拟电压的最小变化量1 1LSB=39.06mVLSB=39.06mV。 2. 2. 转换精度转换精度 v转换精
15、度反映实际转换精度反映实际A/DA/D转换器与理想转换器与理想A/DA/D转换器量转换器量化值上的差。用绝对或相对误差来表示化值上的差。用绝对或相对误差来表示v(1 1)绝对精度)绝对精度 指的是在指的是在A/DA/D输出端产生给定的数字代码,输出端产生给定的数字代码,实际实际需要的模拟输入值与需要的模拟输入值与理论理论上要求的模拟输入上要求的模拟输入值之差值之差(中间模拟值)。(中间模拟值)。v(2 2)相对精度)相对精度 指的是指的是A/DA/D满度值校准以后满度值校准以后,任一数字输出,任一数字输出所对应的所对应的实际实际模拟输入值(中间值)与模拟输入值(中间值)与理论值理论值(中间值)
16、(中间值)之差之差。3 3转换速率转换速率 转换速率是指转换速率是指A/DA/D转换器在转换器在每秒钟内所能每秒钟内所能完成的转换次数完成的转换次数。这个指标也可以表述为。这个指标也可以表述为转换转换时间时间,即,即A/DA/D转换从启动到结束所需的时间,转换从启动到结束所需的时间,两者互为倒数。例如,某两者互为倒数。例如,某A/DA/D转换器的转换速转换器的转换速率为率为5 5KHzKHz,则其转换时间是则其转换时间是200200 s s。 例题例题 v某信号采集系统要求用一片某信号采集系统要求用一片A/D转换集成芯转换集成芯片在片在1s(秒)内对(秒)内对16个热电偶的输出电压分个热电偶的
17、输出电压分时进行时进行A/D转换。已知热电偶输出电压范围转换。已知热电偶输出电压范围为为00.025V(对应于(对应于0450oC温度范围)温度范围),需要分辨的温度为,需要分辨的温度为0.1oC,试问应选择多少,试问应选择多少位的位的A/D转换器,其转换器,其转换时间转换时间是多少是多少?v 解:对于解:对于0450oC温度范围,信号电压为温度范围,信号电压为00.025V,分辨温度为,分辨温度为0.1oC,这相当于,这相当于 1/4500的的分辨率分辨率。12位位A/D转换器的转换器的分辨率分辨率为为1/4096 ,所以必须选用,所以必须选用13位的位的A/D转换器转换器。 v系统的取样速
18、率为每秒系统的取样速率为每秒16次,取样时间次,取样时间为为62.5ms。对于这样慢速的取样,任何一个。对于这样慢速的取样,任何一个A/D转换器都可达到。可选用带有取样转换器都可达到。可选用带有取样-保持保持(S/H)的逐次比较)的逐次比较A/D转换器或不带转换器或不带S/H的的双积分式双积分式A/D转换器均可。转换器均可。4.4.满刻度范围满刻度范围 满刻度范围是指满刻度范围是指A/DA/D所所允许输入电压范围允许输入电压范围。如。如(0 05 5)V V,(,(0 01010)V V,(,(-5-5+5+5)V V等。等。 满刻度只是个名义值,实际的满刻度只是个名义值,实际的A/DA/D转
19、换器的最转换器的最大输入值总比满刻度小大输入值总比满刻度小1/21/2n n (n n为转换器的位为转换器的位数)。这是因为数)。这是因为0 0值也是值也是2 2n n个转换器状态中的一个。个转换器状态中的一个。 例如例如1212位位的的A/DA/D转换器,其满刻度值为转换器,其满刻度值为1010V V,而实际允许的最大输入电压值为而实际允许的最大输入电压值为: : 1010V V* *2 212-112-1/2/21212=9.9976V=9.9976VA/DA/D转换器的种类转换器的种类 常用的有逐次逼近式、积分式、并行式等三类。常用的有逐次逼近式、积分式、并行式等三类。v逐次逼近式逐次逼
20、近式A/DA/D转换器的转换时间与转换精度转换器的转换时间与转换精度比较适中,转换时间一般在比较适中,转换时间一般在1 1100100 s s之间,转之间,转换精度一般在换精度一般在0.1%0.1%上下,适用于一般场合。上下,适用于一般场合。v积分式积分式A/DA/D转换器速度较慢,其转换时间一般转换器速度较慢,其转换时间一般在在msms级。适用于要求精度高,但转换速度较慢级。适用于要求精度高,但转换速度较慢的仪器中使用。的仪器中使用。v并行式并行式又称闪烁式,采用并行比较,因而转换又称闪烁式,采用并行比较,因而转换速率可以达到很高,其转换时间可达速率可以达到很高,其转换时间可达nsns级,可
21、级,可用于医学图象处理等转换速度较快的仪器中。用于医学图象处理等转换速度较快的仪器中。2.1.22.1.2逐次逼近式逐次逼近式ADCADC 逐次逼近式逐次逼近式A/DA/D原理概述原理概述 v N N位的逐次逼近式位的逐次逼近式A/DA/D转换器(见下页图),转换器(见下页图),由由N N位寄存器、位寄存器、N N位位D/AD/A转换器、比较器、逻辑转换器、比较器、逻辑控制电路、输出缓冲器等五部分组成。控制电路、输出缓冲器等五部分组成。v工作原理:工作原理:启动信号作用后,时钟信号先通启动信号作用后,时钟信号先通过逻辑控制电路使过逻辑控制电路使N N位寄存器的最高位位寄存器的最高位D DN-1
22、N-1为为1 1,以下各位为以下各位为0 0,这个二进制代码经,这个二进制代码经D/AD/A转换器转换器转换成电压转换成电压U U0 0(此时为全量程电压的一半)送此时为全量程电压的一半)送到比较器与输入模拟电压到比较器与输入模拟电压U UX X比较。若比较。若U UX XUU0 0,则保留这一位;若则保留这一位;若U UX XUU0 0,则则D DN-1N-1 位置位置0 0。逻辑控制逻辑控制N位存储器位存储器输输出出缓缓冲冲器器D/A转换器转换器-+比较器比较器时钟时钟启动启动EOCOEUxUoURDoDN-1A/D转换器实际转换过程已不重要转换器实际转换过程已不重要v目前,逐次逼近式目前
23、,逐次逼近式A/DA/D转换器大都做成单片集成转换器大都做成单片集成电路的形式,因而电路的形式,因而A/DA/D转换器的实际转换过程已转换器的实际转换过程已不是非常重要。使用时只需发出不是非常重要。使用时只需发出A/DA/D转换启动信转换启动信号,然后在号,然后在EOCEOC端查知端查知A/DA/D转换过程结束后,取出转换过程结束后,取出数据即可。数据即可。v这类芯片有这类芯片有ADC0809ADC0809、ADC1210ADC1210、ADC7574ADC7574、AD574AD574、TLC549TLC549、MAX1241MAX1241等是应用得最多的等是应用得最多的A/DA/D转换器类
24、转换器类型。型。 ADC0809芯片及其接口芯片及其接口 v ADC0809ADC0809是是8 8路路8 8位逐次逼近式位逐次逼近式A/DA/D转换器。它能转换器。它能分时地对分时地对8 8路模拟量信号进行路模拟量信号进行A/DA/D转换,结果为转换,结果为8 8位二进制数据,结构如图位二进制数据,结构如图2-52-5所示,它由三大部所示,它由三大部分组成:分组成:v第一部分是第一部分是:8:8路输入路输入模拟量选择电路模拟量选择电路;v第二部分是第二部分是: :一个一个逐次逼近式逐次逼近式A/DA/D转换器转换器;v第三部分是第三部分是: :三态输出缓冲锁存器三态输出缓冲锁存器。 ADC0
25、809主要特性主要特性v主要特性主要特性1 1)8 8路路8 8位位A AD D转换器,即分辨率转换器,即分辨率8 8位。位。 2 2)具有转换起停控制端。)具有转换起停控制端。 3 3)转换时间为)转换时间为100s100s4 4)单个)单个5V5V电源供电电源供电 5 5)模拟输入电压范围)模拟输入电压范围0 05V5V,不需零点和满,不需零点和满刻度校准。刻度校准。 6 6)工作温度范围为)工作温度范围为-40-408585摄氏度摄氏度 7 7)低功耗,约)低功耗,约15mW15mW。ADC0809引脚功能引脚功能vALEALE:地址锁存允许信号,输入,高电平有效。:地址锁存允许信号,输
26、入,高电平有效。vSTARTSTART: A AD D转换启动信号,输入,高电平有效。转换启动信号,输入,高电平有效。vEOCEOC: A AD D转换结束信号,输出,当转换结束信号,输出,当A AD D转换结束时,转换结束时,此端输出一个高电平(转换期间一直为低电平)。此端输出一个高电平(转换期间一直为低电平)。vOEOE:数据输出允许信号,输入,高电平有效。当:数据输出允许信号,输入,高电平有效。当A AD D转转换结束时,此端输入一个高电平,才能打开输出三态门换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。,输出数字量。vCLKCLK:时钟脉冲输入端。要求时钟频率不高于:时
27、钟脉冲输入端。要求时钟频率不高于640KHZ640KHZ。vREFREF(+ +)、)、REFREF(- -):基准电压。):基准电压。vVccVcc:电源,单一:电源,单一5V5V。vGNDGND:地。:地。 图图2-5 ADC0809原理结构图原理结构图 ADC0809原理结构图原理结构图8路输入模拟量选择电路路输入模拟量选择电路v8路输入模拟量选择电路:路输入模拟量选择电路:8路输入模拟量信号分别接路输入模拟量信号分别接到到IN0到到IN7端,究竟选通哪端,究竟选通哪一路去进行一路去进行A/D转换由地址转换由地址锁存器与译码器电路控制,锁存器与译码器电路控制,见表见表2-1所示。所示。v
28、A,B,C为输入地址选择为输入地址选择线,地址信息由线,地址信息由ALE的上的上升沿打入地址锁存器。升沿打入地址锁存器。ALEALEC B AC B A接通信号接通信号1111111100 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1 IN0IN1IN2IN3IN4IN5IN6IN7均不通均不通表表2-1 ADC0809真值表真值表 ADC0809工作过程工作过程v首先输入首先输入3位地址,并使位地址,并使ALE=1,将地址存入地,将地址存入地址锁存器中。此地址经译码选通址锁存器中。此地址经译码选通8路模拟输入之路模拟输入之一到比较器。一到比较器。vSTART上
29、升沿将逐次逼近寄存器复位。下降沿启上升沿将逐次逼近寄存器复位。下降沿启动动 AD转换,之后转换,之后EOC输出信号变低,指示转输出信号变低,指示转换正在进行。直到换正在进行。直到AD转换完成,转换完成,EOC变为高变为高电平,指示电平,指示AD转换结束,结果数据已存入锁存转换结束,结果数据已存入锁存器,这个信号可用作中断申请。器,这个信号可用作中断申请。v当当OE输入高电平输入高电平 时,输出三态门打开,转换结时,输出三态门打开,转换结果的数字量输出到数据总线上。果的数字量输出到数据总线上。逐次逼近式逐次逼近式A/D转换器工作原理转换器工作原理v逐次逼近式逐次逼近式A/DA/D转换器的工作原理
30、可用天平秤转换器的工作原理可用天平秤重过程作比喻来说明。若有四个砝码共重重过程作比喻来说明。若有四个砝码共重1515克,每个重量分别为克,每个重量分别为8 8、4 4、2 2、1 1克。设待秤克。设待秤重量重量Wx = 13Wx = 13克,可以用下表步骤来秤量:克,可以用下表步骤来秤量:顺序顺序砝码重砝码重比较判断比较判断暂时结果暂时结果1 18g8g8g13g8g13g保留保留 8g8g2 28+4g8+4g12g13g12g13g14g13g撤消撤消12g12g4 48+4+1g8+4+1g13g=13g13g=13g保留保留13g13gA/D转换流程框图转换流程框图逐次逼近式逐次逼近式
31、A/D转换器转换器 vSTARTSTART为为启动信号启动信号,要求输入正脉冲信号,在上,要求输入正脉冲信号,在上升沿复位内部逐次逼近寄存器,在下降沿启动升沿复位内部逐次逼近寄存器,在下降沿启动A/DA/D转换。转换。EOCEOC为为转换结束标志位转换结束标志位,“0 0”表示正表示正在转换,在转换,“1 1”表示一次表示一次A/DA/D转换的结束。转换的结束。vCLOCKCLOCK为外部时钟输入信号,时钟频率决定了为外部时钟输入信号,时钟频率决定了A/DA/D转换器的转换速率,转换器的转换速率,ADC0809ADC0809每一通道的转每一通道的转换约需(换约需(66667373)个时钟周期,
32、当时钟频率取)个时钟周期,当时钟频率取640640KHzKHz时,转换一次约需时,转换一次约需100100 s s时间,这是时间,这是ADC0809ADC0809所能允许的最短转换时间。所能允许的最短转换时间。三态输出缓冲锁存器三态输出缓冲锁存器vA/DA/D转换的结果就是由转换的结果就是由EOCEOC信号信号打入三态输出打入三态输出缓冲锁存器。缓冲锁存器。vOEOE为为输出允许信号输出允许信号,当向,当向OEOE端输入一个高电平端输入一个高电平时,三态门电路被选通,这时便可读取结果。时,三态门电路被选通,这时便可读取结果。否则缓冲锁存器输出为高阻态。否则缓冲锁存器输出为高阻态。 ADC080
33、9的时序图的时序图 vADC0809ADC0809的时序图如图的时序图如图2-62-6所示。在启动所示。在启动ADC0809ADC0809后,后,EOCEOC约在约在1010 s s后才变为低电平,后才变为低电平,因而在因而在用用STARTSTART启动启动08090809转换器转换器后,不能立即后,不能立即通过检测通过检测EOCEOC来判断转换是否结束,而应来判断转换是否结束,而应等待等待约约1010 s s再再检测检测,否则会出现错误结果。编程,否则会出现错误结果。编程时必须注意到这一点。时必须注意到这一点。稳定稳定ADC0809时序时序图图稳定稳定ADC0809与单片机与单片机8031接
34、口电路接口电路 vADC0809ADC0809输出带有三态输出缓冲锁存器,因而输出带有三态输出缓冲锁存器,因而不加不加I/OI/O接口芯片,可以直接接到微机系统的接口芯片,可以直接接到微机系统的总线上。总线上。 vADC0809ADC0809的时钟信号(的时钟信号(CLOCKCLOCK)由由80318031的的ALEALE端端的输出脉冲(其频率为的输出脉冲(其频率为80318031时钟频率的时钟频率的1/61/6)经二分频得到,经二分频得到,80318031由由地址线地址线P P2.02.0和和读写控制读写控制线线启动启动ADC0809ADC0809的的STARTSTART、地址锁存地址锁存A
35、LEALE和输出和输出允许允许OEOE信号。信号。A/DA/D转换结束信号转换结束信号EOCEOC反相后连至反相后连至80318031的的INT1INT1(P P3.33.3)。)。模拟输入通道地址模拟输入通道地址的译的译码输入信号码输入信号A A,B B,C C由由P P0.00.0P P0.20.2提供。根据以上提供。根据以上连接,连接,08090809的地址的地址为为FEFFHFEFFH。74LS373C DQ Q1111+5IN0IN1IN2IN3IN4IN5IN6IN7ALE P0INTRDP2.0WRAB07ABCD0EOCOEALESTARTVCCR+R-.单周期指令的时序单周期
36、指令的时序A/D转换常用的软件控制方式转换常用的软件控制方式 v常用的控制方式主要有:常用的控制方式主要有:程序查询方式、延时程序查询方式、延时等待方式和中断方式。等待方式和中断方式。v1 1程序查询方式程序查询方式v微处理器向微处理器向A/DA/D转换器发出启动信号后,读转换器发出启动信号后,读入转换结束信号,查询转换是否结束;若转换入转换结束信号,查询转换是否结束;若转换结束,可以读入数据;否则再继续查询,直至结束,可以读入数据;否则再继续查询,直至转换结束再读入数据。转换结束再读入数据。v这种方法这种方法微机微机“查询查询”消耗许多时间,因而消耗许多时间,因而效率低,但比较简单,可靠性高
37、。实际应用还效率低,但比较简单,可靠性高。实际应用还是比较普遍的。是比较普遍的。A/D转换常用的软件控制方式转换常用的软件控制方式v2 2延时等待方式延时等待方式v启动启动A/DA/D后,根据后,根据A/DA/D转换所需的时间(如转换所需的时间(如ADC0809ADC0809为为100100 s s)软件延时等待软件延时等待,延时结束,延时结束,读入数据。这种方法可靠性高,不占查询端读入数据。这种方法可靠性高,不占查询端口。口。v3 3中断方式中断方式v在中断方式中,微处理器在中断方式中,微处理器启动启动A/DA/D转换后转换后可转去处理其他事情,可转去处理其他事情,A/DA/D转换结束便向微
38、处转换结束便向微处理器发出中断申请信号,微处理器响应理器发出中断申请信号,微处理器响应中断中断后后再来再来读入数据读入数据。微处理器与。微处理器与A/DA/D转换器并行转换器并行工作,提高了工作效率。工作,提高了工作效率。ADC0809与单片机与单片机8031接口实例接口实例v以下结合图以下结合图2-72-7所示的所示的ADC0809ADC0809与单片机与单片机80318031接接口电路,给出查询、延时和中断这三种方式下口电路,给出查询、延时和中断这三种方式下的转换程序。的转换程序。v转换程序的功能是将由转换程序的功能是将由ININ0 0端输入的端输入的0 05V5V模拟模拟信号转换为对应的
39、数字量信号转换为对应的数字量00H00HFFHFFH,然后再,然后再存存入入80318031内部内部RAMRAM的的30H30H单元中。单元中。a.查询方式查询方式 v MOV DPTR,#0FEFFHv MOV A,#00H ; 赋通道赋通道0地址地址v MOVX DPTR,A ; 启动启动IN0转换转换v MOV R2,#20Hv DLY: DJNZ R2,DLY ; 延时延时,等待等待EOC变低变低vWAIT: JB P3.3,WAIT ; 查询查询,等待等待EOC变高变高v MOVX A,DPTRv MOV 30H,A ; 结果存结果存30Hb.延时等待方式延时等待方式v MOV DP
40、TR,#0FEFFHv MOV A,#00H ; 赋通道赋通道0地址地址v MOVX DPTR,A ; 启动启动IN0转换转换v MOV R2,#40Hv WAIT: DJNZ R2,DLY ; 延时约延时约120uSv MOVX A,DPTRv MOV 30H,A ; 结果存结果存30H c.中断方式中断方式 v主程序:主程序:v MAIN:SETB IT1 ;选选INT1为边沿触发为边沿触发vSETB EX1 ;允许允许INT1中断中断 vSETB EA ;打开中断打开中断vMOV DPTR,#0FEFFHvMOV A,#00H vMOVX DPTR,A ;启动启动A/D转换转换v ;执行
41、其他任务执行其他任务中断服务程序中断服务程序INT1: PUSH DPL ;保护现场保护现场 PUSH DPH PUSH A MOVDPTR,#0FEFFH MOVX A,DPTR ;读转换结果读转换结果 MOV30H,A ;结果存结果存30H30H MOVA,00H MOVX DPTR,A ;启动下一次转换;启动下一次转换 POP A POP DPH POP DPL ;返回现场返回现场 RETI ;返回返回P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALE WR P2.7RDINTO+5VGNDD0D1D2D3D4D5D6D7ADDAADDBADDCCLKALESTART
42、OEEOCIN0IN1IN2IN3IN4IN5IN6IN7 VREF+VREF-ADC08098051分分频频器器ADC0809与与MCS-51单片机的接口单片机的接口1硬件连接硬件连接汇编语言编程:汇编语言编程:ORG 0003HORG 0003HLJMP INT0LJMP INT0ORG 0100H ORG 0100H ;主程序;主程序MOV R0MOV R0,#30H #30H ;设立数据存储区指针;设立数据存储区指针MOV R2MOV R2,#08H #08H ;设置;设置8 8路采样计数值路采样计数值SETB IT0 SETB IT0 ;设置外部中断;设置外部中断0 0为边沿触发方式
43、为边沿触发方式 SETB EA SETB EA ;CPUCPU开放中断开放中断SETB EX0 SETB EX0 ;允许外部中断;允许外部中断0 0中断中断MOV DPTRMOV DPTR,#0000H #0000H ;送入口地址并指向;送入口地址并指向IN0IN0LOOPLOOP: MOVX DPTRMOVX DPTR,A A ;启动;启动A/DA/D转换,转换,A A的值无意义的值无意义HEREHERE: SJMP HERE SJMP HERE ;等待中断;等待中断2软件编程软件编程设接口电路用于一个设接口电路用于一个8 8路模拟量输入的巡回检测系统,使用中路模拟量输入的巡回检测系统,使用
44、中断方式采样数据,把采样转换所得的数字量按序存于片内断方式采样数据,把采样转换所得的数字量按序存于片内RAMRAM的的30H37H30H37H单元中。采样完一遍后停止采集。单元中。采样完一遍后停止采集。ORG 0200H ORG 0200H ;中断服务程序;中断服务程序INT0INT0: MOVX AMOVX A,DPTR DPTR ;读取转换后的数字量;读取转换后的数字量MOV R0MOV R0,A A ;存入片内;存入片内RAMRAM单元单元INC DPTR INC DPTR ;指向下一模拟通道;指向下一模拟通道INC R0 INC R0 ;指向下一个数据存储单元;指向下一个数据存储单元D
45、JNZ R2DJNZ R2,NEXT NEXT ;8 8路未转换完,则继续路未转换完,则继续CLR EA CLR EA ;已转换完,则关中断;已转换完,则关中断CLR EX0 CLR EX0 ;禁止外部中断;禁止外部中断0 0中断中断RETI RETI ;中断返回;中断返回NEXTNEXT: MOVX DPTRMOVX DPTR,A A ;再次启动;再次启动A/DA/D转换转换RETI RETI ;中断返回;中断返回C语言编程:语言编程:#include #include #include /#include /定义绝对地址访问定义绝对地址访问#define uchar unsigned ch
46、ar#define uchar unsigned char#define IN0 XBYTE0 x0000 /#define IN0 XBYTE0 x0000 /定义定义IN0IN0为通道为通道0 0的地址的地址static uchar data x8; /static uchar data x8; /定义定义8 8个单元的数组,存放结果个单元的数组,存放结果uchar xdata uchar xdata * *ad_adr; /ad_adr; /定义指向通道的指针定义指向通道的指针uchar i=0;uchar i=0;void main(void)void main(void) IT0=1
47、; /IT0=1; /初始化初始化EX0=1;EX0=1;EA=1;EA=1;i=0;i=0;ad_adr=&IN0; /ad_adr=&IN0; /指针指向通道指针指向通道0 0* *ad_adr=i; /ad_adr=i; /启动通道启动通道0 0转换转换for (;) ; /for (;) ; /等待中断等待中断 void int_adc(void) interrupt 0 /void int_adc(void) interrupt 0 /中断函数中断函数 xi=xi=* *ad_adr; /ad_adr; /接收当前通道转换结果接收当前通道转换结果i+;i+;ad_adr+; /ad_
48、adr+; /指向下一个通道指向下一个通道if (i8)if (i8) * *ad_adr=i; /8ad_adr=i; /8个通道未转换完,启动下一个通道返回个通道未转换完,启动下一个通道返回 elseelse EA=0;EX0=0; /8EA=0;EX0=0; /8个通道转换完,关中断返回个通道转换完,关中断返回 AD574芯片及其接口芯片及其接口 vAD574AD574是是1212位位快速逐次逼近型快速逐次逼近型A/DA/D转换器,其最转换器,其最快转换时间为快转换时间为2525 s s,转换误差为,转换误差为 1LSB1LSB。vAD574AD574具有下述几个具有下述几个基本特点:基
49、本特点:v片内含有电压基准和时钟电路等,因而外围电片内含有电压基准和时钟电路等,因而外围电路较少;路较少;v数字量输出具有三态缓冲器,因而可直接与微数字量输出具有三态缓冲器,因而可直接与微处理器接口;处理器接口;v模拟量输入有单极性和双极性两种方式,接成模拟量输入有单极性和双极性两种方式,接成单极性方式时,输入电压范围为单极性方式时,输入电压范围为0 010V10V或或0 020V20V,接成双极性方式时,输入电压范围为,接成双极性方式时,输入电压范围为- -5V5V5V,-10V5V,-10V10V10V。 图图2-8 AD574原理与引脚图原理与引脚图 AD574原理与主要引脚信号定义原理
50、与主要引脚信号定义 vCS :片选,低有效;:片选,低有效;CE :片允许,高有效;:片允许,高有效;RC :读变换,高为读:读变换,高为读AD变换结果,低变换结果,低为启动为启动AD变换;变换;128 :数据格式,高为:数据格式,高为12位并行输出,低为位并行输出,低为8位位(或或4位位)并行输出本设计令其接地;并行输出本设计令其接地;A0 :字节地址短周期,高为:字节地址短周期,高为8位变换输出低位变换输出低4位,低为位,低为12位变换输出高位变换输出高8位;位;STS :变换状态,高为正在变换,低为变换结:变换状态,高为正在变换,低为变换结束;束;vREF IN :基准输入;:基准输入;