计算机硬件及网络8并行接口课件

上传人:沈*** 文档编号:215813864 上传时间:2023-06-03 格式:PPT 页数:89 大小:1.52MB
收藏 版权申诉 举报 下载
计算机硬件及网络8并行接口课件_第1页
第1页 / 共89页
计算机硬件及网络8并行接口课件_第2页
第2页 / 共89页
计算机硬件及网络8并行接口课件_第3页
第3页 / 共89页
资源描述:

《计算机硬件及网络8并行接口课件》由会员分享,可在线阅读,更多相关《计算机硬件及网络8并行接口课件(89页珍藏版)》请在装配图网上搜索。

1、18.2计算机硬件及网络8并行接口2u计计算算机机系系统统的的数数据据传传送送方方式式有有两两种种:并并行行数据传送和串行数据传送。数据传送和串行数据传送。u并并行行数数据据传传送送是是微微机机系系统统最最基基本本的的信信息息交交换换方方式式,是是以以计计算算机机的的字字长长(如如8位位、16位位、32位位、64位位)为为单单位位,一一次次传传送送一一个个字字长长的的数据。数据。u串串行行数数据据传传送送是是通通过过一一根根数数据据线线,将将数数据据一位一位顺序送出。一位一位顺序送出。计算机硬件及网络8并行接口u并并行行传传送送速速率率比比串串行行传传送送快快,适适合合于于外外设设与与微微机机

2、之之间间近近距距离离、大大量量和和快快速速的的信信息息交交换换,但但引引线线多多、且且线线间间电电容容会会引引起起串串扰扰,不适合用于远距离传送。不适合用于远距离传送。u例例如如系系统统板板上上各各部部件件(CPUCPU与与存存储储器器、CPUCPU与与I/OI/O接接口口)、I/OI/O扩扩展展板板上上各各部部件件、CPUCPU与与并并行行打打印印机机、CPUCPU与与磁磁盘盘之之间间的的数数据据交换都是采用并行数据传送方式。交换都是采用并行数据传送方式。计算机硬件及网络8并行接口4u并并行行接接口口电电路路能能从从微微处处理理器器或或外外设设接接收收数数据据,然然后后再再发发送送出出去去,

3、因因此此在在信信息息传传送送过过程程中中,起起着着锁锁存存或缓冲的作用。或缓冲的作用。u通常,并行接口应具有如下功能和硬件支持:通常,并行接口应具有如下功能和硬件支持:具有锁存器或缓冲器的数据交换端口;具有锁存器或缓冲器的数据交换端口;每每个个端端口口都都具具有有可可与与CPU用用查查询询方方式式或或中中断方式交换数据所必须的控制和状态信息,断方式交换数据所必须的控制和状态信息,有有与与外外设设交交换换数数据据所所必必须须的的控控制制和和状状态态信信息息;还有片选和控制电路。还有片选和控制电路。计算机硬件及网络8并行接口5u在在并并行行接接口口中中一一般般都都需需要要在在接接口口与与外外设设之

4、之间间设设置置一对握手信号。(除无条件传送)一对握手信号。(除无条件传送)u在在并并行行接接口口中中8 8位位或或1616位位数数据据线线是是同同时时动动作作的的,即即使只用到其中的使只用到其中的1 1、2 2位也是一次传送位也是一次传送8 8位或位或1616位;位;u并并行行传传送送的的数数据据不不需需要要固固定定的的格格式式(与与串串行行传传送送不同),这就免去了因此而产生的编码不同),这就免去了因此而产生的编码/解码过程解码过程u所所谓谓“并并行行转转送送”,是是指指接接口口电电路路与与I/OI/O设设备备之之间间的的数数据据传传送送,而而不不是是指指接接口口与与CPUCPU之之间间的的

5、传传送送(必必然然的是并行传送)的是并行传送)计算机硬件及网络8并行接口常用的可编程并行接口芯片有常用的可编程并行接口芯片有Intel公司的公司的8255A、Motorola公司的公司的MC6820、Zilog公司的公司的Z80PIO等等。等等。计算机硬件及网络8并行接口7并行接口连接外设示意图:并行接口连接外设示意图:计算机硬件及网络8并行接口8u是是Intel86系列的系列的8位并行接口芯片位并行接口芯片u工作方式等设置具有可选择性;工作方式等设置具有可选择性;u可以由用户在其应用程序中通过向其传可以由用户在其应用程序中通过向其传送命令字的形式改变各种设置送命令字的形式改变各种设置计算机硬

6、件及网络8并行接口98255A的外部引脚的外部引脚 8255A芯片采用芯片采用NMOS工艺制造,工艺制造,40个引脚的双列直插个引脚的双列直插40条引脚可分为与条引脚可分为与CPU连接和与外设连接的引脚。连接和与外设连接的引脚。计算机硬件及网络8并行接口10 8255A的引脚功能的引脚功能面向控制总线的信号线:面向控制总线的信号线:RD:读信号,低电平有效,与读信号,低电平有效,与CPU的控制线相的控制线相连。当连。当CPU执行执行IN指令时,该信号有效,指令时,该信号有效,CPU读取各端口的读取各端口的数据或状态。数据或状态。WR:写信号,低电平有效,与写信号,低电平有效,与CPU的控制线相

7、的控制线相连。当连。当CPU执行执行OUT指令是,该信号有效,指令是,该信号有效,CPU将数据或控制字写入将数据或控制字写入8255A。RESET:复位信号,高电平有效。当复位信号,高电平有效。当RESET=1时,清除所有内部寄存器的内容,并时,清除所有内部寄存器的内容,并将将A、B、C口自动设为方式口自动设为方式0下的输入端口。下的输入端口。Vcc、GND:电源和地线电源和地线。计算机硬件及网络8并行接口11与外设相连的信号线与外设相连的信号线 PA7PA0:端口端口A的输入的输入/输出线,三态、双向,可输出线,三态、双向,可直接与外设相连。直接与外设相连。PB7PB0:端口端口B的输入的输

8、入/输出线,三态、双向,可输出线,三态、双向,可直接与外设相连。直接与外设相连。PC7PC0:端口端口C的输入的输入/输出线,三态、双向,可输出线,三态、双向,可直接与外设相连。直接与外设相连。8255A的引脚功能的引脚功能端口端口A和端口和端口B一般只作为数据口使用一般只作为数据口使用端口端口C除了作为数据口之外还可以控制端口使用:除了作为数据口之外还可以控制端口使用:例如:产生与外设之间的联络信号;作为状态口;例如:产生与外设之间的联络信号;作为状态口;按位控制等等按位控制等等计算机硬件及网络8并行接口128255A的引脚功能的引脚功能 与与CPU连接的信号线连接的信号线 面向数据总线的信

9、号线:面向数据总线的信号线:面向地址总线的信号线面向地址总线的信号线:D7D0:双向、三态数据线,与:双向、三态数据线,与CPU系统数据系统数据总线相连。总线相连。CS:片选信号,低电平有效。片选信号,低电平有效。CS=0CS=0时,表明时,表明8255A8255A被选中。通常与地址译码电路输出端相连。被选中。通常与地址译码电路输出端相连。A1、A0:端口地址选择信号,用来指明哪一端口地址选择信号,用来指明哪一个端口被选中。个端口被选中。计算机硬件及网络8并行接口138255A有有A、B、C三三个个数数据据端端口口和和一一个个控控制制端端口口(用用来来接接收收CPU送送来来的的控控制制字字)。

10、A1A0为为00、01、10、11时时,分分别别选选中中A口口、B口口、C口、控制端口。口、控制端口。计算机硬件及网络8并行接口14 8255A的端口操作表CS、A1、A0、RD、WR的信号组合所实现的读的信号组合所实现的读/写操作如下:写操作如下:计算机硬件及网络8并行接口158255A的内部结构的内部结构计算机硬件及网络8并行接口168255A的内部结构由以下的内部结构由以下4 4部分组成:部分组成:(1 1)数据总线缓冲器)数据总线缓冲器这这是是一一个个8位位双双向向、三三态态缓缓冲冲器器,可可直直接接与与CPU系系统统数数据据总总线线相相连连,是是8255A与与CPU之之间间传传输输数

11、数据据的的必必经经之之路路。所所有有输输入入/输输出出数数据据、CPU发发出出的的控控制制命命令令字字以以及及从从外外设设读读入入的的状状态态信息,都通过它传送。信息,都通过它传送。8255A的内部结构的内部结构计算机硬件及网络8并行接口17(2 2)读)读/写控制逻辑写控制逻辑 与与CPU的的6根根控控制制线线相相连连,接接收收来来自自CPU的的地地址址总总线线信信号号和和控控制制总总线线信信号号,转转变变为为各各种种命命令令送送到到A、B组组控控制制逻逻辑辑电电路进行相应的操作。路进行相应的操作。CS、A1、A0用用于于芯芯片片选选择择和和端端口口寻寻址址,RD、WR用用来来决决定定内内部

12、部和和外外部部数数据据总总线线信信息息传传送送的的方方向向,RESET用用来来使使8255A复位。复位。8255A的内部结构的内部结构计算机硬件及网络8并行接口18(3 3)数据端口)数据端口A A、B B、C C 8255A有有A,B,C三三个个输输入入/输输出出端端口口(简简称称A口口,B口口,C口口),用用来来与与外外设设相相连连,进进行行数数据据信信息息、状状态态信信息息的的交交换换。每每个个端端口口均均有有8位位,可可为为输输入或输出端口。入或输出端口。C口可以作为一个独立的口可以作为一个独立的I/O口,也可分为两个口,也可分为两个4位端口,作为数据输入位端口,作为数据输入/输出端口

13、,或作为控制状输出端口,或作为控制状态端口,配合端口态端口,配合端口A、B工作。工作。8255A的内部结构的内部结构计算机硬件及网络8并行接口19(4 4)A A组和组和B B组控制逻辑组控制逻辑 u端口端口A和端口和端口C的高的高4位(位(PC7PC4)构成)构成A组,由组,由A组控制逻辑电路进行控制;组控制逻辑电路进行控制;u端口端口B和端口和端口C的低的低4位(位(PC3PC0)构成)构成B组,由组,由B组控制逻辑电路进行控制。组控制逻辑电路进行控制。u这两个控制电路内部有控制寄存器,用来这两个控制电路内部有控制寄存器,用来接收数据总线送来的控制字和读接收数据总线送来的控制字和读/写控制

14、信写控制信号,并按控制字确定各端口的工作方式。号,并按控制字确定各端口的工作方式。8255A的内部结构的内部结构计算机硬件及网络8并行接口20n在在对对8255A进进行行地地址址译译码码电电路路设设计计时时,对于对于8086系统,它有系统,它有16位数据总线。位数据总线。n8255的的D7D0总总是是接接到到系系统统总总线线的的低低8位。位。n要要选选择择读读写写8255A的的端端口口,端端口口地地址址必必须须为为偶偶地地址址,应应将将系系统统地地址址总总线线的的A2A1接到接到8255的的A1A0。注意:注意:计算机硬件及网络8并行接口218255地址线地址线访问端口访问端口 A1A000端

15、口端口A01端口端口B10端口端口C11控制口控制口计算机硬件及网络8并行接口例如:系统分配给例如:系统分配给8255的端口地址是的端口地址是4个连续的偶地址个连续的偶地址假如是假如是0020H,0022H,0024H,0026H 4个连续的偶地址个连续的偶地址这四个地址的低四位分别对应为:这四个地址的低四位分别对应为:A3A2A1A00020H00000022H00100024H01000026H0110接接8255的的A1接接8255的的A0A20011A10101系统地址系统地址8255端口端口0020HA口口0022HB口口0024HC口口0026H控制口控制口计算机硬件及网络8并行接

16、口例如:系统分配给例如:系统分配给8255的端口地址是的端口地址是0024H,0026H,0028H,002AH 4个连续个连续的偶地址的偶地址系统地址系统地址8255端口端口0024H0026H0028H002AHC口口控制口控制口A口口B口口计算机硬件及网络8并行接口248255A的控制字及其工作方式的控制字及其工作方式 8255A可以通过指令往控制端口中设置控制字来决可以通过指令往控制端口中设置控制字来决定它的工作方式。定它的工作方式。8255A有两个控制字:有两个控制字:方式选择控制字方式选择控制字端口端口C置位置位/复位控制字复位控制字两个控制字共用一个地址:两个控制字共用一个地址:

17、A1=A0=1。为区分两个控制字,将控制字的为区分两个控制字,将控制字的D7作为特征位,作为特征位,D7=1,表示方式选择控制字;,表示方式选择控制字;D7=0,表示,表示C口置位口置位/复位控制字。复位控制字。计算机硬件及网络8并行接口258255A的控制字及其工作方式的控制字及其工作方式 8255A的的3个端口共有个端口共有3种工作方式种工作方式:方式方式0基本输入基本输入/输出方式;输出方式;方式方式2双向传输方式。双向传输方式。方式方式1选通输入选通输入/输出方式;输出方式;计算机硬件及网络8并行接口268255A的方式选择控制字的方式选择控制字 计算机硬件及网络8并行接口27D7:特

18、征位(标志位)。特征位(标志位)。D6、D5:A组方式选择。组方式选择。00方式方式0;01方式方式1;10和和11为方式为方式2。D4:A口的输入口的输入/输出选择。输出选择。0为输出,为输出,1为输入。为输入。D3:C口(高口(高4位)输入位)输入/输出选择。输出选择。0为输出,为输出,1位输位输入。入。D2:B组方式选择。组方式选择。0为方式为方式0,1为方式为方式1。D1:B口的输入口的输入/输出方式选择。输出方式选择。0为输出,为输出,1为输入。为输入。D0:C口(低口(低4位)的输入位)的输入/输出选择。输出选择。0为输出,为输出,1为为输入。输入。8255A的方式选择控制字的方式

19、选择控制字 计算机硬件及网络8并行接口28从中可看出:从中可看出:A口可工作在方式口可工作在方式0方式方式1方式方式2;B口只能工作在方式口只能工作在方式0 方式方式1;C口口的的高高4位位、低低4位位可可分分别别设设定定其其输输入入输输出出方方式式,但不能设定其工作方式(只能方式但不能设定其工作方式(只能方式0)8255A的方式选择控制字的方式选择控制字 计算机硬件及网络8并行接口29【例】【例】按下述要求对按下述要求对8255A进行初始化:进行初始化:A口设为输入数据,工作于方式口设为输入数据,工作于方式1;B口设为输出数据,工作于方式口设为输出数据,工作于方式0;C口高四位输出,低四位输

20、入数据。口高四位输出,低四位输入数据。8255A的端口地址为的端口地址为300H306H。解:解:根据要求,根据要求,82558255的工作方式字的工作方式字=B1H=B1H初始化程序段如下:初始化程序段如下:MOV DX,306H ;送控制口地址送控制口地址 MOV AL,0B1H ;设置方式选择控制字设置方式选择控制字 OUT DX,AL 计算机硬件及网络8并行接口30C口的任一位都可通过控制寄存器写入该控制字,使口的任一位都可通过控制寄存器写入该控制字,使之置位(输出为之置位(输出为1),或复位(输出为),或复位(输出为0),而不影响),而不影响其他位的状态。其格式如图。其他位的状态。其

21、格式如图。8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口31D7:特征位特征位=0,表明写入的是口置位复位,表明写入的是口置位复位控制字。控制字。D6D4:不用,可为任意值,一般取不用,可为任意值,一般取0。D3D1:选择对那一位进行操作。选择对那一位进行操作。D0:选择对选定的该位置置位还是复位。选择对选定的该位置置位还是复位。1为置位,为置位,0为复位。为复位。特别需要注意的是,尽管该控制字是对特别需要注意的是,尽管该控制字是对特别需要注意的是,尽管该控制字是对特别需要注意的是,尽管该控制字是对C C口进行口进行口进行口进行操作,但必须写入控制端口,而不是写入操作

22、,但必须写入控制端口,而不是写入操作,但必须写入控制端口,而不是写入操作,但必须写入控制端口,而不是写入C C口。口。口。口。8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口32例:如果要把例:如果要把C口的口的PC2引脚置成高电平输出,引脚置成高电平输出,可以使用置位可以使用置位/复位命令字。复位命令字。置位置位/复位命令字复位命令字=00000101=05H假设假设8255控制口地址控制口地址=306H该程序段为:该程序段为:MOV AL,05H MOV DX,306H OUT DX,AL8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口33例

23、:如果要使例:如果要使C口的口的PC2引脚输出低电平,可以使引脚输出低电平,可以使用用置位置位/复位命令字复位命令字=00000100=04H假设假设8255控制口地址控制口地址=306H该程序段为:该程序段为:MOV AL,04H MOV DX,306H OUT DX,AL8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口34例:如果要使例:如果要使8255的的PC7产生一个负脉冲,作为产生一个负脉冲,作为打印机接口电路的数据选通信号。打印机接口电路的数据选通信号。使使用用置置位位/复复位位命命令令字字,首首先先让让PC7输输出出“1”,然然后后再再输输出出“0”,最最

24、后后再再输输出出“1”,便便形成一个负脉冲形成一个负脉冲.MOV DX,306HMOV AL,0FHOUT DX,AL;PC7置置“1”MOV AL,OEHOUT DX,AL ;PC7置置“0”NOP ;延时延时NOPMOV AL,0FH;PC7置置“1”OUT DX,AL 8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口35*(选讲选讲)【例】【例】试编程使试编程使8255A的的C口口PC3位产生一个位产生一个方波信号。方波信号。8255A的端口地址为的端口地址为04A0H04A6H。解:可利用解:可利用C口置口置/复位控制字,交替使复位控制字,交替使PC3位输出位输

25、出“1”和和“0”。程序段如下:。程序段如下:MOV DX,04A6H ;送控制口地址;送控制口地址 LL:MOV AL,00000111B ;对;对PC3位置位置1 OUT DX,AL CALL DELAY ;延时;延时 MOV AL,00000110B ;对;对PC3位置位置0 OUT DX,AL JMP LL ;循环,产生周期信号;循环,产生周期信号 8255A的置位的置位/复位控制字复位控制字 计算机硬件及网络8并行接口368255A的工作方式的工作方式0 0方式方式0 基本输入基本输入/输出方式输出方式工作特点和使用场合工作特点和使用场合:A口、口、B口、口、C口的高口的高4位,低位

26、,低4位均可独立地位均可独立地设置为输出或输入。设置为输出或输入。方式方式0可用于无条件传送或查询式传送场合。可用于无条件传送或查询式传送场合。无条件传送时,不用联络信号,无条件传送时,不用联络信号,CPU随时用指随时用指令可对该外设进行读写。一般用于连接简单的令可对该外设进行读写。一般用于连接简单的外设,如键盘、开关、指示器。外设,如键盘、开关、指示器。单向单向I/0,不能同时指定某个端口又作输入,又,不能同时指定某个端口又作输入,又作输出作输出计算机硬件及网络8并行接口37【例】【例】在工业控制等实际应用中,经常需要检测某在工业控制等实际应用中,经常需要检测某些开关量的状态。些开关量的状态

27、。如图所示,在某系统中,采用如图所示,在某系统中,采用8255A不断检测不断检测8个开个开关关K7K0的通断状态,并随时在的通断状态,并随时在8个发光二极管个发光二极管LED7LED0上显示出来。上显示出来。要求开关闭合时,相应的要求开关闭合时,相应的LED亮;亮;开关断开时,相应的开关断开时,相应的LED灭。灭。8255A的端口地址为的端口地址为60H66H。工作方式工作方式0及其应用及其应用计算机硬件及网络8并行接口388255A读取开关状态的电路图读取开关状态的电路图 计算机硬件及网络8并行接口39解:由电路原理可知,解:由电路原理可知,A口为方式口为方式0输入,输入,B口为方式口为方式

28、0输出,输出,则则8255A的方式字的方式字=10010000B=90H。且开关闭合,则且开关闭合,则A口输入低电平;当口输入低电平;当B口输出低电平时,相口输出低电平时,相应的应的LED点亮。程序段如下:点亮。程序段如下:MOV DX,66H MOV AL,90H ;设置方式选择控制字;设置方式选择控制字 OUT DX,AL TES:MOV DX,60H ;读;读A口(开关状态)口(开关状态)IN AL,DX MOV DX,62H ;送;送B口显示口显示 OUT DX,AL JMP TES ;循环检测;循环检测 思考:思考:如果要求开关打开时,相应的如果要求开关打开时,相应的LED亮;程序如

29、何修改?亮;程序如何修改?计算机硬件及网络8并行接口40例:并行打印机接口设计,(例:并行打印机接口设计,(8255工作方式工作方式0应用)应用)(1)当当打打印印机机正正在在处处理理一一个个字字符符时时,打打印印机机忙忙信信号号BUSY=1,否否则则,BUSY=0。向向打打印印机机送送数数前前,应应先先查查询询打打印印机机状状态态,当当BUSY=0时时,可可以以向向打印机送数。打印机送数。(2)当当 打打 印印 机机 的的 STROB收收到到一一个个负负脉脉冲冲时时,可可把把数数据据线线的数据送入打印机内。的数据送入打印机内。*10111101A0A1A2A3A4A5A6A7A8A9C22F

30、4H2F7H 端口地址?端口地址?计算机硬件及网络8并行接口41LPST:置工作方式字:送控制口(置工作方式字:送控制口(02F7H)A口方式口方式0,输出,上,输出,上C口输出,下口输出,下C口输入口输入81H=1000 0001PC6置置1,0000,1101=0DH.送控制口(送控制口(02F7H)PC6输出输出1,为输出下降沿初始化,为输出下降沿初始化读读PC口(口(02F6H),置置PC6=0,即,即STROB=0;产生负脉冲。;产生负脉冲。00001100=0CH置置PC6=1,即,即STB=1,0DH=00001101打印机忙否(打印机忙否(PC2=BUSY=?)?)PC2=1,

31、打印机忙,继续测试,打印机忙,继续测试PC2CL中为将要打印的字符中为将要打印的字符ALMOV AL,0DH;OUT DX,ALMOV DX,02F6H IN AL,DX ;AND AL,04H;JNZ LPST ;MOV AL,CL;MOV DX,02F4HOUT DX,AL ;MOV AL,0CHMOV DX,02F7HOUT DX,AL ;INC ALOUT DX,AL ;CL中的字符送中的字符送PA口(口(02F4H)MOV AL,81H;MOV DX,02F7H;OUT DX,AL计算机硬件及网络8并行接口428255A的工作方式的工作方式1 1方式方式1 选通输入选通输入/输出方式

32、输出方式 一、工作特点一、工作特点uA口、口、B口可作为数据传输口,而口可作为数据传输口,而C口的一些引口的一些引脚规定作为脚规定作为A口、口、B口的联络信号。口的联络信号。u按照方式按照方式1 1工作时必须配合一些专门的联络信工作时必须配合一些专门的联络信号号(C口的一些引脚口的一些引脚),实现接口电路与外设之间,实现接口电路与外设之间的应答;的应答;u单向传送;单向传送;u上述引脚的定义在方式上述引脚的定义在方式1 1输入与方式输入与方式1 1输出时有输出时有所不同;所不同;计算机硬件及网络8并行接口43当当A口作为方式口作为方式1输入时,输入时,C口的口的PC3、PC4、PC5作为控制信

33、号,作为控制信号,PC6、PC7仍可作为仍可作为I/O口口利用。利用。当当B口作为方式口作为方式1输入时,输入时,C口的口的PC0、PC1、PC2作为控制信号。作为控制信号。STB:选通输入信号,低电平有效。这是由外选通输入信号,低电平有效。这是由外设产生的数据选通信号,当它有效时,数据从设产生的数据选通信号,当它有效时,数据从输入设备输入到输入设备输入到A口或口或B口的锁存器中。口的锁存器中。各控制信号的定义如下:各控制信号的定义如下:1、方式、方式1输入输入时,端口对应的控制信号时,端口对应的控制信号 二、方式二、方式1时端口对应的联络信号时端口对应的联络信号 计算机硬件及网络8并行接口4

34、4IBF:输入缓冲器满信号,高电平有效。输入缓冲器满信号,高电平有效。它它是是对对STB的的响响应应信信号号,当当STB有有效效时时,把把数数据据传传送送到到输输入入锁锁存存器器中中,输输入入锁锁存存器器锁锁存存数数据据后后,使使IBF置位,发置位,发IBF信号。信号。该该信信号号一一方方面面可可作作为为8255A发发出出的的状状态态信信号号,供供CPU查查询询。当当CPU查查询询到到该该信信号号,说说明明端端口口已已有有数数据据,执执行行输输入入指指令令,读读取取数数据据。同同时时,读读信信号号RD的的上上升升沿沿使使IBF清清0,等等待待下下一一个个数数据据。另另一一方方面面,作作为为外外

35、设设的的STB的的响响应应信信号号,该该信信号号送送给给外外设,阻止外设发送新的数据发送。设,阻止外设发送新的数据发送。计算机硬件及网络8并行接口45INTE(内内部部信信号号):A口口、B口口的的中中断断允允许许信信号号,高高电电平平有有效效。该该信信号号通通过过软软件件对对C端端口口的的置置/复复位位指指令令来来实实现现对对中中断断的的控控制制。将将PC4置置1,A口口允允许许中中断断;将将PC2置置1,B口口允允许许中中断断。清清0,则则屏屏蔽蔽中断。中断。需需要要说说明明的的是是,C口口的的PC4、PC2具具有有双双重重功功能能,置置/复复位位控控制制字字写写入入输输出出锁锁存存器器,

36、其其输输出出缓缓冲冲器器不不选选通通,纯纯粹粹是是对对内内部部寄寄存存器器的的操操作作。而而STB信信号号通通过过输输入入缓缓冲冲器器输输入入。两两者者在在硬硬件件上上的的隔隔离离,不不会冲突。会冲突。INTR:中中断断请请求求信信号号,高高电电平平有有效效。该该信信号号由由8255A向向CPU申申请请中中断断。当当STB和和IBF均均为为高高电电平平时时,在在INTE有有效效的的情情况况下下,INTR=1,表表明明CPU可可以以从从端端口口读读入入数数据。据。CPU读取数据后,读取数据后,RD的下降沿自动使的下降沿自动使INTR清清0。计算机硬件及网络8并行接口46在方式在方式1下,数据从下

37、,数据从I/O设备通过设备通过8255送到送到CPU的过程如下:的过程如下:CPU8255I/O设备设备 STB IBF INTR RD计算机硬件及网络8并行接口471、方式、方式1输入输入时,端口对应的控制信号时,端口对应的控制信号 计算机硬件及网络8并行接口48当当A口作为方式口作为方式1输出时,输出时,C口的口的PC7、PC6、PC3作为控制信号,作为控制信号,PC4、PC5作为作为I/O口使用。口使用。当当B口作为方式口作为方式1输出时,输出时,C口的口的PC0、PC1、PC2作为控制信号,作为控制信号,PC4、PC5作为作为I/O口使用。口使用。2、方式、方式1输出输出时的联络信号时

38、的联络信号pOBF:输出缓冲器,低电平有效。输出缓冲器,低电平有效。当当CPU把把数数据据输输入入到到8255A的的输输出出锁锁存存器器中中,使使OBF置置0,该该信信号号由由8255A输输出出给给外设,通知外设取走数据。外设,通知外设取走数据。计算机硬件及网络8并行接口49INTE(内部信号)(内部信号):中断允许信号,高电平有效。中断允许信号,高电平有效。PC6=1时,允许时,允许A口中断;口中断;PC2=1,允许,允许B口中口中断。断。ACK:外设的应答信号,低电平有效。外设的应答信号,低电平有效。当当外外设设从从8255A的的输输出出锁锁存存器器取取走走数数据据时时,向向8255A发响

39、应信号发响应信号ACK=0,并使,并使OBF置为高电平。置为高电平。若若为为查查询询方方式式,OBF信信号号可可作作为为8255A端端口口的的状状态态信息,供信息,供CPU查询。查询。INTR:中断请求信号,高电平有效。中断请求信号,高电平有效。当当OBF=1,ACK=1,且,且INTE=1时,时,使使INTR=1。计算机硬件及网络8并行接口50在方式在方式1下,数据从下,数据从CPU 通过通过8255送送到到I/O设备的过程如下:设备的过程如下:CPU8255I/O设备设备 ACK INTR OBF WD计算机硬件及网络8并行接口51方式方式1输出时,端口对应的控制信号输出时,端口对应的控制

40、信号 计算机硬件及网络8并行接口52方式方式1的使用场合的使用场合 方式方式1常用于常用于查询方式查询方式传送和传送和中断方式中断方式传送。传送。查查询询方方式式:CPU可可通通过过读读取取IBF、OBF的的状状态态决决定定CPU是否进行数据传输。是否进行数据传输。u IBF(输入:(输入:1CPU读取,读取,0CPU不读取)、不读取)、uOBF(输输出出:1CPU写写入入数数据据,0CPU不不写写入入数据)数据)中中断断方方式式:A口口、B口口自自动动向向CPU申申请请中中断断(若若INTE=1)。)。计算机硬件及网络8并行接口53方式方式0与方式与方式1并行传送数据的接口应用举例:并行传送

41、数据的接口应用举例:甲甲方方方方式式1发发送送,乙乙方方方方式式0接接收收;共共传传送送1K字字节节的的数数据据,双双方方均均采采用用查查询询的的方方式式交交换换数数据据。双双方方的的端端口口地地址址均均为为300H306H。8255PA0PA7PC7PC68255PA0PA7PC7PC3OBFAACKA方式方式1方式方式0甲方:发送甲方:发送乙方:接收乙方:接收CPUCPU计算机硬件及网络8并行接口54甲方发送数据的程序:甲方发送数据的程序:MOV DX,306HMOV AL,0A0H;工作方式字工作方式字=10100000=A0H(A口方式口方式1输出输出)OUT DX,ALMOV AL,

42、0DH;置位置位/复位字复位字=00001101=0DH (PC6置置1,A口输出中断允许口输出中断允许)OUT DX,ALLEA SI,BUFSMOV CX,3FFH;发送的字节数发送的字节数=1KBMOV DX,300HMOV AL,SIOUT DX,AL;向向A口写第一个数据,产生口写第一个数据,产生OBF信号送给乙方,信号送给乙方,等待乙方的等待乙方的ACK信号信号INC SI;地址指针加地址指针加1DEC CX;字节计数器减字节计数器减1计算机硬件及网络8并行接口55L:MOV DX,304H;读读C口,查询发送中断请求口,查询发送中断请求INTRA=1?IN AL,DX AND A

43、L,08H ;PC3=1?JZ L;如果没有中断请求,反复查询;如果有,向如果没有中断请求,反复查询;如果有,向A口写数据口写数据 (因为如果数据输出缓冲器满时:因为如果数据输出缓冲器满时:INTRA=1)MOV DX,300H MOV AL,SI OUT DX,AL;向向A口写第二个数据,口写第二个数据,INC SI;地址指针加地址指针加1 DEC CX;字节计数器减字节计数器减1 JNZ L MOV AH,4CH INT 21H :BUFS DB 1024个字节的数据个字节的数据计算机硬件及网络8并行接口56乙方接收数据的程序:乙方接收数据的程序:MOV DX,306H MOV AL,98

44、H;工作方式字工作方式字=10011000=98H (A口方式口方式0输入;输入;C上半口输入,下半口输出上半口输入,下半口输出)OUT DX,AL MOV AL,07H;置位置位/复位字复位字=00000111=07H (PC3置置1,输出,输出ACK=1,为产生有效的为产生有效的ACK=0初始化初始化)OUT DX,AL MOV DI,OFFSET BUFR MOV CX,3FFH;发送的字节数发送的字节数=1KBL1:MOV DX,304H IN AL,DX;读读C口口 AND AL,80H;测试测试PC7=?来自甲方的?来自甲方的 OBF=?JNZ L1;当当OBFA=1,甲方输出缓冲

45、未满;当,甲方输出缓冲未满;当OBFA=0,甲方输出甲方输出缓冲缓冲 满满 MOV DX,300H IN AL,DX MOV DI,AL;计算机硬件及网络8并行接口57MOV DX,306H;MOV AL,04H;PC3置置“0”,产生,产生ACK=0信号,发给甲方信号,发给甲方OUT DX,ALNOPNOPMOV AL,07H;PC3置置“1”,恢复原状态,为下一次准备,恢复原状态,为下一次准备OUT DX,ALINC DIDEC CXJNZ L1MOV AH,4CHINT 21H :BUFR DB 1024DUP(?)(?)计算机硬件及网络8并行接口588255A的工作方式2及其应用方式方

46、式2 双向输入双向输入/输出方式输出方式一、工作特点一、工作特点 u该该方方式式只只适适用用于于A口口(因因其其有有输输入入、输输出出两两个个锁锁存存器器)。在在该该方方式式下下,可可使使外外设设利利用用A口口的的8位位数数据据线线与与CPU之之间间分分时时进进行行双双向向数数据据传传送送,即即在在单单一一的的8位位数数据据线线PA7-PA0上上,既既可可输输出出数数据据给给外外设设,又又可可以以从从外外设设输输入入数数据据(当当然然不不能能同同时时进进行)。输入或输出数据均锁存。行)。输入或输出数据均锁存。uA口口工工作作在在方方式式2时时,C口口的的PC7PC3被被规规定定为为控控制制信信

47、号号,配配合合A口口使使用用。图图中中控控制制信信号号的的含含义与方式义与方式1中完全相同。中完全相同。计算机硬件及网络8并行接口59二、方式二、方式2 2的控制信号的控制信号 计算机硬件及网络8并行接口60u可可以以看看出出,双双向向传传输输方方式式不不过过是是A口口在在方方式式1情情况况下下输输出出和和输输入入的的组组合合。此此时时,INTE1由由PC6置置位位决决定定,INTE2由由PC4置置位位决决定定。只只要要输输入入、输输出出方方式式有有一一个个发发出出中中断断申申请请,则则INTRA=1。u当当A口口工工作作在在方方式式2时时,B口口可可工工作作在在方方式式0或或方方式式1。在在

48、方方式式1情情况况下下,可可用用PC2PC0作为控制信号。作为控制信号。计算机硬件及网络8并行接口使用场合使用场合根根据据方方式式2的的工工作作特特点点,若若有有个个外外设设具具有有输输入入、输输出出功功能能,但但不不是是同同时时输输入入输输出出数数据据,可可采采用用此此方方式式。如如磁磁盘盘驱驱动动器器,既既可可接接收收主主机机来来的的数数据据,也也可可向向主主机机提提供供数数据据,而而这这种种输输入入、输输出出的的过过程程是是分分时时进进行行的的。可可将将磁磁盘盘驱驱动动器器的的数数据据线线与与8255A的的PA7PA0相相连连,再再将将8255A的的PC7PC3与与磁磁盘盘驱驱动动器器的

49、的控控制制线线、状状态态线线相连,即可使用。相连,即可使用。计算机硬件及网络8并行接口62补充题1:要求针对图示电路连线图编写要求针对图示电路连线图编写8255的初始化程序,同时实现的初始化程序,同时实现开关闭合时对应的指示灯点亮。开关闭合时对应的指示灯点亮。8255的端口地址由图示的译的端口地址由图示的译码电路确定。码电路确定。计算机硬件及网络8并行接口补充题补充题2:假设系统分配给假设系统分配给8255的端口地址为的端口地址为0224H022AH,要,要求用求用LED数码管显示开关闭合的个数(数码管显示开关闭合的个数(0,1,8)。已知)。已知LED数码管的显示编码保存在内存数码管的显示编

50、码保存在内存DISBUF起始处。编写起始处。编写该系统的初始化程序和工作程序。该系统的初始化程序和工作程序。计算机硬件及网络8并行接口648255A的应用举例【例】8255A作为矩阵键盘接口,工作于方式0,如图示。试编程读取矩阵键盘的按键扫描码。矩阵式键盘是非编码键盘的一种,指按键开关按行列排列,形成二维矩阵的结构。图6.10中的键盘为4行4列的矩阵键盘,其行线接8255A的端口A的低4位,列线接端口B的低4位。8255A的A口设为方式0输出,B口设为方式0输入。识别键盘上哪个键被按下的过程称为键盘扫描,其过程如下:先使行线全为“0”,若此时无键按下,则列线应为全“1”;若有键按下,则相应位置

51、的列线应为“0”。有键按下时,还要判断按下的键在哪行哪列,即读取按键的扫描码。方法之一是逐行扫描法,也就是先扫 计算机硬件及网络8并行接口65矩阵键盘接口 计算机硬件及网络8并行接口668255A的应用举例 描第一行,使PA0=0,PA3PA1为,判别列线有无低电平。若有,则可识别出第一行哪一列上有键按下(此时A口、B口的值即为该键的扫描码);若没有,则继续扫描第二行,使PA1=0,其余为,依上述方法判别,直至扫描完所有4行,总可以找到按下的按键。当然,在检测到有键按下后,还必须消除按键的抖动。消除按键抖动的常用方法是在检测到有键按下后,延长一定的时间(通常为20ms),再检查该键是否仍被按着

52、,若是,才能认定该键确实被按下了,而不是干扰信号。设图6.10中8255A的端口地址为8086H,其键盘扫描程序段如下:计算机硬件及网络8并行接口678255A的应用举例 ;判别是否有键按下 START:MOV AL,82H ;设置8255A的工作方式字 OUT 86H,AL MOV AL,00H ;给A口输出00H OUT 80H,AL WAIT1:IN AL,82H ;读入B口的值 AND AL,0FH ;取低4位 CMP AL,0FH ;比较 JZ WAIT ;结果为0,则无键按下,继续等待 CALL DELAY;调用延时子程序,消除按键抖动 IN AL,82H ;再次读B口,测试有无低

53、电平 AND AL,0FH CMP AL,0FH JZ WAIT ;结果为0,则是干扰,继续等待;判断哪个键按下计算机硬件及网络8并行接口688255A的应用举例 MOV CL,4 ;设置计数初值 MOV AL,0EH ;使A0=0,准备先扫描第一行 CHECK:OUT 80H,AL MOV AH,AL ;保存行扫描码 IN AL,82H ;读B口 AND AL,0FH ;取低4位 CMP AL,0FH ;比较 JNZ TABLE ;不为0,则该行有键按下,转键值处理子程序 MOV AL,AH ;无键按下,则修改行扫描码 ROL AL,1 DEC CL ;行数减1 JNZ CHECK ;未扫描

54、完4行,则继续 JMP START ;重新扫描 TABLE:CALL KEYVALUE ;此时AH中为行扫描码,AL中为列扫描码,调用键值处理子程序 计算机硬件及网络8并行接口698255A的应用举例 ;等待按键释放 MOV AL,00 ;向A口输出00H OUT 80H,AL WAIT2:IN AL,82H ;读B口 AND AL,0FH ;取低4位 CMP AL,0FH ;比较 JNZ WAIT2 ;按键未释放,则继续等待 ;后续处理对于图6.10的电路,还可以采用反转法读取按键的扫描码,即在已辨别出有键按下,要读取行和列的扫描码时,可重新设置8255A的工作方式字,使A口为输入,B口为输

55、出。然后将刚才B口读入的列值从B口输出,再从A口读入行值。这样,从A口读入的值为行扫描码,计算机硬件及网络8并行接口708255A的应用举例 从B口读入的值为列扫描码。根据上述方法,读者可以自行编写出程序,这里略过。【例6-6】8255A作为打印机接口,工作于方式0,如图6.11所示。试编写程序实现:CPU用查询方式向打印机输出26个英文字母。8255A的端口地址为80H86H。打印的工作过程如下:当主机要向打印机输出字符时,先查询打印机忙信号,若打印机正在处理一个字符或正在打印一行字符,则BUSY=1;反之,则BUSY=0。因此,当查询到BUSY=0时,则可通过8255A向打印机输出一个字符

56、。此时,要给打印机的选通端STB一个负脉冲,将字符选通到打印机的输入缓冲器中。解:由电路图可知,A口作为传送字符的通道,工作于计算机硬件及网络8并行接口718255A作为打印机接口(查询方式)计算机硬件及网络8并行接口728255A的应用举例 方式0输出;C口高四位工作于方式0输出,C口低四位工作于方式0输入。故8255A的方式选择控制字为10000001B,即81H。其程序如下:DATA SEGMENT EWO DB abcdefghijklmnopqrstuvwxyz DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DA

57、TA ;装载DS MOV DS,AX MOV AL,81H;设置8255A方式选择控制字 OUT 086H,AL MOV AL,0DH ;用C口置/复位控制字使PC6=1 OUT 086H,AL MOV BX,26 ;设置计数初值 LEA SI,EWO ;内存缓冲区的首地址送SI 计算机硬件及网络8并行接口738255A的应用举例 LL:IN AL,084H ;读C口的值 AND AL,04H JNZ LL ;不为0,则PC2=1,打印机正忙,等待 MOV AL,SI ;打印机不忙,则送字符给A口 OUT 080H,AL MOV AL,0CH ;使=0 OUT 086H,AL INC AL ;

58、使=1,则得一个负脉冲输出 OUT 086H,AL INC SI ;修改地址指针 DEC BX ;修改计数值 JNZ LL ;26个字母未输完,则继续 MOV AH,4CH ;返回DOS系统 INT 21HCODE ENDS END START 计算机硬件及网络8并行接口748255A的应用举例【例6-7】8255A也可用作中断方式工作的并行打印机接口,如图6.12所示。试编写程序实现:CPU用查询方式向打印机输出26个英文字母。8255A的端口地址为80H86H。8259A的端口地址为20H、21H。图中,8255A的A口工作在方式1输出,用于给打印机传送字符。C口的PC7、PC6自动成为A

59、口的控制信号,但由于PC7(OBFA)产生的信号不能满足打印机STB选通端的要求,故不用PC7端,而用软件在PC0端产生一个负脉冲,提供给打印机的STB端。另外,C口的PC3作为中断请求信号送到中断控制器8259A的IR3端,对应的中断类型号为0BH。解:由电路原理图可知,8255A的A口工作于方式1输出,计算机硬件及网络8并行接口758255A作为打印机接口(中断方式)计算机硬件及网络8并行接口768255A的应用举例 则其方式选择控制字为10100000B,即A0H。程序如下:DATA SEGMENT EWO DB abcdefghijklmnopqrstuvwxyz DATA ENDS

60、CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,SEG IS8255 ;设置中断向量0BH MOV DS,AX MOV AX,OFFSET IS8255 MOV DX,AX MOV AX,250BH INT 21H MOV AX,DATA ;装载DS MOV DS,AX MOV AL,0A0H;设置8255A方式选择控制字 OUT 086H,AL 计算机硬件及网络8并行接口778255A的应用举例 MOV AL,01H ;用C口置/复位控制字使PC0=1 OUT 086H,AL MOV AL,0DH ;用C口置/复位控制字使PC6=1 OUT

61、086H,AL IN AL,21H ;读8259A的中断屏蔽字 AND AL,0F7H ;开放8259A的IR3中断 OUT 21H,AL MOV CL,26 ;设置计数初值 LEA SI,EWO ;内存缓冲区的首地址送SI STI ;开中断 LL:CMP CL,0 ;26个英文字母未输完,则继续等待中断 JNZ LL MOV AH,4CH ;返回DOS系统 INT 21H IS8255 PROC MOV AL,SI ;打印机不忙,则送字符给A口 OUT 080H,AL 计算机硬件及网络8并行接口788255A的应用举例 MOV AL,0CH ;使STB=0 OUT 086H,AL INC A

62、L ;使STB=1,则得一个负脉冲输出 OUT 086H,AL INC SI ;修改地址指针 DEC CL ;修改计数值 JNZ NEXT MOV AL,0CH ;使PC6置为0,关闭打印机中断 OUT 086H,AL IN AL,21H ;读8259A的屏蔽字 OR AL,08H ;恢复8259A原有的屏蔽字 OUT 21H,AL NEXT:MOV AL,20H ;给8259A发EOI命令 OUT 20H,ALIRET IS8255 ENDPCODE ENDS END START 计算机硬件及网络8并行接口798255A在PC机中的应用 在IBM PC/XT微机的应用在IBM PC/XT微机

63、系统中,使用一片8255A,端口地址为607FH,常用的是60H63H(64H7FH为映像地址,A4未接),分别是A口、B口、C口、控制端口的地址。其连接电路如图6.13所示。在XT机中,8255A工作在方式0。A口在正常工作时为输入,用来读取键盘扫描码;在加电自检时为输出,输出当前检测部件的标志信号。B口为输出方式,用于键盘控制、RAM和I/O通道检验、扬声器的启动和控制。C口为输入方式,低4位读取系统配置开关DIP的值以确定系统工作状态,如是否使用8087、选择RAM容量大小、显示配置类型以及所连接的软盘驱动器的数量;计算机硬件及网络8并行接口80图8.13 PC/XT机的8255A连线图

64、 计算机硬件及网络8并行接口818255A在PC机中的应用 高4位读取系统状态测试位,如扬声器的状态、RAM和I/O通道的奇偶检验结果等。在图8.13中,系统配置开关的8个信号分两组均接到PC3PC0,由PB3决定是读取DIP开关的低四位还是高四位。工作过程如下:要读取低四位,CPU先使PC3=0,一方面该信号经74LS04反相后为高电平,由于7407为同相OC门(集电极开路),则7407的输出全为高阻态,不会影响外部信号的状态;另一方面PC3信号使三态缓冲器74LS244的控制端1G、2G有效,则缓冲器打开,DIP开关的低四位信号SW-1SW-4送到PC3PC0,可供CPU读取。要读取DIP

65、开关的高四位,先使PC3=1,一方面该信号使三态缓冲器74LS244的控制端1G、2G计算机硬件及网络8并行接口828255A在PC机中的应用无效,则禁止缓冲器输出;另一方面PC3信号经74LS04反相后为低电平,则7407的输出为低电平,DIP开关的低四位信号SW-5SW-8送到PC3PC0,可供CPU读取。由以上原理,读者可以自行编写出读DIP开关的程序段,这里略过。在80286以上的微机中的应用在80286以上的微机系统中,8255A的对应电路被集成到多功能芯片内部。为了保持兼容性,系统保留了8255A的端口地址和它的相应功能。也就是说,仍可以用60H地址读取键盘扫描码,用PB1和PB0

66、控制发声系统。计算机硬件及网络8并行接口838255A的实验设计 8.4.1 实验目的掌握8255A的工作方式及应用编程。掌握8255A的典型应用电路接法。8.4.2 实验设备PC机一台,ADEK88ET实验装置一套。8.4.3 实验内容 基本输入输出实验。编写程序,使8255A的A口为输出,B口为输入,完成开关到LED灯的数据传输。要求只要开关拨动,LED灯的显示就要改变。流水灯显示实验。编写程序,使8255A的A口为输出,实现8位LED灯的循环显示。计算机硬件及网络8并行接口848255A的实验设计8.4.4 实验原理可编程外围接口芯片8255A是Intel公司生产的通用并行接口芯片,它有A、B、C三个8位并行接口,用+5V单电源供电,能在以下三种工作方式下工作:方式0基本输入/输出方式,方式1选通输入/输出方式,方式2双向输入/输出方式。8255A的内部结构和引脚如图6.1和6.2所示。8255A的方式选择控制字和C口置/复位控制字如图6.3和6.4所示。8.4.4 实验步骤及说明基本输入/输出实验本实验使8255A的端口A工作在方式0输出,端口B工作计算机硬件及网络8并行接口8

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!