好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

第09章 并行接口技术.ppt

39页
  • 卖家[上传人]:cn****1
  • 文档编号:589197260
  • 上传时间:2024-09-10
  • 文档格式:PPT
  • 文档大小:514.50KB
  • / 39 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第第9章章 并行接口技术并行接口技术9.1   并行接口概述并行接口概述•并行输入并行输入/输出是把一个字符的几个位同时输出是把一个字符的几个位同时进行传输进行传输•优点:速度快、效率高优点:速度快、效率高•缺点:通信线多、传输距离较短缺点:通信线多、传输距离较短•形式:输入、输出、双向形式:输入、输出、双向•类型:硬件连接、类型:硬件连接、可编程接口可编程接口 9.2    可编程并行接口芯片可编程并行接口芯片8255AA组控制B组控制缓冲器数据总线DBoooRDWRA0A1RESETCS读/写控制逻辑A口上C口下C口B口PA7~PA0PC7~PC4PC3~PC0PB7~PB0内部总线外设接口外设接口CPU接口接口内部逻辑内部逻辑  9.2    可编程并行接口芯片可编程并行接口芯片8255A9.2.1  内部结构和芯片引脚内部结构和芯片引脚 •Inte18255AInte18255A是一个是一个8 8位的通用可编程并行接口芯片所位的通用可编程并行接口芯片所以用以用8255A8255A连接外部设备时,通常不需要附加外部电路连接外部设备时,通常不需要附加外部电路8255A8255A主要由以下几部分组成:主要由以下几部分组成:    1.数据端口数据端口 A,B,C•8255A有三个有三个8位传送数据的端口:称为端口位传送数据的端口:称为端口A、、B、、C,都可用软件来指定为输入或输出。

      都可用软件来指定为输入或输出•端口端口A :有一个:有一个8位数据输出锁存器位数据输出锁存器/缓冲器,一个缓冲器,一个8位位数据输入锁存器数据输入锁存器•端口端口B :有一个:有一个8位数据输出锁存器位数据输出锁存器/缓冲器,一个缓冲器,一个8位位数据输入缓冲器数据输入缓冲器•端口端口C :有一个:有一个8位输出锁存位输出锁存/缓冲器缓冲器,一个一个8位输入缓冲位输入缓冲器(无输入锁存)器(无输入锁存) •  在使用中,端口在使用中,端口A、、B、、C都可作为独立的输入端口都可作为独立的输入端口或输出端口,其中端口或输出端口,其中端口C也可用作为控制或状态信息的也可用作为控制或状态信息的端口如工作在这种方式下,端口如工作在这种方式下,C可以分成两个可以分成两个4位的端位的端口(上口(上C和下和下C),每个端口包含一个),每个端口包含一个4位锁存器,分别位锁存器,分别与端口与端口A和端口和端口B配合使用,可用以作为控制信号的输配合使用,可用以作为控制信号的输出,或作为状态信号输入出,或作为状态信号输入•  8255A的控制寄存器可以接受的控制寄存器可以接受CPU输出的命令字,输出的命令字,决定两组控制电路的工作方式,也可以根据决定两组控制电路的工作方式,也可以根据CPU的命令的命令字对端口字对端口C的每一位实现按位的每一位实现按位“复位复位”或或“置位置位”。

      另另外,还可接收来自读外,还可接收来自读/写控制逻辑电路的读写控制逻辑电路的读/写命令,以写命令,以实现两组端口的读实现两组端口的读/写操作•  A组控制电路控制端口组控制电路控制端口A和端口和端口C的高的高4位位(PC7~PC4)的工作方式和读的工作方式和读/写操作B组控制电路控制端口组控制电路控制端口B和端和端口口C的低的低4位位(PC3~PC0)的工作方式和读的工作方式和读/写操作     2.读读/写控制逻辑电路写控制逻辑电路•  读读/写控制逻辑电路负责管理写控制逻辑电路负责管理8255A的数据传的数据传输过程,它接收输过程,它接收CS引脚(来自于地址译码器)引脚(来自于地址译码器)及及A1,A0引脚(来自于系统地址总线引脚(来自于系统地址总线)和和RESET,WR,RD引脚(来自于系统控制总线)的引脚(来自于系统控制总线)的信号,将这些信号进行组合后,得到对信号,将这些信号进行组合后,得到对A组控制组控制和和B组控制部件的控制命令,并传递给这两个部组控制部件的控制命令,并传递给这两个部件,以完成对数据信息、状态信息和控制信息的件,以完成对数据信息、状态信息和控制信息的传输。

      传输   3.数据总线缓冲器数据总线缓冲器•  这是一个这是一个8位、双向、三态的缓冲器,位、双向、三态的缓冲器,8255A通过它与系统数据总线相连,输入数据、输出数通过它与系统数据总线相连,输入数据、输出数据和据和CPU送给送给8255A的控制字都是通过这个缓冲的控制字都是通过这个缓冲器传送的器传送的   8255A引脚说明VCCRESETWRRDCSGNDA1A093231302928272625140239338437536635734833242322211718192013141516101112PB7~PB3PB0~PB2PC0~PC3PC7~PC4PA0~PA3D0~D7PA4~PA78255A  •8255A有有40条引脚条引脚,采用双列直插式封装采用双列直插式封装,40条引条引脚中脚中,除了电源和地线外,其他信号分为两部分除了电源和地线外,其他信号分为两部分•●第一部分是与外设连接的引脚第一部分是与外设连接的引脚•包括包括:  PA7~PA0  A口数据信号口数据信号•           PB7~PB0  B口数据信号口数据信号•       PC7~PC0  C口数据信号,当口数据信号,当A口或口或B口工口工作于方式作于方式1或方式或方式2时,时,C口中的部分引线用作口中的部分引线用作A口或口或B口与外设之间的联络信号线以及口与外设之间的联络信号线以及A口或口或B口口与与CPU之间的中断请求信号线。

      之间的中断请求信号线•●第二部分是与第二部分是与CPU相连的引脚相连的引脚•包括包括:    D7~D0    数据线,双向,三态用于和数据线,双向,三态用于和系统数据总线相连,传送系统数据总线相连,传送CPU与与8255A之间交换之间交换的数据、状态信息和控制字的数据、状态信息和控制字       •  RESET    复位信号,高电平有效当复位信号,高电平有效当RESET有效时,有效时,所有内部寄存器清零,同时,三个数据端口被自动设置所有内部寄存器清零,同时,三个数据端口被自动设置成为输入方式,共成为输入方式,共24条引脚均为高阻状态条引脚均为高阻状态       CSCS    片选信号,输入,低电平效片选信号,输入,低电平效           A1,A0   端口选择信号当CS有效,选中端口选择信号当CS有效,选中8255A时,时,再由再由A1,A0的编码选择的编码选择A口口,B口口,C口或是控制寄存器口或是控制寄存器规定当规定当A1,A0为为“00”时选中时选中A口;为口;为“01”时选中时选中B口口;为为“10”时,选中时,选中C口口;为为“11”时,选中控制口时,选中控制口。

      当当8255A与与8088或其他或其他8位微处理器连接使用时,其位微处理器连接使用时,其A1和和 A0一般接系统地址总线的一般接系统地址总线的A1和和A0,当与,当与8086等等16位总线的位总线的CPU连接使用时,其连接使用时,其A1和和A0与系统地址总线与系统地址总线的的A2和和A1相连•  RDRD     读信号,输入,低电平有效RD为低电平时,读信号,输入,低电平有效RD为低电平时,CPU可从可从8255A中读取输入数据中读取输入数据  •WRWR     写信号,输入,低电平有效WR为低写信号,输入,低电平有效WR为低电平时,电平时,CPU可以向可以向8255A中写入控制字或输出中写入控制字或输出数据•CS,A1,A0,RD和和WR信号组合控制信号组合控制8255A所实现所实现的操作如下表所示的操作如下表所示     9.2.2   8255A的编程控制字的编程控制字•    通常通常CPU通过通过8255A的数据线的数据线D7~~D0送往送往8255A的信息既可以是数据,也可以是控制字,的信息既可以是数据,也可以是控制字,具体的信息要取决于端口选择线具体的信息要取决于端口选择线A1 A0上的口地上的口地址,送往址,送往A口、口、B口、口、C口的是数据,送往控制口口的是数据,送往控制口的是控制字。

      当通过指令给的是控制字当通过指令给8255A的控制口送控的控制口送控制字时,实际上就是通过编程决定其工作方式制字时,实际上就是通过编程决定其工作方式•  8255A有两个控制字:有两个控制字:方式选择控制字和对方式选择控制字和对C口的按位置口的按位置/复位控制字复位控制字用控制字的最高位用控制字的最高位D7位区分是方式选择控制字,还是对位区分是方式选择控制字,还是对C口的按位口的按位置置/复位控制字复位控制字D7==“1”时为方式选择控制字,时为方式选择控制字,D7=“0”时为对端口时为对端口C的按位置的按位置/复位控制字复位控制字 1. 工作方式控制字工作方式控制字::对A1A0=11的端口写入D7=1的数据  •     8255A的工作方式选择控制字是用来设定端口的工的工作方式选择控制字是用来设定端口的工作方式及数据的传送方向的它可以分别设定作方式及数据的传送方向的它可以分别设定A组和组和B组的工作方式组的工作方式A组包括组包括A口和口和C口的高口的高4位;位;B组包括组包括B口和口和C口的低口的低4位A口和口和B口的口的8位必须作为一个整体位必须作为一个整体来设定工作方式,而来设定工作方式,而C口的高口的高4位和低位和低4位可按位设置。

      位可按位设置•例如要求例如要求8255A的各端口处于如下工作方式:的各端口处于如下工作方式:                                端口端口A—方式方式0,输出;端口,输出;端口B—方式方式0,输入;端口,输入;端口C的高的高4位是输出;端口位是输出;端口C的低的低4位是输入设位是输入设A口地址为口地址为00E0H,B口地址口地址00E1,C口地址口地址00E2,控制口地址控制口地址00E3H,求出该控制字为求出该控制字为83H       编程如下:编程如下:      • MOV      AL,83H• MOV      DX,00E3H• OUT        DX,AL  •2.对对C口按位置口按位置/复位控制字复位控制字•  对对C口按位置口按位置/复位控制字的格式及各位定复位控制字的格式及各位定义如后义如后图图所示 •   对对C口按位置口按位置/复位控制字用来对复位控制字用来对C口各位进口各位进行置位或复位其中,行置位或复位其中,D0用来确定被选位是置用来确定被选位是置“0”还是置还是置“1”如为“1”,则对,则对C口中的口中的选定位进行置选定位进行置“1”操作,如为操作,如为“0”,则进行,则进行置置“0”操作。

      操作D3D2D1三位的编码决定了对三位的编码决定了对C口中哪一位进行操作,口中哪一位进行操作,D6D5D4三位无用,可三位无用,可为为“1”,也可以为,也可以为“0”,不影响对选定位的,不影响对选定位的置置/复位操作,复位操作,D7=“0”是对是对C口按位置口按位置/复位控复位控制字的标识位制字的标识位     端口端口C置置1/置置0控制字:控制字:       对对A1A0=11的端口写入的端口写入D7=0的数据表示对口的数据表示对口C进行位操作进行位操作注意:对(注意:对A1A0=10的端口操作表示对的端口操作表示对C口进行字节操作口进行字节操作  •对对C端口值端口值1/置置0控制字,作如下说明:控制字,作如下说明:•1、、 C端口值端口值1/置置0控制字尽管是对端口控制字尽管是对端口C进行操作,但此控制字进行操作,但此控制字必须写入控制口,而不是写入必须写入控制口,而不是写入C端口•2、值、值1/置置0控制字的控制字的D0位决定了是置位决定了是置1操作还是置操作还是置0操作如为操作如为1,则对端口,则对端口C中某一位置中某一位置1,如为,如为0,则置,则置0•3、值、值1/置置0控制字的控制字的D3、、D2、、D1决定了对决定了对C端口中的哪一位进端口中的哪一位进行操作。

      行操作•4、值、值1/置置0控制字控制字D7位必须为位必须为0,它是标识符它是标识符D6、、D5、、D4位位可任意•例如:例如:MOV       AL,0FH      ;对对PC7置置1的控制字的控制字•             MOV      DX,00EBH  ;将控制字的地址送将控制字的地址送DX•             OUT       DX,AL         ;对对PC7进行置进行置1操作操作•             MOV        AL,06H       ;对对PC3置置0的控制字的控制字•             OUT        DX,AL         ;对对PC3进行置进行置0操作操作•注:设注:设8255A的控制字的地址为的控制字的地址为00EBH 9.2.3    8255A的三种工作方式的三种工作方式•方式方式0---基本输入输出基本输入输出不使用联络信号,端口不使用联络信号,端口A B C均可作为输入输出口,适均可作为输入输出口,适合无条件传送和查询传送方式合无条件传送和查询传送方式•方式方式1---选通输入输出选通输入输出端口端口A B作为输入输出口,作为输入输出口,C口的某些位作为口的某些位作为A、、B口的口的控制或状态位控制或状态位•方式方式2---双向传输方式双向传输方式A口可双向传送,口可双向传送,C口的口的3~7位作为位作为A口的联络信号。

      口的联络信号B口可工作在口可工作在0、、1方式下,方式下, C口的口的0~2位作为位作为B口的联口的联络信号 复习•8255A有几个端口?•有哪几个数据口?•8255A有哪几种工作方式?•8255A的每个端口可分别工作在哪种工作方式下?•8255A的方式控制字的格式和编程•8255A的C口置位/复位字的格式和编程 9.3 8255A的方式0及其应用•9.3.1 方式0的特点        方式0也称基本输入输出方式•1)PA和PB以及PC口的高4位和低4位可通过方式控制字规定为输入和输出•2)两个8位和两个4位口,都可由用户任意支配为输入或输出,共16种不同的使用组态•3)无固定的专用联络信号,完全由用户决定•4)单向I/O,每次初始化只能指定输入或输出 9.3.2 用方式用方式0与打印机接口与打印机接口•1、要求:CPU通过并行接口采用查询方式把存放在BUF缓冲区的256个字符送去打印机进行打印•2、分析:    1)busy状态用PC2读入,所以为输入方式    2)A口传送数据,所以为输出方式    3)PC7用作选通信号,为输出方式    4)打印机的busy信号的转变由打印机自动完成 CPU8255A打印机D7~D0PAPC7PC2STBBUSY查询式打印机接口示意图查询式打印机接口示意图   A口:方式口:方式0、输出数据、输出数据下下C口:方式口:方式0、、PC2输入状态信号输入状态信号(可选其它可选其它)上上C口:方式口:方式0、、PC7输出选通信号输出选通信号(可选其它可选其它)    B口:任意口:任意方式控制字为:10000001B。

      3、设计、设计 驱动程序如下: MOV DX,303H;8255的控制口 MOV AL,81H ;工作方式字 OUT DX,AL MOV AL,0FH ;置位字,使PC7置1, OUT DX,AL ;即使/STB=1 MOV SI,OFFSET BUF;首地址 MOV CX,OFFH;打印字符个数L:MOV DX,302H;PC口地址 IN AL,DX ;查busy=0?, AND AL,04H ;(PC2=0?) JNZ L ;忙,则等待 MOV DX,300H;A口地址 MOV AL,[SI]; OUT DX,AL ;送数 MOV DX,303H;控制口,MOV AL,0EH;使/STB=0OUT DX,AL ;,置位字NOP;延时NOPMOV AL,0FH;使/STB=1OUT DX,AL ;,置位字INC SI;内存地址加1DEC CX;计数器减1JNZ L;未完,继续MOV AH,4CHINT 21H;结束 9.4 8255A的方式1及其应用•9.4.1 9.4.1 方式方式1 1的特点的特点1 1)又称选通的输入输出方式,需要用)又称选通的输入输出方式,需要用PCPC口的固定口的固定位作为联络信号位作为联络信号2 2))PAPA口和口和PBPB口可分别工作在方式口可分别工作在方式1 1的输入或输出的输入或输出3 3))PCPC口中除了固定的联络信号外,其余位仍然可口中除了固定的联络信号外,其余位仍然可作为输入输出作为输入输出4 4)如)如A A口和口和B B口只有一个工作于方式口只有一个工作于方式1 1,输入输出操,输入输出操作过程中,产生固定的状态字,这些状态信息可作过程中,产生固定的状态字,这些状态信息可作为查询或中断请求之用,状态字从作为查询或中断请求之用,状态字从C C口读取口读取5 5)单向传送,一次初始化只能设置一个方向传送)单向传送,一次初始化只能设置一个方向传送 9.4.2 9.4.2 方式方式1 1下联络信号线的定义及其工作过程下联络信号线的定义及其工作过程1.1.方式方式1 1输入的联络信号线定义及其工作过程输入的联络信号线定义及其工作过程 PA7~PA08PC4STBAPC5IBFAPC3INTRAPC6PC7I/O线&INTEAoRDPB7~PB08PC2STBBPC1IBFBPC0INTRB&INTEBoRD方式方式1 (B口口) 9.4.2 9.4.2 方式方式1 1下联络信号线的定义及其工作过程下联络信号线的定义及其工作过程1.1.方式方式1 1输入的联络信号线定义及其工作过程输入的联络信号线定义及其工作过程 当当A A、、B B口为输入时,分别指定了口为输入时,分别指定了C C口的口的3 3根线根线作为应答信号,分别如下:作为应答信号,分别如下:/STB/STB::选通信号输入端。

      选通信号输入端 IBFIBF::输入缓冲器满,已收到外设数据,但输入缓冲器满,已收到外设数据,但CPUCPU未未取走取走INTRINTR::中断请求信号中断请求信号INTEINTE::中断允许信号,要通过按位置位命令设置中断允许信号,要通过按位置位命令设置对应引脚:对应引脚: PC4PC4——/STBa/STBa,,PC5PC5——IBFaIBFa,,PC3PC3——INTRaINTRa,, PC2PC2——/STBb/STBb,,PC1PC1——IBFbIBFb,,PC0PC0——INTRbINTRb,, 方式方式1 1输入的工作过程输入的工作过程•信号交接过程如下:1.数据准备好后,发/STB,把数据输入到82552.数据锁存到8255后,使得IBF=1,表示输入缓冲器满,禁止输入新数据3.在中断允许(INTE=1)的情况下,使得INTR变为高,通知CPU,CPU转到相应的中断服务子程序4.CPU的读写信号使INTR复位,其后清除IBF为低,表示输入缓冲器为空,可输入新数据 9.4.2 9.4.2 方式方式1 1下联络信号线的定义及其工作过程下联络信号线的定义及其工作过程2.2.方式方式1 1输出的联络信号线定义及其工作过程输出的联络信号线定义及其工作过程PA7~PA08PC6ACKAPC7OBFAPC3INTRAPC4PC5I/O线&INTEAoWR方式方式1输出输出 (A口口)PB7~PB08PC2ACKBPC1OBFBPC0INTRB&INTEBoWR方式方式1输出输出 (B口口) 9.4.2 9.4.2 方式方式1 1下联络信号线的定义及其工作过程下联络信号线的定义及其工作过程2.2.方式方式1 1输出的联络信号线定义及其工作过程输出的联络信号线定义及其工作过程当当A A、、B B口为输出时,分别指定口为输出时,分别指定C C口的口的3 3根线作为应答信号:根线作为应答信号:/ACK/ACK::应答信号输入端,其下降沿延时一段时间后,使应答信号输入端,其下降沿延时一段时间后,使OBF=1OBF=1,为下一次输出做好准备,为下一次输出做好准备/OBF/OBF::输出缓冲器满,输出缓冲器满,CPUCPU已将数据送到已将数据送到82558255的输出端口,的输出端口,通知外设来取数据通知外设来取数据INTRINTR::中断请求信号,请求中断请求信号,请求CPUCPU向向82558255写入数据写入数据(/WR(/WR、、/OBF/OBF、、/ACK/ACK、、INTEINTE都为高时才能产生都为高时才能产生) )INTEINTE::中断允许信号,要通过按位置位命令设置中断允许信号,要通过按位置位命令设置对应引脚:对应引脚: PC6PC6——/ACKa/ACKa,,PC7PC7——OBFaOBFa,,PC3PC3——INTRaINTRa,, PC2PC2——/ACKb/ACKb,,PC1PC1——OBFbOBFb,,PC0PC0——INTRbINTRb,, 方式方式1 1输出的工作过程输出的工作过程•信号交接过程如下:1.CPU把数据写到8255,同时使/OBF有效,通知外设取数,同时使INTR变低,封锁中断2.外设得到OBF后,用ACK回答82553.ACK的下降沿将OBF置高,为下一个输出作准备,同时产生中断请求,通知CPU,CPU转到相应的中断服务子程序传送数据。

      9.4.3 方式1的状态字•1、状态字的作用   为查询方式提供了状态标志位,CPU可通过读状态字来确定中断源,实现查询中断•2、状态字的格式A A组状态组状态B B组状态组状态PC7PC7PC6PC6PC5PC5PC4PC4PC3PC3PC2PC2PC1PC1PC0PC0输入输入I/OI/OI/OI/OIBFIBFINTEINTEINTRINTRINTEINTEIBFIBFINTRINTR输出输出OBFOBFINTEINTEI/OI/OI/OI/OINTRINTRINTEINTEOBFOBFINTRINTR 3、使用状态字应注意的问题•1)状态字是8255操作过程中由内部产生,与PC口的引脚无关•2)CPU可查询的状态位有:IBF、OBF、INTR•3)INTE不是 操作过程中自动产生的,而是通过置位/复位命令设置的•例:9.3 若PA口输入时,设置允许和禁止中断请求设置PC4)MOV DX,303HMOV AL,00001001BOUT DX,ALMOV AL,00001000BOUT DX,AL 9.4.4 方式1接口电路的设计•注意:若采用查询方式,中断请求线可以不接,而去查询状态字中的INTR位,但一定要使INTE=1•例:甲乙两微机之间并行传送1KB的数据。

      甲发乙收,甲机的8255为方式1,乙机的8255为方式0,两者均采用查询方式交换数据•连接图如下: 程序见P236~238 •程序见P236、P238 9.5 8255A的方式2及其应用•9.5.1 9.5.1 方式方式2 2的特点的特点1 1)又称双向选通的输入输出方式,需要用)又称双向选通的输入输出方式,需要用PCPC口的口的固定的固定的5 5位作为联络信号,只适合于位作为联络信号,只适合于A A口2 2)因有专门的联络信号和中断请求信号,所以可)因有专门的联络信号和中断请求信号,所以可采用中断方式或查询方式与采用中断方式或查询方式与CPUCPU交换数据交换数据3 3)可以看成是方式)可以看成是方式1 1下的输入或输出的结合下的输入或输出的结合 9.5.2 9.5.2 方式方式2 2下联络信号线的定义及其工作过程下联络信号线的定义及其工作过程方式方式2 2的联络信号线定义及其工作过程的联络信号线定义及其工作过程 其工作过程可看成是其工作过程可看成是A A口方式口方式1 1的输入输出的结合的输入输出的结合 输出中断允许由输出中断允许由PC6控制控制输入中断允许由输入中断允许由PC4控制控制均要通过按位置位命令设置均要通过按位置位命令设置 9.5.3 方式2的状态字•1、状态字的作用   为查询方式提供了状态标志位,CPU可通过读状态字来确定中断源,实现查询中断。

      •2、状态字的格式PC7PC7PC6PC6PC5PC5PC4PC4PC3PC3OBFOBFINTE1INTE1IBFIBFINTE2INTE2INTRINTR输出中断允许由输出中断允许由PC6控制控制输入中断允许由输入中断允许由PC4控制控制均要通过按位置位命令设置均要通过按位置位命令设置 9.5.4 方式2接口电路的设计•注意:若采用查询方式,中断请求线可以不接,而去查询状态字中的INTR位,但一定要使INTE=1•例:甲乙两微机之间并行传送1KB的数据甲发乙收,其中甲机的8255为方式2,采用中断方式,乙机的8255为方式0,采用查询方式交换数据 •程序见P242~243 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.