微机原理与控制技术-卢晓红8-97-io接口及过程通道应用-final.ppt_第1页
微机原理与控制技术-卢晓红8-97-io接口及过程通道应用-final.ppt_第2页
微机原理与控制技术-卢晓红8-97-io接口及过程通道应用-final.ppt_第3页
微机原理与控制技术-卢晓红8-97-io接口及过程通道应用-final.ppt_第4页
微机原理与控制技术-卢晓红8-97-io接口及过程通道应用-final.ppt_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

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

文档简介

1 第八章:I/O接口及输入输出通道应用 2 第八章:I/O接口及输入输出通道应用 8.0可编编程并行接口芯片8255A 8.1 8255与简单简单 开关量输输入输输出控制 8.2 8255与步进电进电 机控制 8.3可编编程中断控制器8259A应应用 8.4可编编程串行接口芯片8251A 应应用 8.5 8253与电电子发发声控制 8.6 A/D与D/A转换转换 器 PA 1 8255A的引脚与结构 n8255A的引脚 u8255A是可编程的并行输入输出 接口芯片,它具有三个8位并行端 口(A口、B口和C口),具有40个引 脚,双列直插式封装,由+5V供电 (VCC)。8255A PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2 3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 28 27 26 25 24 23 22 21 40 39 38 37 36 35 34 33 32 31 30 29 D6 D7 VCC PB7 PB6 PB5 PB4 PB3 PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 8255A A口 C口 C口 B口 PA7 PA0 8 PC7 PC4 4 PC3 PC0 4 PB7 PB0 8 A组 B组 D7 D0 WR RD A0 A1 CS RESET 3 8.0 可编程并行接口芯片8255A 8.0 可编程并行接口芯片8255A 4 n8255A的内部结构 B 组 控制部件 数据总线 缓冲器 读/写 控制逻辑 A组 端口A (8) A组 端口C (高4位) B组 端口C (低4位) B组 端口B (8) A 组 控制部件 内部 DB(8) PA7PA0 PC7PC4 PC3PC0 PB7PB0 CS RD A1 A0 RESET D7D0 WR CPU 外设 8.0 可编程并行接口芯片8255A 5 8255A的工作方式与控制字 n8255A的工作方式 u8255A在使用前要先写入一个工作方式控制字,以指定A、B 、C三个端口各自的工作方式。8255A共有三种工作方式: 方式0基本输入输出方式,即无须联络就可以直接进 行8255A与外设之间的数据输入或输出操作。 方式1选通输入输出方式,此时8255A的A口和B口与 外设之间进行输入或输出操作时,需要C口的部分I/O线提 供联络信号。 方式2双向输入输出方式,即同一端口的I/O线既可以 输入也可以输出,只有A口可工作于方式2。 端口A可处于三种工作方式(方式0,方式1,方式2),端口B可 处于两种工作方式(方式0,方式1 ),端口C常常被分成高4位 和低4位两部分,可分别用来传送数据或控制信息。 8.0 可编程并行接口芯片8255A 6 n8255A的控制字(定义工作方式控制字和C口置位/复位控制字) (1) 工作方式选择控制字 u8255A的工作方式可由CPU写一个工作方式选择控制字到 8255A的控制端口实现。可以分别选择端口A、端口B和 端口C上下两部分的工作方式。注意8255A工作方式选择控 制字的最高位D7(特征位)应为1。 8.0 可编程并行接口芯片8255A 7 (2) C口置位/复位控制字 u8255A的C口按位置位/复位控制字的最高位D7(特征位)应为0。 无关位 D3D1D5 D0 位操作 D2 PC口位选择 D7 特征位 D6 D4 D7=0标 明是C口 位操作 控制字例如: 使端口C的PC4置 位的控制字为 00001001B(09H) 使PC4复位的控制 字为 00001000B(08H) PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 0 复位 1 置位 当端口A定义为方式1或方式2或将端口B定义为方式1时,要求使用端口C 的某些位作控制用,这时需要一个置位/复位控制字对控制端口C的各位进 行置位/复位操作。 8 各种工作方式的功能 n方式0基本输入输出方式 u方式0无须联络就可以直接进行8255A与外设之间的数据 输入或输出操作。它适用于无须应答(握手)信号的简单的无 条件输入/输出数据的场合,即输入/输出设备始终处于准 备好状态。 u在此方式下,A口、B口、C口的高4位和低4位可以分别 设置为输入或输出,即8255A的这四个部分都可以工作于 方式0。 输入或输出的定义是相对于8255A芯片而言的。当数 据从外设送往8255A时为输入,反之,数据从8255A 送往外设则为输出。 8.0 可编程并行接口芯片8255A 9 各种工作方式的功能 n方式0基本输入输出方式 100XX0XX 如果三个端口均处于工作方式0,则可由工作方式控制字定义16种 工作方式的组合。此时,CPU与三个端口之间交换数据可以直接由 CPU执行IN或OUT指令来完成。 8.0 可编程并行接口芯片8255A 方式0也可以用于查询方式的输入或输 出接口电路,此时端口A和B分别作为 一个数据端口,而用端口C的某些位 作为这两个数据端口的控制和状态信 息。 例如右图就是一个A口和B口工作 在方式0时利用C口某些位作为联络信 号的接口电路。在此例中将8255A设 置为:A口输出,B口输入,C口高4 位输入(现仅用PC7、PC6两位输入外 设的状态),C口低4位输出(现仅用 PC1、PC0两位输出选通及清除信 号)。此时8255A的工作方式控制字为 10001010B(8AH)。 选通 准备好 准备好 清除 A口 PC1 PC7 8255A PC6 PC0 B口 输出设备 输入设备 D7D6D5D4D3D2D1 PC74方向B方式B方向 D0 特征A方式A方向PC30方向 10 10101000 8.0 可编程并行接口芯片8255A 其工作原理是:在向输出设备 送数据前,先通过PC7 查询设备 状态,若设备准备好则从A口送 出数据,然后通过PC1 发选通信 号使输出设备接收数据。从输入 设备取数据前,先通过PC6 查询 设备状态,设备准备好后,再从 B 口读入数据,然后通过PC0 发 清除信号,以便输入后续字节。 u与后面介绍的选通输入输出方 式(方式1)和选通双向输入输出方 式(方式2)相比,方式0的联络信 号线可由用户自行安排(方式1和 方式2中使用的C口联络线是已定 义好的),且只能用于查询,不能 实现中断。 输出设备 选通 准备好 准备好 清除 A口 PC1 PC7 8255A PC6 PC0 B口输入设备 11 8.0 可编程并行接口芯片8255A 12 n方式1选通输入输出方式:这种工作方式下,数据输入输 出操作要在选通信号控制下完成 u与方式0相比,它的主要特点是当A口、B口工作于方式1时,C口的某 些I/O线被定义为A口和B口在方式1下工作时所需的联络信号线,这些线 已经定义,不能由用户改变。 1)-STB:选通信号。由外设送给8255A,低电平有效 -STB有效时,将外部输入的8位数据锁存到所选端口的输入锁存器。对于A组来说,指定端口C 的PC4用来接收向端口A输入的STB信号;对于B组来说,指定端口C的PC2位用来接收向端口B 输入的-STB信号。 2)IBF:输入缓冲器满信号,向外部输出,高电平有效 IBF有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它实际是对-STB信号的回 答信号,待CPU执行IN指令时,-RD有效,将输入数据读入CPU,其后沿将IBF置0,表示输入 缓冲器已空,外设可继续输入后续数据。对A组来说,指定端口C的PC5作为从端口A输出的IBF 信号;对B组来说,指定端口C的PC1作为从端口B输出的IBF信号。 3)INTR:中断请求信号,向CPU输出,高电平有效 A组和B组向CPU发中断请求信号。A组的INTRA通过PC3送出;B组的INTRB通过PC0送出。 (1)采用工作方式1进行输入操作时,需要使用的控制信号如下: 8.0 可编程并行接口芯片8255A 13 n方式1选通输入输出方式: PC4 STB 方式1输入 PC5 IBF PC3 INTR A组 PC1 IBF PC0 INTR B组 PC2 STB 8255A中的端口A和端口B均可工作于工作方式1完成输入 操作功能。 (1)当端口A和B同时被定义为方式1完成输入操作时,端 口C的PC0PC5被用作控制信号,只有PC7和PC6位可用来 完成数据输入或输出操作,因此实际上构成两种组合状态 : 1)端口A、B输入, PC7和PC6输入; 2)端口A、B输入, PC7和PC6输出。 中断允许或屏蔽(C口置位或复位操作): 1)A端口(PC4)=1处于中断允许;=0, 处于中断屏蔽状态; 2)B端口(PC2)=1处于中断允许;=0, 处于中断屏蔽状态; 8.0 可编程并行接口芯片8255A 14 n方式1选通输入输出方式 1)-OBF:输出缓冲器满信号。向外部输出,低电平有效 -OBF有效时,表示CPU已将数据写入该端口正等待输出。当CPU执行OUT指令,-WR有效 时,表示将数据锁存到数据输出缓冲器,由-WR的上升沿将-OBF置为有效。对于A组来说, 指定端口C的PC7用来作为从端口A输出的-OBF信号;对于B组,指定端口C的PC1位用作从 端口B输出的-OBF信号。 2)-ACK:外部应答信号。由外部输入,低电平有效 -ACK有效时,表示外部设备已经收到由8255A输出的8位数据,它实际是对-OBF信号的回 答信号。对A组来说,指定端口C的PC6用来接收向端口A输入的-ACK信号;对B组来说,指 定端口C的PC2用来接收向端口B输入的-ACK信号。 3)INTR:中断请求信号,向CPU输出,高电平有效 A组和B组向CPU发中断请求信号。A组的INTRA通过PC3送出;B组的INTRB通过PC0送出 。 (2)采用工作方式1进行输出操作时,需要使用的控制信号如下: 8.0 可编程并行接口芯片8255A 15 n方式1选通输入输出方式: 8255A中的端口A和端口B均可工作于工作方式1完成输出 操作功能。 (2)当端口A和B同时被定义为方式1完成输出操作时,端 口C的PC6,PC7和PC3PC0被用作控制信号,只有PC4和 PC5位可用来完成数据输入或输出操作,因此实际上构成两 种组合状态: 1)端口A、B输出, PC4和PC5输入; 2)端口A、B输出, PC4和PC5输出。 方式1输出 PC6 ACK PC7 OBF PC3 INTR A组 PC1 OBF PC0 INTR B组 PC2 ACK 中断允许或屏蔽(C口置位或复位操作): 1)A端口(PC6)=1处于中断允许;=0, 处于中断屏蔽状态; 2)B端口(PC2)=1处于中断允许;=0, 处于中断屏蔽状态; 8.0 可编程并行接口芯片8255A 16 n方式1选通输入输出方式 (3)端口A输入,端口B输出 当被定义为方式1端口A输入,端口B输出时,端口C的 PC5PC0被用作控制信号,只有PC6和PC7位可用来完成数 据输入或输出操作,这又构成两种组合状态: 1)端口A输入,端口B输出, PC6和PC7输入; 2)端口A输入,端口B输出, PC6和PC7输出。 8.0 可编程并行接口芯片8255A 17 n方式1选通输入输出方式 (4)端口A输出,端口B输入 当被定义为方式1端口A输出,端口B输入时,端口C的PC6 和PC7 ,PC3PC0被用作控制信号,只有PC4和PC5位可用 作数据输入/输出用,这又构成两种组合状态: 1)端口A输出,端口B输入, PC4和PC5输入; 2)端口A输出,端口B输入, PC4和PC5输出。 8.0 可编程并行接口芯片8255A 8255A中的端口A和B工作在方式1时,可构成8种不同的状态 端口C的低四位总是作控制用,而高四位中总是保持有两位仍然可作数据输入/ 输出用,因此控制字中的D0位可为任意值,由D1,D3,D4位的不同取值构成 八种不同的状态组合方式。(也允许A/B口为方式0,与另一端口的方式1配合 工作) 8.0 可编程并行接口芯片8255A 19 INTR (PC6) 1PC3 n方式2选通双向输入输出方式 u选通双向输入输出方式,即同一端口的I/O线既可以输入 也可以输出,只有A口可工作于方式2。此时C口有5条线 (PC7PC3)被规定为联络信号线。剩下的3条线 (PC2PC0) 可以作为B口工作于方式1时的联络线,也可以独立工作于方 式0。PA7 PA 0 转换精度:A/D转换结果相对于实际值的准确度; 绝对精度:常用数字量的位数表示,如(1/2)LSB 相对精度:用相对于满量程的百分比表示,例如满量程为 10V的8位A/D转换器,其绝对精度为1/210/28 19.5mV, 相对精度为1/281000.39。 转换时间:完成一次A/D转换所需的时间; 8.6 A/D与D/A转换器 70 ADC0809逻辑结构 u在START上收到一个启动转换命令后开始转换。转换时间100s左右。转 换结束后,EOC由低变高,通知CPU读数据。 u由8路模拟开 关、地址锁存与 译码器、8位逐 次逼近式A/D转 换器、输出缓冲 器组成。 u通道选择信号 ADDA、ADDB 、ADDC用于在 8个输入通道中 选择一个。 uA/D转换器将 输入的模拟信号 转换为8位二进 制数。 8.6 A/D与D/A转换器 71 nA/D转换器到微机的接口 uADC0809与系统总线的连接 模 拟 量 输 入 接 基 准 电 压 8位数字量输出 结果,接DB IN0 IN1 IN7 VREF(+ ) VREF(-) GND CLOCK ALE START OUTPUT ENABLE EOC ADDA ADDB ADDC D0 D7 分频 CLOCK 8255的PB IN AL,DX AND AL,01H JZ NEXT ; PB0=0, 未完成,PB0接EOC,转换结束为1 MOV DX,220H IN AL,DX ;AL=转换结果 例题1:ADC0809应用例题 77 n2、D/A转换器 uD/A转换器是将数字量转换成模拟量的装置 ,是模拟量输出通道的重要组成部分; uD/A转换器根据输出模拟量的形式分为电压 型和电流型两种; u技术指标:分辨率、转换精度、建立时间、线 性误差等 u分辨率:用D/A转换器输入二进制数的位数 来表示,如8位、10位、12位等。 8.6 A/D与D/A转换器 D/A转换器/DAC=Digital to Analog Converter 78 分辨率为8位; 单一电源供电(5 15V); 基准电压VREF工 作范围-10+10V ; 有单缓冲、双缓冲 或直通三种工作方 式。 nDAC0832:美国数据公司的8位双缓冲D/A转换器 8.6 A/D与D/A转换器 * D0D7:8位数据输入线,TTL电平; * ILE:数据锁存允许控制信号输入线,高电平有效; * -CS:片选信号输入线(选通数据锁存器),低电平有效; * -WR1:数据输入寄存器器写选通输入线,负脉冲有效。由ILE 、-CS、-WR1的逻辑组合产生LE1,当LE1为高电平时的负 跳变时将输入数据锁存; * -XFER:数据传输控制信号输入线,低电平有效,; *- WR2:DAC寄存器选通输入线,负脉冲有效。由-WR2、- XFER的逻辑组合产生LE2,当LE2为高电平的负跳变时将 数据输入寄存器的内容打入DAC寄存器并开始D/A转换。 * IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化; * IOUT2:电流输出端2,其值与IOUT1值之和为一常数; * Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程 精度; * Vcc:电源输入端,Vcc的范围为+5V+15V; * VREF:基准电压输入线,VREF的范围为-10V+10V; * AGND:模拟信号地; * DGND:数字信号地 8.6 A/D与D/A转换器 80 nDAC0832 u美国数据公司的8位双缓冲D/A转换器 DAC0832的逻辑图 -LE1正脉冲的负跳 变将数据线上的信 息存入输入寄存器 -LE2正脉冲的负跳变 将输入寄存器内容存 入DAC寄存器 8.6 A/D与D/A转换器 Iout1 和Iout2与输入数字量D之间的关系如下 当输入的8位数据为全“1”时,IOUT1电流最大,IOUT2电流最 小;当输入为“0”时,IOUT1电流为零,IOUT2电流最大。 8.6 A/D与D/A转换器 Rfb:外接电阻值 D/A转换结果采用电流形式输出。若需要相应的模 拟电压信号,可通过在两个电流输出端接上一个高输入 阻抗的线性运算放大器实现。运放的反馈电阻可通过Rfb 端引用片内固有电阻,也可外接。DAC0832逻辑输入满 足TTL电平,可直接与TTL电路或微机电路连接。 根据对DAC0832的数据输入寄存器和DAC寄存器的 不同的控制方式,DAC0832有三种工作方式:直通方式 、单缓冲方式和双缓冲方式。 8.6 A/D与D/A转换器 83 nDAC0832的三种工作方式 1)单缓冲方式 2)双缓冲方式 3)直通方式 适用于只有一路模拟量输出或几路模拟量非同步输出的情形。方法是可 以只用输入寄存器而把DAC接成直通方式。 适用于多个DAC0832同时输出的情形。方法是分别使这些DAC0832的 输入寄存器接收数据,再控制这些DAC0832同时传送数据到DAC寄存器 以实现多个D/A转换同步输出。 数据不通过缓冲器,即-WR1,-WR2,-XFER,-CS均接地,ILE接高电 平。此时必须通过I/O接口与CPU相连,以配合CPU与D/A的转换。 8.6 A/D与D/A转换器 1)双缓冲方式:此时对LE1和LE2分别控制。对每个DAC, 在数据同步输出时,先令-WR1、-CS和ILE有效,把多个数据 分别存入各自的输入寄存器。再同时令所有DAC的-WR2和- XREF有效。 8.6 A/D与D/A转换器 -CS受控,影响 LE1;进而影响8 位输入寄存器; -XFER受控,影 响LE2,进而影响 8位DAC寄存器。 2)直通方式:所有控制信号接成有效形式。前级带数据锁存器 -CS=-WR1=-WR2=-XREF=0,ILE=1 8.6 A/D与D/A转换器 3)单缓冲方式:只用输 入寄存器锁存数据, LE2部分直通,可将 WR2、-XREF接地; DAC寄存器直通;-CS 接地, ILE接+5V, - WR1接地址线,受控, 影响LE1;进而影响8位 输入寄存器。 8.6 A/D与D/A转换器 87 运算放大器实现电 流和电压的转换 8.6 A/D与D/A转换器 88 nDAC0832接口转换程序 若DAC0832的I/O端口地址为300H,则7FH转换为模 拟电压的接口转换程序为: DA8OUT: MOV DX,300H MOV AL,7FH OUT DX,AL RET 8.6 A/D与D/A转换器 *模拟量输出通道设计 模拟量输出通道的任务是把微机输出的数字量控制信息变 换成执行机构所要求的模拟量信号形式。 模拟量输出通道一般由接口电路、D/A转换器、多路转换 开关、保持器、V/I转换器等组成。 由于计算机是分时工作的,输出的数据在时间上离散,因 此D/A转换后的信号是离散的模拟信号。由于实际上的执 行部件往往要求连续的模拟信号,这样就需要有输出保持 器。输出保持器可以使本次输出的控制信号在新的控制信 号来到之前维持不变,从而将离散的模拟信号变为连续的 模拟信号。 模拟量输出通道依据输出保持器的构成方式分为数字保持 和模拟保持两种基本结构形式。 模拟量输出通道设计 1、每一个通路设置独立的D/A转换器 属于一种数字保持的方案,即在数字量一端进行保持 特点:转换速度快,工作可靠,某一个D/A转换器的故障 不会影响其它通路,易于实现,但需要较多的D/A转换器 。 D/A 模拟量输出通道的构成 模拟量输出通道设计 2、各个通路共用一个D/A转换器 属于模拟保持方案。 特点:D/A转换器分时工作,需要使用多路开关,节省 了数模转换器,适用于通道数量多且速度要求不高的场 合,要求输出保持器的保持时间与采样时间之比较大, 可靠性较差。 模拟量输出通道设计 是用来切换模拟电压的关键元件; CD4051是8通道双向多路转换开关,可以用于多 到一的输入切换,也可用于一到多的输出切换。 理想的多路开关其开路电阻为无穷大,其导通时的 电阻为零; 其它要求:切换速度(快),噪音(小),寿命 (长),可靠性(高)等; 三根二进制的控制输入/出端和一根禁止输入/出端 INH(高电平禁止,即当INH为高电平时,不论A、B、 C为何值,所有开关都不通,处于高阻状态,信号不 能传输)。 多路转换器/多路开关CD4051 输入一路电压,通过A ,B,C选择X0X7共8 路中的某一路输出。 模拟量输出通道设计 输入V V/I转换器 因为电流信号易于远距离传送,且不易受干扰,特别 是在过程控制系统中,自动化仪表只接收电流信号,所 以在微机控制输出通道中常以电流信号来传送信息,这 就需要将电压信号再转换成电流信号。 完成电流输出方式的电路称为V/I变换电路。 集成V/I转换器ZF2B20可以产生一个与输入电压成比 例的输出电流,其输入电压范围是010V,输出电流 是420mA。 集成V/I转换器AD694是一种420mA转换器,输入 范围02V或010V。 模拟量输出通道设计 例题2:利用DAC0832进行模拟量输出通道设计 采用DAC0832、运算放大器、CD4051、采样保持器等元器件与8086总线 工业控制机接口,设计8

温馨提示

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

评论

0/150

提交评论