版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
§6.1输入输出接口的基本概念第六章输入输出接口一、I/O接口与端口①I/O接口(Interface)外设连接到总线上的一组逻辑电路的总称。实现外设与主机之间的信息交换的电路。②I/O端口(Port)接口中的寄存器(数据端口、控制端口、状态端口)。1、接口举例显示卡接口总线接口串行接口并行接口USB接口键盘接口硬盘接口2/4/20232、I/O接口的基本结构CPUI/O设备译码数据端口状态端口控制端口DBABCB3、CPU与外设之间的信息CPU外设数据信息状态信息控制信息I/O接口电路控制总线地址总线数据总线4、I/O接口要解决的问题速度不匹配信号电平不匹配信息格式不匹配时序不匹配信号的驱动能力5、I/O接口的功能设置数据缓冲以解决两者速度差异设置信号电平转换电路设置信息转换逻辑以满足对各自格式的要求设置时序控制电路来同步CPU和外设的工作提供地址译码电路提供联络信号最好是可编程控制二、I/O端口的编址方式数据端口状态端口控制端口端口控制端口1、端口与内存统一编址(存储器映象)特点:指令及控制信号统一,无需专门指令内存地址资源减少无法区分是对内存还是对I/O操作内存地址960KBI/O地址64KB00000HF0000HFFFFFH例如MC6800、MCS-51等就没有独立I/O寻址空间。2、端口独立编址(I/O映象)特点:内存地址资源充分利用需专门的访问端口的指令:IN、OUT内存地址I/O地址00000HFFFFFHFFFFH0000H例如80X86、Z80系列等存储器与I/O是分开寻址的,各自有独立的寻址空间和不同的时序。1、8086与存储器及I/O端口连接相关信号线三、8086与I/O端口的设计AD0~AD15数据信号/地址信号复用信号。A0作为低8位数据允许信号。A16~A19高4位地址总线。ALE地址锁存允许信号,输出,高有效。BHE高8位数据总线允许,输出,三态,低电平有效。RD读信号,输出,三态,低电平有效。允许CPU读存储器或I/O端口。WR写信号,输出,三态,低电平有效。允许CPU写存储器或I/O端口。M/IO存储器/输入输出控制信号,输出,三态。高电平表明CPU读存储器;低电平表明CPU读I/O口DEN数据允许信号,输出,三态,低有效。DT/R数据收发控制信号,输出,三态,控制数据总线驱动器的数据传送方向。READY准备好信号准备好信号,输入,高有效。2、8086的I/O端口编址采用I/O独立编址方式(但地址线与存储器共用)地址线上的地址信号用M/IO来区分I/O操作只使用20根地址线中的16根:A15~A0可寻址的I/O端口数为64K(65536)个I/O地址范围为0~FFFFHIBMPC只使用了1024个I/O地址(0~3FFH),其中0~FF为直接寻址范围。A0~A19地址信号,输出;I/O接口用A0~A9。D0~D7数据信号,双向。ALE地址锁存允许信号,输出,下沿将地址信号锁存。MEMR存储器读信号,输出,低有效。MEMW存储器写信号,输出,低有效IORI/O读信号,输出,低有效。IOWI/O写信号,输出,低有效。AEN地址允许信号,输出;AEN=0,表明CPU有总线控制权。3、I/O地址的译码(1)参加译码的信号:IOR、IOW、A15
~A0OUT指令将使总线的IOW信号有效IN指令将使总线的IOR信号有效当接口只有一个端口时,16位地址线一般应全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高位参与译码(决定接口的基地址),而低位则用于确定要访问哪一个端口。(2)I/O地址的译码方法AY0
BY1
CY2Y3Y4G2B
Y5
G2AY6
G1Y7A5A6A874LS138A7A9AENPPICST/CCSINTRCSDMACSIOWWRTDMAPG(写DMA页面寄存器)WRTNMIREG(写NMI屏蔽寄存器) IBMPC/XT片选信号的产生(8237)(8259A)(8253)(8255A)IBMPC/XT系统板I/O端口地址分配地址空间器件/接口适配器实际使用端口地址0000~001FHDMA控制器823700~0FH0020~003FH中断控制器8259A20~21H0040~005FH计数器/定时器825340~43H0060~007FH并行接口片8255A60~63H0080~009FHDMA页面寄存器(74LS670)80~83H00A0~00BFHNMI寄存器A0H00C0~00FFH未用扩展槽I/O端口地址分配地址空间器件/接口适配器地址空间器件/接口适配器200~20FH游戏卡380~38FHSDLC通信卡210~217H扩充部件390~3AFH未用218~2F7H未用3B0~3BFH单显/打印卡2F8~2FFH异步通信卡(COM2)3C0~3CFH未用300~31FH未用3D0~3DFH彩显/图形卡320~32FH硬盘卡3E0~3EFH未用330~377H未用3F0~3F7H软盘卡378~37FH打印卡3F8~3FFH异步通信卡(COM1)四、数据的传送方式1、并行传送方式:同一时刻传送多位数据。优点:传送速度快、效率高。缺点:传输距离短(成本、线间干扰)2、串行传送方式:将数据一位一位地传送。优点:传输线少,成本较低。适合于远距离传输。缺点:传送速度慢。五、接口分类CPU接口外设…..…...CPU接口外设并行串行速度快,成本高适合近距离速度慢,成本低适合长距离并口串口按接口与外设数据传送的方式可以分为:并行接口与串行接口。一、接口的基本构成数据线控制线状态线DBCBAB数据输入寄存器(or三态门)数据输出寄存器(锁存器)状态寄存器(or三态门)命令寄存器译码电路控制逻辑§6.2简单的输入输出接口芯片二、接口的类型及特点输入接口输出接口接口1、接口按信息的流向分类2、接口特点输入接口:要求对数据具有控制能力(常用三态门实现)输出接口:要求对数据具有锁存能力(常用锁存器实现)三、三态门接口高电平、低电平、高阻态。1、电平信号的三种状态YYAALL(a)(b)三态门原理图2、三态门的工作波形A0~A15IOR译码输出D0~D7开关状态地址有效四、常用接口芯片1、74LS244(单向数据驱动器)含8个三态门的集成电路芯片分两组,1G控制1A1-1A4,2G控制2A1-2A4在外设具有数据保持能力时用作输入接口为单向数据缓冲器,常用作地址驱动。2、74LS245(双向数据总线缓冲器)含8个三态门的集成电路芯片除门控信号G外,有一方向控制端DIRDIR=1,AnBn(n=1~8)DIR=0,反方向传递常用于数据的双向传送、缓冲和驱动引脚图逻辑图3、74LS374(锁存器)逻辑图和真值表由D触发器构成可直接挂到总线上具有对数据的锁存能力具有三态总线驱动能力4、简单的输入输出接口设计§6.3CPU与I/O的控制方式CPU与外设的工作速度不一致,如何使两者高效、可靠地进行数据传送,采样如下控制方式:无条件方式CPU与外设同步工作,外部控制过程各种动作时间是固定的,而且是已知的。查询方式CPU与外设不同步工作,传送前,先查询外设状态,准备好才传送,否则CPU处于等待状态。中断方式 外设与CPU处于并行工作,一旦外设准备好,外设向CPU发中断申请,条件具备,CPU暂停原程序执行,响应中断,外设与CPU串行工作。DMA方式解决高速I/O及成组交换数据问题。CPU不干予,由硬件实现存储器与外设之间交换数据,称直接存取存储器。一、无条件传送实现方法CPU不查询外设工作状态,与外设速度的匹配通过在软件上延时完成,在程序中直接用I/O指令,完成与外设的数据传送特点1.适用于外设动作时间已知,在CPU与外设进行数据传送时,外设保证已准备好的情况2.软硬件十分简单。无条件传送例一读取开关的状态当开关闭合时,对应的发光二极管亮程序段:.MODELSMALL.STRACK100H.DATA.CODE.STARTUP MOVDX,03F8H INAL,DX MOVCL,4 ROLAL,CL OUTDX,AL.EXIT0 ENDDAC0832与PC的接口1、DAC0832的管脚D0~D7—数字量输入端。CS—片选信号,低电平有效。WR1—输入寄存器写信号。ILE—输入寄存器允许信号。在CS=0,且WR1=0,ILE=1时,将D0~D7的数据写入8位输入寄存器。WR2—DAC寄存器写信号。XFER—DAC寄存器传递控制信号。在WR2=0,XFER=0时,8位输入寄存器将D0~D7的数据写入DAC寄存器。IOUT1、IOUT2—模拟信号输出。RFB—反馈电阻。
AGND—模拟地。VCC—电源+5V。DGND—数字地。VREF—参考电源,-10V~+10V。无条件传送例二2、DAC0832电路
DAC_P: PROCNEAR MOVDX,220H MOVCX,256 MOVBX,OFFSETDOUTDAC_L: MOVAL,[BX] OUTDX,AL CALLDELAY-1MS INCBX LOOPDAC_L RETDAC_P: ENDP例,编一个输出256个数据的子程序。数据区的首地址为:DOUT。二、查询工作方式准备好?读取状态信息输入/输出数据是否查询式输入/输入程序流程图入口实现方法:在与外设进行传送数据前,CPU先查询外设状态,当外设准备好后,才执行I/O指令,实现数据传送。特点:CPU通过不断查询外设状态,实现与外设的速度匹 配。CPU的工作效率低3、A/D转换器ADC08098简介特性8通道(8路)输入8位字长逐位逼近型转换时间100μs内置三态输出缓冲器引脚功能D7~D0:输出数据线(三态)IN0~IN7:8通道(路)模拟输入A、B、C:通道地址(通道选择)ALE:通道地址锁存START:启动转换EOC:转换结束OE:输出允许(打开输出三态门)CLK:时钟输入(10KHz~1.2MHz)REF(+)、REF(-):基准参考电压ADC0809内部结构STARTEOCCLKOED7D0REF(+)REF(-)CBAALEIN0IN7比较器8路模拟开关树状开关电阻网络三态输出锁存器时序与控制地址锁存及译码D/A8个模拟输入通道8选1逐位逼近寄存器SAR工作时序
①②③④⑤ADC0809的工作过程①把通道地址送到ADDA~ADDC上,选择一个模拟输入端;②在通道地址信号有效期间,ALE上的上升沿使该地址锁存到内部地址锁存器;③START引脚上的下降沿启动A/D变换;④变换开始后,EOC引脚呈现低电平,EOC重新变为高电平时表示转换结束;⑤OE信号打开输出锁存器的三态门送出结果。4、查询工作方式例采用ADC809设计8路模拟信号输入接口电路。说明:ADC0809通过一个输入/输出接口与CPU连线。A/D数据D0~D7接U8的1A1~2A4,A/D的状态EOC与D0一起接U8的1A1,分时使用,通过U9的Q4与Q5来控制。读数据时Q4=1,Q5=1;读状态时,Q4=0,Q5=0。RDEOC EQU00HRDAD EQU30HCLAD EQU20HIOAD EQU3F8HDATASSEGMENTADCH DB28H,29H,2AH,2BH DB2CH,2DH,2EH,2FHADBUF DB8DUP(?)DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,ES:DATASSTART: MOVAX,DATAS MOVDS,AX MOVDX,IOAD MOVAL,CLAD OUTDX,AL MOVDI,OFFSETADBUF MOVBX,OFFSETADCH MOVCX,8LP0: MOVAL,[BX] OUTDX,AL;启动A/D MOVAL,RDEOC OUTDX,ALLP1: INAL,DX ANDAL,01H CMPAL,01H JNZLP1;AD转换?
MOVAL,RDAD OUTDX,AL;读AD数据
INAL,DX MOV[DI],AL INCBX INCDI DECCX JCXZLP0 MOVAH,4CH INT21HCODES ENDS ENDSTART三、中断传送方式1、实现方法:
1.
当外设准备好,向CPU发出中断请求2.CPU在满足响应中断的条件下,发出中断响应信号;3.CPU暂停当前的程序,转去执行中断服务程序,完成与外设的数据传送;4.CPU从中断服务程序返回,继续执行被中断的程序中断服务程序发申请中断服务程序发申请中断方式下CPU执行程序流程外设2、使用中断方式时:外设准备数据,CPU执行程序,CPU与外设并行工作。一旦外设准备就绪,外设向CPU发中断申请,CPU暂停原程序执行,响应中断,进行数据传输。此时,CPU与外设是串行工作。①CPU和外设大部分时间处在并行工作状态,只在CPU响应外设的中断申请后,进入数据传送的过程。②中断传送方式提高了CPU的效率。3、中断传送方式的特点:四、DMA传送方式(直接存储器存取方式)
实现方法:由专用接口芯片DMA控制器(称DMAC)控制传送过程,当外设需传送数据时,通过
DMAC向CPU发出总线请求;CPU发出总线响应信号,释放总线;4.DMAC接管总线,控制外设、内存之间直接数据传送DMA传送方式的特点外设和内存之间,直接进行数据传送,不通过CPU,传送效率高。适用于在内存与高速外设、或两个高速外设之间进行大批量数据传送。电路结构复杂,硬件开销较大。DMA
传送方式过程CPUDMAC内存外设总线响应总线请求一、8255A结构、引脚Intel系列的8位并行接口芯片通用性强,使用灵活可用程序设置和改变芯片的工作方式40个引脚,双列直插式§6.4可编程并行接口8255A1.数据端口A、B、C
端口A对外8根引脚PA7~PA0,可以为8位输入或8位输出接口。
端口B
对外8根引脚PB7~PB0,可以为8位输入或8位输出接口。
端口C
对外8根引脚PC7~PC0,可以为8位输入或8位输出接口;也可以高4位低4位分开作为输入/输出使用。还可已单独置位/清0每一位(PC0、PC1、PC2、PC3、PC4、PC5、PC6、PC7)每个端口8位,通过编程设定其为输入口或输出口,也可用来和外设传送信息
控制寄存器D用来存放A、B、C端口的控制命令,即对A、B、C端口编程的控制字,用来决定它们的工作方式。
2.引脚功能A、B、C端口各有8个引脚。PA0~PA7、PB0~PB7、PC0~PC7,24根引脚。REST—复位信号,输入,高电平有效。当REST=1时,控制寄存器清0,A、B、C端口为输入。CS—片选信号,输入,低电平有效。A0A1—端口选择信号,输入。RD—读控制信号,输入,低电平有效。WR—写控制信号,输入,低电平有效。D0~D7—数据线,双向。VCC—电源线,+5V。GND—电源地。由CS、A1、A0、RD、WR引脚的不同组合,实现各种不同的功能。
8255A有两种控制字一种为端口方式控制字,另外一种为C口按位置位/复位控制字。二、8255A的控制字8255A有两种控制字,由写入内容的D7位区分:D7=1,方式控制字设定A口、B口、C口的工作状态和工作方式。工作状态:输入或输出工作方式:方式0、方式1、方式2D7=0,C口按位置位/复位控制字使C口中的某一位为1(置位)或0(复位)。1.方式控制字设定A口、B口、C口的工作状态和工作方式。工作状态:输入或输出工作方式:方式0、方式1、方式2B口0输出1输入0方式01方式11D7D6D5D4D3D2D1D0特征位,D7=1表示是方式控制字PC3~PC00
输出1输入B口工作方式PC7~PC40输出1输入A口0输出1输入A口工作方式00方式001方式11x方式2方式控制字各位含义例:8255A与系统的连线如下,片选译码地址为F0~F3h
确定各端口地址;编程设置8255A:A口方式0输入,PC7~PC4输出
B口方式0输出,PC3~PC0输入1)确定端口地址2)
硬件原理图3)
确定方式控制字10010001D7D6D5D4D3D2D1D0特征位A口方式0A口输入PC7~PC4输出B口方式0B口输出PC3~PC0输入所以,方式控制字为10010001B,即91H
要求设置:A口方式0输入,PC7~PC4输出B口方式0输出,PC3~PC0输入设置方式控制字的初始化程序段为: MOVAL,91H
;方式控制 OUT0F3H,AL0复位1置位0D7D6D5D4D3D2D1D0设置内容特征位,D7=0表示是C口按位置位/复位控制字无意义选择设置位C口按位置位/复位控制字各位含义:2.C口按位置位/复位控制字作用是:使C口中的某一位为1(置位)或0(复位)或在A口、B口采用中断方式时,通过向C口的指定位置位,允许8255A的中断信号发出。例,连线如上例。通过控制口置PC2为0,置PC4为1。
MOVAL,00000100BOUT0F3H,ALMOVAL,00001001BOUT0F3H,AL
三、8255A的工作方式工作方式:方式0(基本输入输出)、方式1(选通输入输出)、方式2(双向)1.方式0(基本输入输出方式)1001/01/001/01/0特征位A口工作方式
A口I/OPC7~PC4I/OB口工作方式B口I/OPC3~PC0I/O工作在方式0的端口,为单向传送端口。方式控制字决定是输入还是输出。1011/01/011/01/0D7D6D5D4D3D2D1D0特征位A口工作方式
A口I/OB口工作方式B口I/O2.方式1(选通输入输出方式)工作在方式1的端口,为单向传送端口。由方式控制字决定是输入还是输出。PC7~PC4PC3~PC0(1)选通输入A口工作在方式1的输入时,C口的PC4、PC5、PC3作为A口的状态和控制信号。不能再单独作I/O用。B口工作在方式1的输入时,C口的PC2、PC1、PC0作为B口的状态和控制信号。不能再单独作I/O用。这时未用的PC7和PC6任然可以定义输入输出。STB为选通信号,低有效,外部输入。IBF输入缓冲器满信号,高有效,输出个外部设备。INTR中断请求信号,高有效,发给CPU。INTE,中断控制位,决定是否能发INTR信号,A口由写PC4决定;B口由写PC2决定。(2)选通输出A口工作在方式1的输出时,C口的PC7、PC6、PC3作为A口的联络信号。不能再单独作I/O用。B口工作在方式1的输出时,C口的PC2、PC1、PC0作为B口的联络信号。不能再单独作I/O用。这时未用的PC5和PC4任然可以定义输入输出。ACK为应答信号,低有效,外部输入。OBF输出选通信号,低有效,输出个外部设备,表明PA0~PA7或PB0~PB7线上有有效数据,通知外部设备取走。INTR中断请求信号,高有效,发给CPU。INTE,中断控制位,决定是否能发INTR信号,A口由写PC6决定;B口由写PC2决定。3.方式2
(双向传送方式)端口工作在方式2时,C口的某5根引脚作为端口的联络信号8255A只有A口可以工作在方式2下。resetD7~D0A9~A2A1A0IORIOW片选译码数据缓冲器读写控制片内译码CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外设
与方式0、方式1的单向传送不同,工作在方式2下的端口,具有双向传送功能。A口工作在方式2下,C口未做联络信号的3条引脚,可作为B口在方式1下的联络线,也可和B口一样工作在方式0下。由方式控制字决定其输入/输出。11XX1/01/01/0D7D6D5D4D3D2D1D0特征位A口工作方式
A口I/OPC7~PC4I/OB口工作方式B口I/OPC3~PC0I/O1/0PA7~PA0PC6PC7ACKAOBFAD7~D0RDWRPC4PC5STBAIBFAINTEA1PC4INTEA2PC6与门PC3INTRA或门与门工作在方式2时,C口有5根引脚作为A口的联络信号,是方式1下A口输入、输出联络信号的组合。例:某个系统要求用8255A作为接口,采集一组开关S7~S0的状态,然后通过一组发光二极管LED7~LED0显示开关状态,(Si闭合,则对应LEDi亮,Si断开,则对应的LEDi灭)电路连接如下图,已知8255A、B两组均工作在方式0。完成如下工作:1、写出8255四个端口的地址。2、写出8255工作方式控制字。3、写出实现给定功能的汇编语言程序。四、应用举例LED7LED0S7S0PB7PB0PA7PA08255AD7~D0D7~D0WR#RD#IOW#IOR#Y0#G1G2A#G2B#CBA74LS138CS#A9AEN&A8A7A6A5A4A3A2A1A0A1A0A口、B口、C口和控制口的地址分别是
320H、321H、322H和323H。A口工作在方式0输出,B口工作在方式0输入,C口空闲,所以其控制字是10000010B=82H程序如下: MOV AL,82H ;置方式字 MOV DX,323H ;置
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文化娱乐产品供给创新驱动与技术应用
- 2025年小学学生廉洁教育工作实施计划方案2
- 2024年公务员考试桦甸市《行政职业能力测验》考前冲刺试卷含解析
- 2025年幼儿园幼小衔接工作计划怎么写
- 2025年幼儿园后勤工作计划报告
- 人教版历史与社会七上2.1《大洲和大洋》说课稿
- 五年级上册语文期末试卷质量分析(范文10篇)
- 2025幼儿小班语言教学工作计划
- 2025年幼儿园大班工作计划学校工作计划
- 2025年学院公共卫生工作计划
- 2024年秋季新人教版七年级上册数学全册教案
- 国民经济行业分类和代码表(电子版)
- 安全员年终总结报告
- 《客房服务与管理》课程标准课程内容与要求
- 营销中心建设实施方案
- 工程竣工验收(消防查验)报告
- 能源中国学习通超星期末考试答案章节答案2024年
- 中学美育(艺术教育)工作发展年度报告
- 农业经理人职业技能大赛考试题及答案
- GB/T 44679-2024叉车禁用与报废技术规范
- 疼痛患者评估及护理
评论
0/150
提交评论