《数据采集系统与微机的接口》由会员分享,可在线阅读,更多相关《数据采集系统与微机的接口(78页珍藏版)》请在金锄头文库上搜索。
1、 第三章第三章 数据采集系统数据采集系统 数据采集系统与微机的接口数据采集系统与微机的接口 数据采集系统主要实现从现场采集数据,数据采集系统主要实现从现场采集数据,由微处理器分析处理或显示打印,为现由微处理器分析处理或显示打印,为现场操作者提供操作指导等功能。场操作者提供操作指导等功能。 数据采集系统组成(数据采集系统组成(1)多路开关多路开关MUX、测量放大器、采样、测量放大器、采样-保持、模数转保持、模数转换、微机接口、应用软件换、微机接口、应用软件 数据采集系统组成(数据采集系统组成(2)数据采集系统与微机之间的接口(数据采集系统与微机之间的接口(interface):实现微机(微处理器
2、)与多路开关、采样保持电路、ADC等部件之间信息的传输。硬件接口:硬件接口:为两个设备提供物理连接,利用硬件技术来完成接口的设备称为接口电路。微处理器(微机)的接口电路,在于解决微机系统与外部世界的连接。 数据线、缓冲、锁存、地址译码、片选、读/写、中断 软件接口:软件接口:为两个程序之间提供通信。 协议、驱动程序、应用程序一一 数据采集系统对微机接口的要求数据采集系统对微机接口的要求一个基本的外设接口一个基本的外设接口l“外设接口外设接口”是是“CPU”与与“外设外设”之间传递之间传递信息的控制电路。信息的控制电路。l是是“CPU”与与“外设外设”之间传送信息的一个之间传送信息的一个“界面界
3、面”、一个连接部件。、一个连接部件。l外设接口一边通过外设接口一边通过CPU的三总线(或微机总的三总线(或微机总线)同线)同CPU连接,一边通过三种信息连接,一边通过三种信息数据数据信息、控制信息和状态信息信息、控制信息和状态信息同外设连接。同外设连接。外设接口的功能外设接口的功能(1)转换信息的格式)转换信息的格式(2)提供联络信号)提供联络信号(3)协调定时差异)协调定时差异(4)进行译码选址)进行译码选址(5)实现电平转换)实现电平转换(6)具备时序控制)具备时序控制(7)最好可编程序)最好可编程序数据采集系统对微机接口的要求:数据采集系统对微机接口的要求:数据采集系统对微机接口的要求:
4、数据采集系统对微机接口的要求:(1)具有能与系统总线相连接的数据缓冲器和多根数据线。具有能与系统总线相连接的数据缓冲器和多根数据线。由于接口电路是挂在系统总线上的,只有接口电路为三态输出时才不会对数据产生影响。传输数据在接口电路被激活之前先保存在数据缓冲器内。(2)应有地址译码和片选功能应有地址译码和片选功能,以便微机能通过寻址对其进行访问。(3)应有地址或数据锁存功能应有地址或数据锁存功能。因为外部设备送到接口电路的信息,微机不一定有空读取,此时接口应把信息暂时锁存,以待微机空闲时读取。(4)具有中断请求和处理的功能具有中断请求和处理的功能,以便微机能通过中断来读取或输出信息。二二二二 常用
5、接口芯片常用接口芯片 在外设接口电路中,常用在外设接口电路中,常用缓冲器、数据收发缓冲器、数据收发器和锁存器器和锁存器等器件对传输过程中的信息进行放大、等器件对传输过程中的信息进行放大、隔离以及锁存。隔离以及锁存。(1 1 1 1)8 8 8 8位位位位3 3 3 3态态态态D D D D锁存器锁存器锁存器锁存器 74LS37374LS37374LS37374LS3738D8D锁存器,具有三态驱动输锁存器,具有三态驱动输出,由出,由8 8个个D D门组成,门组成,8 8个输个输入端入端1D1D8D8D、8 8个输出端个输出端1Q1Q8Q8Q,2 2个控制端个控制端OCOC和和C C。 8D型锁
6、存器74LS373功能表 举例:举例:在许多设备中常需要显示计数器的计数值,计数值通常以8421BCD码计数,并以七段数码显示器显示。问题:如果计数器的计数速度高,人眼则无法辨认显示的字符。措施:在计数器和译码器之间加入锁存器,就可控制数据显示的时间。 若锁存信号C0时,数据被锁存,译码显示电路稳定显示锁存的数据。 三态输出的八缓冲器八缓冲器和线驱动器线驱动器;8个输入端,分为两路1A11A4,2A12A4;8个输出端,分为两路1Y11Y4,2Y12Y4;分别由2个门控信号 和 控制; 和 为低,芯片工作,Y = A; 74LS244缓冲器主要用于三态输出的存储地址驱动器、时主要用于三态输出的
7、存储地址驱动器、时钟驱动器和总线定向接收器和定向发送器钟驱动器和总线定向接收器和定向发送器等。74LS244缓冲后,输入信号被驱动,输出信号的驱动能力加大了。 常用的缓冲器还有74LS240和74LS241等。(2 2)8 8位三态单向驱动器位三态单向驱动器74LS24474LS24474LS24474LS244缓冲器逻辑电路和引脚图缓冲器逻辑电路和引脚图缓冲器逻辑电路和引脚图缓冲器逻辑电路和引脚图74LS24474LS244的端口地址由决定,故端口地址可取的端口地址由决定,故端口地址可取7FFFH7FFFH,通过下列指令可从该端口输入数据。通过下列指令可从该端口输入数据。MOV DPTRMO
8、V DPTR,#7FFFH #7FFFH ;DPTRDPTR指向指向74LS24474LS244端口端口MOVX AMOVX A,DPTR DPTR ;输入数据;输入数据 74LS245是一种三态输出的8总线收发器。 该收发器有16个双向传送的数据端,即A1A8,B1B8,另有二个控制端使能端 ,方向控制端 DIR 。 该芯片的功能如表所示。 74LS24574LS245通常用于数据的双向传送、缓冲和驱动。通常用于数据的双向传送、缓冲和驱动。常用的数据收发器还有74LS243,Intel 8286、8287等。(3 3)8D8D三态双向缓冲器三态双向缓冲器74LS24574LS245 74LS
9、24574LS245八总线收发器逻辑电路和引脚图八总线收发器逻辑电路和引脚图八总线收发器逻辑电路和引脚图八总线收发器逻辑电路和引脚图使能方向控制DIR传送方向00BA01AB1隔开74LS24574LS245的真值表的真值表应用举例应用举例(1 1) 74LS373 74LS373、245245、244244在在在在PC/XTPC/XT机中的应用机中的应用机中的应用机中的应用8088发出的地址总线、数据总线和控制总线要经过发出的地址总线、数据总线和控制总线要经过一些总线接口器件变成系统总线中的对应信号;一些总线接口器件变成系统总线中的对应信号;8288总线控制器是控制总线的接口器件;总线控制器
10、是控制总线的接口器件;地址总线和数据总线的接口部件为:地址总线和数据总线的接口部件为:1. 地址锁存器地址锁存器74LS373;2. 地址缓冲器地址缓冲器74LS244;3. 数据收发器数据收发器74LS245。(2 2) 用于一般的总线驱动电路用于一般的总线驱动电路用于一般的总线驱动电路用于一般的总线驱动电路8086系统中,存储器和系统中,存储器和I/O接口较多,须在接口较多,须在CPU总线和系统总线之间加接总线驱动电路,要总线和系统总线之间加接总线驱动电路,要求在加接驱动电路后求在加接驱动电路后CPU仍能进行常规的存储器仍能进行常规的存储器读写、读写、I/O读写、中断响应、总线请求响应以及
11、在读写、中断响应、总线请求响应以及在RESET有效时的相应操作。有效时的相应操作。 二二 典型数据采集系统的微机接口电路典型数据采集系统的微机接口电路 微机与多路模拟开关微机与多路模拟开关MUX接口电路接口电路 微机与微机与ADC接口电路接口电路 地址译码器接口电路地址译码器接口电路 微机与微机与DAC接口电路。接口电路。片选信号片选信号1 1微机与多路模拟开关微机与多路模拟开关MUXMUX接口电路接口电路 多多路路模模拟拟转转换换开开关关常常采采用用8路路模模拟拟转转换换开开关关CD4051。CD4051是是由由地地址址译译码码器器和和多多路路双双向向模模拟拟开开关关组组成成的的8路路模模拟
12、拟转转换换开开关关,引脚功能如下:引脚功能如下:X0X0X7X7:输入;输入;X: 输出,可以通过外部地址(输出,可以通过外部地址(C,B,A引脚)选择引脚)选择8路输入中的某路输入中的某1路与输出路与输出X接通接通;VDD和和VEE :提供工作电源,其幅值不得提供工作电源,其幅值不得低于模拟信号;低于模拟信号;INH:禁止控制输入,输入高电平时,多禁止控制输入,输入高电平时,多路开关中各开关均不通,输出呈高阻态。路开关中各开关均不通,输出呈高阻态。 4D4D4D4D型触发器型触发器型触发器型触发器74LS17574LS17574LS17574LS175用作通道译码控制器:用作通道译码控制器:
13、用作通道译码控制器:用作通道译码控制器:(1 1)R RD D=1,CP=0=1,CP=0时,输出处于保持状态,时,输出处于保持状态,MUXMUX与微机总线隔离。与微机总线隔离。(2 2)R RD D=1,CP=1,CP由由0 10 1,Q=DQ=D,数据总线的通道选择码被加至多,数据总线的通道选择码被加至多路开关八选一译码器输入端。路开关八选一译码器输入端。 实现实现D/A转换器和微型计算机接口技术的关键是转换器和微型计算机接口技术的关键是数据锁存数据锁存数据锁存数据锁存问题。有些问题。有些D/A转换器芯片本身带有锁存器,但也有些转换器芯片本身带有锁存器,但也有些D/A从转换器芯片本身不带锁
14、存器。此时一些并口芯片如从转换器芯片本身不带锁存器。此时一些并口芯片如8212,74LS273及可编程的并行及可编程的并行I/O接口芯片接口芯片8255A均可均可作为作为D/A转换的锁存器。转换的锁存器。lA/D和和D/A与微机的接口有串行接口和并行接口之分。本与微机的接口有串行接口和并行接口之分。本章主要介绍并行章主要介绍并行D/A和和A/D转换的并行接口。目前大多数转换的并行接口。目前大多数A/D转换器(高速)都内含采样保持器,所以,此处不考转换器(高速)都内含采样保持器,所以,此处不考虑采样保持器。虑采样保持器。2 2微机与微机与DACDAC的接口的接口(1 1)D/AD/A转换器及其连
15、接特性转换器及其连接特性1 1 1 1)DACDACDACDAC的主要参数的主要参数的主要参数的主要参数分辨率分辨率: :DAC能转换的二进制数的位数。位数越多,分辨率越高。转换时间转换时间: :从输入数字量到转换结束,输出达到最终值并稳定所需的时间。电流型电流型: :几百ns几s;电压型电压型: :运算放大器的响应时间。精度精度: :DAC实际输出电压与理论值之间的误差。单位:LSB线性度线性度: :当数字量变化时,输出模拟量按比例变化的程度。 线性误差线性误差: :模拟输出偏离理想输出的最大值。VFS2n模拟量数字量理想曲线实际曲线1实际曲线2线性误差最大2 2)DACDAC的连接特性的连
16、接特性输入缓冲能力输入缓冲能力: :是否外加数据锁存器是否外加数据锁存器输入数据的宽度输入数据的宽度( (分辨率分辨率):):与系统数据总线宽与系统数据总线宽度比较度比较数据几次输入数据几次输入输入数据码制输入数据码制: :二进制、二进制、BCDBCD码或补码、偏移码或补码、偏移二进制码二进制码输出模拟量的类型输出模拟量的类型: :电压型、电流型电压型、电流型输出模拟量的极性输出模拟量的极性: :单极性、双极性单极性、双极性(2 2)D/AD/A转换器与微处理器的接口方法转换器与微处理器的接口方法1 1 1 1)接口的任务)接口的任务)接口的任务)接口的任务 数据缓冲数据缓冲, ,无条件传送无
17、条件传送2 2 2 2)接口的结构形式)接口的结构形式)接口的结构形式)接口的结构形式直接与直接与CPUCPU相连相连有输入锁存能力有输入锁存能力采用中小规模逻辑芯片与采用中小规模逻辑芯片与CPUCPU相连相连利用通用并行接口芯片与利用通用并行接口芯片与CPUCPU相连相连采用采用GALGAL器件器件(3 3)D/AD/A转换器接口电路设计以转换器接口电路设计以DAC0832DAC0832为例为例DAC寄 存 器输入寄存器D/A转 换 器D07&Io1Io2&LE1LE2ILECSWR1WR2LEi=1:相应缓冲器打开 0:相应缓冲器关闭XFERDAC0832的内部结构DAC08328DAC0
18、8328位位DAC,DAC,内部有内部有两级三态缓冲器。两级三态缓冲器。 ILE=1,CS=WR1=0,ILE=1,CS=WR1=0,写入第写入第1 1级级缓冲器。缓冲器。 XFER=WR2=0,XFER=WR2=0,写入第写入第2 2级缓冲级缓冲器器, ,并开始转换。并开始转换。DAC0832DAC0832的主要特性的主要特性DAC0832DAC0832的工作方式的工作方式CSWR1WR2XFERDAC0832ILED07+5VA直通方式 (需外加锁存器)CSWR1WR2XFERDAC0832ILED07A8255APA07PB4PB3PB2PB1PB0CPU1)1)1)1)直通方式直通方式
19、直通方式直通方式用用8255A8255A作接口作接口CSWR1WR2XFERDAC0832ILED07+5VA单缓冲方式(2)YIOW单缓冲方式(1)YCSWR1WR2XFERDAC0832ILED07+5VAIOW转换转换N N MOV AL,N MOV AL,N OUT Port, ALOUT Port, AL2 2 2 2)单缓冲方式:)单缓冲方式:)单缓冲方式:)单缓冲方式:单缓冲方式是指DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受单片机控制的方式。MOV DX,PORT MOV DX,PORT MOV AL,0 MOV AL,0 OUT DX,AL OUT DX
20、,AL INC AL INC AL JMP NEXTJMP NEXTNEXT:NEXT:单缓冲方式输出单缓冲方式输出正向锯齿波正向锯齿波MOV DX,PORTMOV DX,PORTMOV AL,0 MOV AL,0 OUT DX,AL OUT DX,AL INC AL INC AL JNZ UP JNZ UP MOV AL,0FEH MOV AL,0FEH OUT DX,AL OUT DX,AL DEC AL DEC AL JNZ DOWN JNZ DOWN JMP UPJMP UPDOWN:DOWN:UP:UP:输出三角输出三角波波 DAC0832的的数数字字量量输输入入锁锁存存和和DA转转
21、换换输输出出分分两两步步完完成成。首首先先,将将数数字字量量输输入入到到各各路路DA转转换换器器的的输输入入寄寄存存器器,然然后后,控控制制各各路路DA转转换换器器,使使各各路路DA转转换换器器输输入入寄寄存存器器中中的的数数据据,同同时时进进入入DAC寄寄存存器器,并并转转换换输输出出。所所以以,在在这这种种工工作作方方式式下下,DAC0832占占用用两两个个IO地地址址,输输入入寄存器和寄存器和DAC寄存器各占一个寄存器各占一个IO地址。地址。3 3)双缓冲方式)双缓冲方式CSWR1WR2XFERDAC0832ILED07+5VA双缓冲方式Y0IOWY1转换转换N N MOV AL,N M
22、OV AL,N OUT P1,AL OUT P1,AL OUT P2,ALOUT P2,AL 应用:多个模拟通道要求同时更新数据应用:多个模拟通道要求同时更新数据CSXFER0832(1)AY1CSXFER0832(2)AY2CSXFER0832(n)AYnYMOV AL,N1 MOV AL,N1 OUT P1,AL OUT P1,AL MOV AL,N2 MOV AL,N2 OUT P2,AL OUT P2,AL MOV AL,Nn MOV AL,Nn OUT Pn,AL OUT Pn,AL OUT P,ALOUT P,AL 将所有将所有08320832的的ILEILE接高电平接高电平,WR
23、1,WR1、WR2WR2与与IOWIOW相连相连,CS,CS和和XFERXFER的连接如图。设要求同时更新的数据依次为的连接如图。设要求同时更新的数据依次为N1N1、N2NnN2Nn,则程序段:则程序段:单片机与单片机与DAC0832的接口的接口DAC0832DAC0832具有数字量的输入锁存功能,可具有数字量的输入锁存功能,可以和单片机的以和单片机的P0P0口直接相连。单片机与口直接相连。单片机与DAC0832DAC0832的接口,可根据需要按的接口,可根据需要按双缓冲器双缓冲器方式、单级缓冲器方式和直通方式方式、单级缓冲器方式和直通方式联接。联接。l 1)单缓冲器连接方式)单缓冲器连接方式
24、 ILE接接+5V,片片选选信信号号及及数数据据传传输输信信号号都都与与地地址址选选择择线线相相连连,地地址址为为7FFFH,两两级级寄寄存存器器的的写写信信号号都都由由CPU的的端端控控制制。数数字字量量可可以以直直接接从从MCS-51的的P0口口送送入入DAC0832。当当地地址址选选择择线线选选择择好好DAC0832后后,只只要要输输出出控控制制信信号号,DAC0832就就能能一一次次完完成成数数字字量量的的输输入入锁锁存存和和D/A转换输出。转换输出。执行下列几条指令就可以完成一次执行下列几条指令就可以完成一次执行下列几条指令就可以完成一次执行下列几条指令就可以完成一次D/AD/AD/
25、AD/A转换:转换:转换:转换: MOV DPTR, #7FFFH ; 地址指向地址指向DAC0832MOV A, #DATA ; 待转换的数字量待转换的数字量DATA 送累加器送累加器AMOVX DPTR, A ; 数字量送指向的地址,数字量送指向的地址, 有效时完成一次有效时完成一次D/A输入输入 WAVE:MOV DPTR,#addr;输入寄存器和 DAC寄存器地址 MOV A,DATA0 ;数字量初值 LOOP: MOVX DPTR,A CJNEA,DATAEND,MORE SJMP WAVE MORE:INC A SJMP LOOP利用上图所示电路,利用上图所示电路,产生锯齿波信号。
26、产生锯齿波信号。 )双缓冲器连接方式)双缓冲器连接方式从从X、Y同步输出不同电压的程序:同步输出不同电压的程序:MOV DPTR,#addr1 ;1#输入寄存器地址MOV A,DATA1 ;数字量送A MOV DPTR,A ;数字量送1输入寄存器 MOV DPTR,#addr2 ;2#输入寄存器地址 MOV A,DATA2 ;数字量送A MOV DPTR,A ;数字量送输入寄存器 MOV DPTR,#addr3 ;1#、2#DAC寄存器地址MOV DPTR,A ;1#、2#输入寄存器的数字量、分别同时送1#、2#DAC寄存器,并同时转换,同步输出 利用此电路输出一对同步信号,如从利用此电路输出
27、一对同步信号,如从利用此电路输出一对同步信号,如从利用此电路输出一对同步信号,如从X X、Y Y输出一组同步的输出一组同步的输出一组同步的输出一组同步的锯齿波和正弦波信号锯齿波和正弦波信号锯齿波和正弦波信号锯齿波和正弦波信号 D/A D/A转换器接口电路设计转换器接口电路设计1212位位DACDAC1)1)1)1)无三态输入缓冲器、无三态输入缓冲器、无三态输入缓冲器、无三态输入缓冲器、12121212位位位位DACDACDACDAC数据分两次写入数据分两次写入, ,外加两级输入缓冲器外加两级输入缓冲器左对齐左对齐: :D15D12D11D8D7D012位有效数据D15D8D7D4D3D012位
28、有效数据右对齐右对齐: :AENIOWA09D07PC插槽译码电路CD07Q07CD07Q07CD03Q0312位DACD07D811A第二级第一级Y0Y1右对齐D03转换数据转换数据123H123HMOV AX,0123H MOV AX,0123H OUT P0,AL OUT P0,AL MOV AL,AH MOV AL,AH OUT P1,ALOUT P1,AL2)2)2)2)有三态输入缓冲器有三态输入缓冲器有三态输入缓冲器有三态输入缓冲器12121212位位位位DAC DAC1210DAC DAC1210DAC DAC1210DAC DAC1210内部有两级缓冲器内部有两级缓冲器, ,左
29、对齐方式输入。数据内部结构与左对齐方式输入。数据内部结构与DAC0832DAC0832类似。类似。Io1Io2DAC1210DAC1210的内部结构的内部结构8位输入 寄存器4位输入 寄存器12位 DAC 寄存器&LE1LE2CSWR1WR2XFER12位 D/A 转换器LE3B1/B2D411D03必须先写高必须先写高8 8位位 后写低后写低4 4位位( (写入时令写入时令B B1 1/B/B2 2=0)=0)应用举例应用举例将数据将数据将数据将数据123H123H送给送给送给送给DAC1210DAC1210进行转换进行转换进行转换进行转换转换程序段转换程序段MOV BX,1230H MOV
30、 DX,341H MOV AL,BHOUT DX,AL; 写入高8位MOV DX,340H MOV AL,BLOUT DX,AL; 写入低4位 MOV DX,342H OUT DX,AL ; 开始转换A/DA/D转换器转换器(ADC)(ADC):将模拟量转换成数字量的线性线性电路器件按速度分按速度分: :超高速(330ns) 次超高速(330ns3.3s) 高速(3.3s20s) 中速(20s300s) 慢速(300s) 按原理分按原理分直接转换型直接转换型:逐次逼近逐次逼近(较高分辨率及速度)、并联比较并联比较 间接转换型间接转换型:积分型积分型(抗干扰、高分辨率、但速度慢)、电压电压/ /
31、频率频率、电压电压/ /脉宽脉宽按分辨率分按分辨率分:4位、8位、10位、12位3 3微机与微机与ADCADC的接口电路的接口电路1 1 1 1)ADCADCADCADC的主要参数的主要参数的主要参数的主要参数分辨率分辨率:ADC能转换成的二进制数的位数。位数越多,分辨率越高转换时间转换时间:从输入启动信号到转换结束,得到稳定的数字量所需的时间精度、线性度:精度、线性度:同DAC2 2 2 2)ADCADCADCADC的外部特性的外部特性的外部特性的外部特性模拟信号输入线模拟信号输入线: :单通道/多通道数字量输出线数字量输出线: :分辨率转换启动线转换启动线: :启动方式转换结束状态线转换结
32、束状态线: :查询/引发中断/请求DMA脉冲启动电平脉冲启动电平启动启动必备必备 信号线信号线ADCADC必须由必须由外部启动外部启动STS=0CE. .(R/C=0). .CSAD574CCSCADC1210STATUS下降沿CONVCMDADC1131JBUSY=1STARTADC7570INTRCS. .WRADC0804DRB/C=0AD570EOCSTARTADC0809转换结束状态转换结束状态启动信号启动信号芯片型号芯片型号3)ADC3)ADC与微处理器的接口方法与微处理器的接口方法 ADC ADC与与CPUCPU的连接的连接分辨率分辨率: :是否高于系统数据总线的宽度是否高于系统
33、数据总线的宽度数据输出结构数据输出结构: :是否有三态缓冲功能是否有三态缓冲功能启功方式启功方式: :脉冲启动脉冲启动( (读写脉冲读写脉冲)/)/电平启动电平启动( (经锁存经锁存) )数据传送方式数据传送方式: :查询、中断、查询、中断、DMADMA、板上、板上RAMRAM方式方式 ADC ADC接口的主要操作接口的主要操作发启动转换信号发启动转换信号取回取回“转换结束转换结束”状态信号状态信号读取转换结果读取转换结果进行通道选择进行通道选择:多通道ADC发采样发采样/ /保持保持(S/H)(S/H)控制信号控制信号:高速变化信号必须完成必须完成 ADC ADC接口电路的结构形式接口电路的
34、结构形式直接直接与CPU相连有三态缓冲能力采用中小规模中小规模逻辑芯片与CPU相连利用通用并行接口通用并行接口芯片与CPU相连采用GALGAL器件器件 ADC ADC数据的传送数据的传送查询方式中断方式DMA方式:高速ADC板上RAM方式:超高速ADC4)4)查询方式查询方式A/DA/D转换器接口电路设计转换器接口电路设计有三态输出锁存器、有三态输出锁存器、1212位位ADCAD574AADCAD574AAD574AAD574A的主要特性的主要特性分辨率可选分辨率可选(8(8位位/12/12位位),),单通道单通道, ,逐次逼近型逐次逼近型, ,负脉冲启动负脉冲启动, ,转换时间转换时间25s
35、25s。硬件连接硬件连接Y0Y1AENIOWA09D07PC插槽译码电路Y2&D7D47D811D03STSCSA0AD574A&R/CCEIOR12/8AY0:310H,Y1:311H,Y2:312H软件编程软件编程数据采集程序段数据采集程序段MOV CX,64 LEA DI,BUF MOV DX,312H OUT DX,AL MOV DX,310H IN AL,DX AND AL,80H JNZ WAIT MOV DX,311H IN AL,DX AND AL,0FH MOV DI,AL MOV DX,312H IN AL,DX MOV DI+1,AL ADD DI,2 LOOP NEXT
36、;启动转换;STS=1,等待;读取低4位;读取高8位NEXT:WAIT:对对312H312H写写, ,启动一次启动一次1212位转换位转换 对对310H310H读读, ,取回取回STS(DSTS(D7 7位位) )对对311H311H读读, ,读回低字节读回低字节(D(D4 4D D7 7) )对对312H312H读读, ,读回高字节读回高字节可写入可写入任意值任意值1212位转换位转换, ,数据分两次读出数据分两次读出, ,查查询方式询方式, ,采集采集6464个数据左对齐存个数据左对齐存入入BUFBUF为首址的内存。为首址的内存。无三态输出锁存器、无三态输出锁存器、1212位位ADCADC
37、1210ADCADC1210AENIORA09D07PC插槽Q07D07Q03D03ADC1210D07D811A右对齐D03D7Q7译码电路Y01Y1Y211SCCCIND7GGLS244设设Y Y0 0Y Y2 2的地址为的地址为330H330H332H332H对对332H332H读读, ,启动一次转换启动一次转换 对对330H330H读读, ,取回取回CC(DCC(D7 7位位) )对对331H331H读读, ,读低读低8 8位位对对330H330H读读, ,读高读高4 4位位(D(D0 0D D3 3) )SCSC:启动信号,负脉冲有效;CCCC:转换结束,低有效外加输出锁存器外加输出
38、锁存器外加输出锁存器外加输出锁存器采集一个数据采集一个数据BXBXMOV DX,332H ; 启动转换 OUT DX, AL MOV DX,330H IN AL,DX AND AL,80H JNZ WAIT ; CC=1,等待MOV DX,331H ; 读取低8位IN AL,DX MOV BL,AL MOV DX,330H ;读取高4位IN AL,DX AND AL,0FH MOV BH,ALWAIT:多通道、多通道、8 8位位ADCADC0809ADCADC08098 8个模拟通道、逐次逼近型个模拟通道、逐次逼近型, ,正脉冲启动正脉冲启动, ,有三态输出锁存器有三态输出锁存器ADC0809
39、ADC0809的内部结构的内部结构通道选择开关IN0IN1IN7通道地址锁存及译码ADDAADDBADDC开关树组 (256R)逐次逼近寄存器(SAR)定时和控制比较器输出 锁存器 (三态)ALED07EOCOECLKSTARTVR(+)VR(-)A/DININ0 0ININ7 7:通道07的模拟量输入 D D0 07 7: :数字量输出 ADDCADDC、ADDBADDB、ADDAADDA:通道(07)选择 ALEALE:通道地址锁存,正脉冲有效 STARTSTART:启动信号,正脉冲有效,上升沿所有寄存器清0,下降沿开始转换 EOCEOC:转换结束,高有效 OEOE:允许输出,高有效 通常
40、,通常,通道选择由数据信号完成。START与ALE相连:选择通道的同时启动。硬硬件件连连接接软件编程:软件编程:依次对依次对8 8个通道采样个通道采样, ,共采集共采集256256个数据个数据, ,存于存于BUFBUF区中区中依次采集通道07,只要将通道号+1即 (最低三位有效)将通道号写入P2,启动转换并锁存通道号对P0读,读回EOC(D7)对P1读,读取转换结果LEA DI,BUF MOV CX,256 MOV BL,0 MOV DX,P2 MOV AL,BL OUT DX,AL MOV DX,P0 IN AL,DX AND AL,80H JZ WAIT MOV DX,P1 IN AL,D
41、X MOV DI,AL INC BL INC DI LOOP NEXT;EOC=0,等待;读取结果WAIT:NEXT:;通道号+1;通道号初值=0;启动并锁存通道号程序段程序段: :本章首页本章首页本章首页本章首页5 5)中断方式)中断方式ADCADC接口电路设计接口电路设计单板机系统中断方式的数据采集系统设计单板机系统中断方式的数据采集系统设计要要 求求以TP86为控制器,对单通道模拟信号采集512个8位数据,中断方式存BUF,并送入DAC.硬件分析与设计硬件分析与设计ADC0804;DAC0832;8259AADC0804ADC0804的工作特性的工作特性ADC0804:8位,内部有三态锁
42、存器,负脉冲启动INTR:转换结束信号,低有效CS=WR=0,启动;CS=RD=0,结果输出硬件连接硬件连接AENA09D07TP86INTRINTA8259AINTINTARDWRRDWRA0D07INTRCS1IR0ADC0804AINRDWRD07IO1IO2WR1WR2XFERD07CSILEDAC0832译码电路+5VCSA1中断控制分析中断控制分析ADC0804的INTR反相后向8259A的IR0申请中断软件编程软件编程主程序主要内容主程序主要内容 8259A初始化 中断向量装入 启动ADC0804 开中断 等待中断发生 中断服务程序内容中断服务程序内容 从ADC0804读数 将数
43、写入DAC0832 存储数据 中断结束命令中断服务程序中断服务程序MOV DX,0FFD4H IN AL,DX MOV DX,0FFD6H OUT DX,AL MOV DI,AL INC DI;读取结果;送给DACA_D PROC;保护现场MOV AL,20H MOV DX,0FFDCH OUT DX,AL IRET;恢复现场A_D ENDP;存储;EOI命令主程序主程序CLI MOV DX,0FFDCH MOV AL,13H OUT DX,AL MOV DX,0FFDEH MOV AL,80H OUT DX,AL MOV AL,01H OUT DX,AL MOV AX,0 MOV ES,AX
44、 MOV BX,4*80H MOV ES:BX,OFFSET A_D MOV ES:BX+2,SEG A_D LEA DI,BUF MOV CX,512 MOV DX,0FFDEH IN AL,DX AND AL,0FEH OUT DX,AL MOV DX,0FFD4H OUT DX,AL;8259A的ICW1;8259A的IMR2=0;装入中断向量NEXT:;8259A的ICW2;8259A的ICW4;启动转换STI HLT CLI DEC CX JNZ NEXT;等待转换结束ADC0804ADC0804的地址的地址: :FFD4HFFD4H;DAC0832;DAC0832的地址的地址FFD
45、6H FFD6H 8259A8259A的地址的地址: :FFDCHFFDCH、FFDEHFFDEHMCS-51与与ADC0809的中断方式接口的中断方式接口l ADC0809与与805l之之间间的的接接口口电电路路如如图图所所示示。ADC0809时时钟钟信信号号由由单单片片机机的的ALE信信号号分分频频获获得得。ADC0809通通道道地地址址由由P0 口口的的低低3位位直接与直接与ADC0809的的A、B、C相连。相连。ADC0809ADC0809和和8XX518XX51的连接的连接ALE2731D0D7Q0Q1Q2373G1INT1P08XX51RDWRCLKQALEDQALEADDAADD
46、BADDCSTARTEOCD0D7OECLKIN0IN7VREF+VREF-VCCGNDADC080988+5V11转换结束信号转换结束信号EOCEOC根据不同的方式和单片机的连接方式不同:根据不同的方式和单片机的连接方式不同:采用采用延时方式延时方式 EOCEOC悬空,在启动转换后延时悬空,在启动转换后延时 100 100 s,再读转换结果;再读转换结果;采用采用查询方式查询方式时,可将时,可将EOCEOC接并行口接并行口(P1(P1或或P3)P3)的某线,检测的某线,检测EOCEOC变高后,再读入转换结果。变高后,再读入转换结果。采用采用中断方式中断方式可将可将EOCEOC经非门反相接到单
47、片机的中断请求端,经非门反相接到单片机的中断请求端,一旦转换完成一旦转换完成EOCEOC变为高电平,向变为高电平,向8XX518XX51提出中断请求,进入中提出中断请求,进入中断服务后读入转换结果。断服务后读入转换结果。上图为一个中断方式的接口电路。上图为一个中断方式的接口电路。l采采用用延延时时方方法法,对对N(N8)路路模模拟拟信信号号进进行行AD转转换换,转换后的N个数据顺序存放到起始地址为data_addr数据存区。l ADST:MOV R1,#data_addr ;置数据区首地址指针 MOV DPTR,#addr_ch1 ;指向第个通道 MOV R2,#0NH ;通道个数 LOOP:
48、MOVX DPTR,A ;启动AD转换 CALL DELAY ;延时 MOVX A,DPTR ;读取转换结果 MOV R1,A ;结果转存到数据区 INC DPTR ;指向下一地址 INC R1 ;修改数据区指针 DJNZ R2,LOOP ;若N路未转换完则继续转换采用中断方式,对采用中断方式,对N(N8)路模拟信号进行)路模拟信号进行AD转换。转换。初始化程序:初始化程序:ADST: MOV R1,#dat_addr ;数据暂存区首地址 MOV R2,#0NH ;共N路 SETB ITl ;INT1下降沿触发 SETB EA ;中断允许 SETB EX1 ;开中断1 MOV DPTR,#ad
49、dr_ch1;指向第1通道 MOVX DPTR,A ;启动AD转换 MOV A,R2 ;通道数送A LOOP: JNZ LOOP ;N路未转换完等中断 中断服务程序:中断服务程序: MOVX A,DPTR ;读取AD转换结果 MOVX R1,A ;存AD转换结果 INC DPTR ;下一个通道 INC R1 ;下一个数据存放单元 MOVX DPTR,A ;启动下一个通道 DEC R2 ;通道数减1 MOV A,R2 RETI ;中断返回LS244LS244 数据缓冲功能数据缓冲功能 双向传输功能双向传输功能1G=2G=1:1G=2G=1:输出高阻态,输出高阻态,ADC0804ADC0804与数
50、据总线隔离。与数据总线隔离。 1G=0:1G=0:信号从左到右信号从左到右 1A11A4 1A11A4与与1Y11Y41Y11Y4相通相通 2G 2G0 0:信号从右到左信号从右到左 2A12A4 2A12A4与与2Y12Y42Y12Y4相通相通LS245LS245 八总线收发器八总线收发器 G=1:A G=1:A、B B高阻态,接口数据高阻态,接口数据总线与微机数据总线隔离。总线与微机数据总线隔离。 G=0,DIR=0: G=0,DIR=0: 信号从信号从B B到到A A G=0,DIR=1 G=0,DIR=1:信号从信号从A A到到B B工工 作作 原原 理:理:IOR=IOW=1IOR=
51、IOW=1:1G=2G=1,ADC0804输出高阻态,与数据总线隔离。IORIOR0 0,IOW=1IOW=1: 1G=0,CPU通过读取LS244 1Y1的值查询ADC的INTR状态(是否已完成转换); DIR=IOR&IOW=0,数据由接口数据总线传向微机数据总线。IORIOR1 1,IOW=0IOW=0: 2G=0,CPU通过向LS244 2Y3、2Y4写值来启动ADC或读取ADC转换后的数据。 DIR=IOR&IOW=1,数据由微机数据总线传向接口数据总线。 例例 设计使用设计使用1片片A/D转换芯片巡回采集转换芯片巡回采集40路模拟量的数据采集路模拟量的数据采集系统。系统。解解:采采
52、用用5片片CD4051,每每片片接接8路路模模拟拟量量输输入入,5片片构构成成58 = 40路模拟采集通道。路模拟采集通道。40路数据采集局部原理如下图所示。路数据采集局部原理如下图所示。 采用1片74LS377扩展8位并行输出口,其中,高3位用于选通每片4051的8路中的1路,低5位用于5片CD4051的片选。向74LS377写入数据00000001111100001,选通1#4051的07路;写入0000001011100010,则选通2#4051的07路等。74LS377的数据格式如下表所示。程序如下:程序如下: ORG 0100H MOV DPTR, #7FFFH; 指向口 MOV A
53、, # 00000001B; 选通第1片CD4051芯片的0路 MOV R7, #5; 计数5次(5片CD4051) D7 D6 D5 D4 D3 D2 D1 D0 A B C5#40514#40513#40512#40511#4051 LP1: MOVX DPTR, A; 选通一路 LCALL ADCONV; 调用A/D子程序 LCALL ADDSP; 调用转换结束后数字处理; MOV R2, A; 用R2暂存A ANL A, #E0H; 屏蔽低5位 CJNE A, #E0H,LP2 ; 判断A是否到7,未到7,选择下一路 AJMP LP3; 处理下一片 LP2: MOV A, R2; 取回
54、暂存值 INC A; 选择下一路 AJMP LP1; 继续处理本片下一路 LP3: MOV A, R2; 取回暂存值 RL A; 高5位0的位置左移 ANL A, #1FH; 指向下一片的第0路(高3位清0) DJNE R7, LP1 RET END4 4地址译码器接口电路地址译码器接口电路微机控制的数据采集系统中的多路开关接口电路、微机控制的数据采集系统中的多路开关接口电路、ADCADC接口电路等都有自接口电路等都有自己的片选输入端和接口地址,地址译码器接口电路的功能就是通过地址译己的片选输入端和接口地址,地址译码器接口电路的功能就是通过地址译码去选中接口电路。码去选中接口电路。地址译码器7
55、4LS138在AEN=0(地址允许信号),IOR和IOW(在微机执行读/写操作时,总有一个处于有效状态)有一个有效时正常工作,通过Y0-Y7中的相应值去选中数据采集系统中的各个接口电路。5 5典典型型微微机机接接口口电电路路特特 点:点:(1)采用了)采用了I/O隔离的寻址方式;隔离的寻址方式;(2)采用了程序控制方式中的程序中断传送方式来)采用了程序控制方式中的程序中断传送方式来实现微机系统与外设时间的数据传送;实现微机系统与外设时间的数据传送;(3)采用并行接口的多数据同时传送方式,速度快,)采用并行接口的多数据同时传送方式,速度快,成本高;成本高;(4)具有地址译码、片选寻址、数据缓冲和信息锁)具有地址译码、片选寻址、数据缓冲和信息锁存的功能。存的功能。