1、1第九讲第九讲 并口与并口与8255A8255A2本讲内容n8255A的工作方式和编程的工作方式和编程n8255A的应用的应用3并行数据传输方式n以计算机的字长(通常是以计算机的字长(通常是8位、位、16位或位或32位)为传位)为传输单位,一次传送一个字长的数据输单位,一次传送一个字长的数据n适合于外部设备与微机之间进行近距离、大量和快适合于外部设备与微机之间进行近距离、大量和快速的信息交换速的信息交换n例如:微机与并行接口打印机、磁盘驱动器例如:微机与并行接口打印机、磁盘驱动器n微机系统中最基本的信息交换方法微机系统中最基本的信息交换方法n例如:系统板上各部件之间,接口电路板上各部例如:系统
2、板上各部件之间,接口电路板上各部件之间件之间4并行接口芯片8255An具有多种功能的可编程并行具有多种功能的可编程并行I/O接口电路芯片接口电路芯片n为为Intel系列微处理器设计的配套电路,也可用于系列微处理器设计的配套电路,也可用于其它微处理器系统中其它微处理器系统中n在微型计算机系统中,用在微型计算机系统中,用8255A作接口时,通常不需作接口时,通常不需要附加外部逻辑电路就可以为要附加外部逻辑电路就可以为CPU与外设之间提供与外设之间提供数据通道,因此得到了极广泛的应用。数据通道,因此得到了极广泛的应用。58255A的引脚68255A的内部结构数据数据总线总线缓冲器缓冲器内部控制线内部
3、控制线内部数据线内部数据线D0D7A组组控制控制A组组端口端口AA组组端口端口C上部上部B组组控制控制B组组端口端口BB组组端口端口C下部下部读写读写控制控制逻辑逻辑PC0PC3PB0PB7PC4PC7PA0PA7RDWRA0A1CSRESET78255A的内部结构n由四个部分组成由四个部分组成1.数据总线缓冲器数据总线缓冲器n双向、三态双向、三态2.A组和组和B组的控制电路组的控制电路n根据根据CPU送来的编程命令控制送来的编程命令控制8255A工作的电路工作的电路n内部有控制寄存器,用来接收内部有控制寄存器,用来接收CPU送来的命令字送来的命令字nA组控制部件用来控制组控制部件用来控制PA
4、口和口和PC口的高口的高4位位nB组控制部件用来控制组控制部件用来控制PB口和口和PC口的低口的低4位位3.三个八位数据端口三个八位数据端口PA、PB、PC4.读读/写控制逻辑写控制逻辑8数据端口n端口端口A:PA0PA7n包含一个包含一个8位的数据输入锁存器,一个位的数据输入锁存器,一个8位的数据位的数据输出锁存器输出锁存器/缓冲器,缓冲器,因此因此A端口作输入和输出时端口作输入和输出时数据均能锁存数据均能锁存nA组,支持工作方式组,支持工作方式0、1、2n常作数据端口,功能最强大常作数据端口,功能最强大n端口端口B:PB0PB7n包含一个包含一个8位的数据输入缓冲器,一个位的数据输入缓冲器
5、,一个8位的数据位的数据输入输入/输出锁存器输出锁存器/缓冲器缓冲器nB组,支持工作方式组,支持工作方式0、1n常作数据端口常作数据端口9数据端口n端口端口C:PC0PC7n包含一个包含一个8位的数据输入缓冲器,一个位的数据输入缓冲器,一个8位的数据输位的数据输出锁存器出锁存器/缓冲器,缓冲器,无输入锁存功能无输入锁存功能n仅支持工作方式仅支持工作方式0n可作数据、状态和控制端口可作数据、状态和控制端口n分两个分两个4位,每位可独立操作位,每位可独立操作nA组控制高组控制高4位位PC4PC7nB组控制低组控制低4位位PC0PC310读写控制逻辑n读写控制逻辑读写控制逻辑n用来管理数据信息、控制
6、字和状态字的传送,它接用来管理数据信息、控制字和状态字的传送,它接收来自收来自CPU地址总线的地址总线的A1、A0和控制总线的有关和控制总线的有关信号,向信号,向8255A 的的A、B两组控制部件发送命令两组控制部件发送命令nRESET:复位信号复位信号n/CS:片选片选n/RD、/WR:读信号、写信号读信号、写信号nA1、A0:端口选择信号。端口选择信号。n8255A内部有内部有3个数据端口(个数据端口(PA、PB、PC)和一)和一个控制字寄存器端口。个控制字寄存器端口。118255A的工作方式n方式方式0:基本输入输出方式:基本输入输出方式n适用于无条件传送和查询方式的接口电路适用于无条件
7、传送和查询方式的接口电路n查询方式下,可以使用查询方式下,可以使用PC口作为握手控制口作为握手控制n规定输出信号可以被锁存,而输入信号不能锁存规定输出信号可以被锁存,而输入信号不能锁存n方式方式1:选通输入输出方式:选通输入输出方式n适用于查询和中断方式的接口电路适用于查询和中断方式的接口电路n输入输出都锁存输入输出都锁存n方式方式2:双向选通输入输出方式:双向选通输入输出方式n适用于双向传送数据的外设适用于双向传送数据的外设n适用于查询和中断方式的接口电路适用于查询和中断方式的接口电路n输入输出都锁存输入输出都锁存12方式0:基本输入输出方式n每一个端口都可以作为基本的输入每一个端口都可以作
8、为基本的输入/输出口输出口nA口,口,B口,口,C口的高四位和低四位可以口的高四位和低四位可以独立独立地设地设置为输入口或输出口置为输入口或输出口nCPU可以采用可以采用无条件读无条件读/写方式写方式与与8255A交换数据交换数据n如果把如果把C口的两个部分分别用作控制和查询口,与口的两个部分分别用作控制和查询口,与外设的控制和状态端相连,外设的控制和状态端相连,CPU也可以通过对也可以通过对C口口的读写实现对的读写实现对A口和口和B口的口的查询方式查询方式工作工作n输出的数据被锁存,输入数据不锁存输出的数据被锁存,输入数据不锁存13方式1选通输入/输出n方式方式1:将将3个端口分为个端口分为
9、A、B两组两组nA、B两个口仍作为数据输入两个口仍作为数据输入/输出口输出口nC口分为两部分,分别作为口分为两部分,分别作为A口和口和B口的联络信号。口的联络信号。n联络信号为联络信号为3位,两个数据口用去位,两个数据口用去6位,剩下位,剩下2位仍可以位仍可以做数据位用。做数据位用。nA、B两个口的工作状态由两个口的工作状态由CPU写控制字时设定。写控制字时设定。一旦方式设定,它们所用的一旦方式设定,它们所用的C口的联络信号位也就口的联络信号位也就已经确定。已经确定。n输入输出都锁存输入输出都锁存n可以用于可以用于查询方式查询方式和和中断方式中断方式。14方式1输入引脚:A端口数据选通信号数据
10、选通信号表示外设已经准备好数据输入缓冲器满信号输入缓冲器满信号通知外设停止发送数据中断请求信号中断请求信号请求CPU接收数据PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中断允许触发器15方式1输入引脚:B端口PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB数据选通信号数据选通信号表示外设已经准备好数据输入缓冲器满信号输入缓冲器满信号表示B口已经接收数据中断请求信号中断请求信号请求CPU接收数据中断允许触发器16方式1输入联络信号nSTB:选通信号,低电平有效:选通信号,低电平有效n由外设提供的输入信号,当其有效时,将输入设由外设提供的输入信号,当其有效时
11、,将输入设备送来的数据锁存至备送来的数据锁存至8255A的输入锁存器的输入锁存器nIBF:输入缓冲器满信号,高电平有效:输入缓冲器满信号,高电平有效n8255A输出的联络信号。当其有效时,表示数据输出的联络信号。当其有效时,表示数据已锁存在输入锁存器已锁存在输入锁存器nINTR:中断请求信号,高电平有效:中断请求信号,高电平有效n8255A输出的信号,可用于向输出的信号,可用于向CPU提出中断请求,提出中断请求,要求要求CPU读取外设数据读取外设数据n注意:注意:PC7、PC6可以用作数据传输(输入可以用作数据传输(输入/输出)。输出)。17方式1中断控制n8255A的中断由中断允许触发器的中
12、断由中断允许触发器INTE控制控制n置位允许中断,复位禁止中断nINTE没有外部引出脚。在没有外部引出脚。在A组和组和B组的控制组的控制电路中,分别设有中断允许触发器电路中,分别设有中断允许触发器INTE A和和INTE B,只有用软件才能使这两个触发,只有用软件才能使这两个触发器清器清0或置或置1。n对对INTE的置位的置位/复位操作由端口复位操作由端口C的对应位的对应位实现实现n端口A的INTEA对应PC4n端口B的INTEB对应PC2n特别注意:由于这两个触发器没有无外部输特别注意:由于这两个触发器没有无外部输出引脚,因此出引脚,因此PC4和和PC2脚上出现高电平或脚上出现高电平或低电平
13、信号时,并不会改变中断允许触发器低电平信号时,并不会改变中断允许触发器的状态。的状态。18方式1输出引脚:A端口外设响应信号外设响应信号表示外设已经接收到数据输出缓冲器满信号输出缓冲器满信号表示CPU已经输出了数据中断请求信号中断请求信号请求CPU再次输出数据PC6PC7PC3PA7PA0INTEAOBFAINTRAACKA中断允许触发器19方式1输出引脚:B端口PC2PC1PC0PB7PB0INTEBOBFBINTRBACKB外设响应信号外设响应信号表示外设已经接收到数据输出缓冲器满信号输出缓冲器满信号表示CPU已经输出了数据中断请求信号中断请求信号请求CPU再次输出数据中断允许触发器20方
14、式方式1输出联络信号输出联络信号nOBF#:输出缓冲器满信号,低有效:输出缓冲器满信号,低有效n8255A输出给外设的一个控制信号,当其有效时,输出给外设的一个控制信号,当其有效时,表示表示CPU已把数据输出给指定的端口,外设可以已把数据输出给指定的端口,外设可以取走取走nACK#:响应信号,低有效:响应信号,低有效n外设的响应信号,指示外设的响应信号,指示8255A的端口数据已由外的端口数据已由外设接受(设接受(“完成时态完成时态”!)nINTR:中断请求信号,高有效:中断请求信号,高有效n当输出设备已接受数据后,当输出设备已接受数据后,8255A输出此信号向输出此信号向CPU提出中断请求,
15、要求提出中断请求,要求CPU继续提供数据继续提供数据n对对INTE的置位的置位/复位操作由端口复位操作由端口C的对应位实现的对应位实现n端口A的INTEA对应PC6n端口B的INTEB对应PC2nPC4、PC5可以用作数据传输(输入可以用作数据传输(输入/输出)。输出)。21方式2:双向选通输入输出方式n方式方式2将方式将方式1的选通输入输出功能组合成一个双向的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据数据端口,可以发送数据和接收数据n只有只有端口端口A可以工作于方式可以工作于方式2,需要利用端口,需要利用端口C的的5个个信号线,其作用与方式信号线,其作用与方式1相同相同n
16、输入/输出数据都能锁存n方式方式2的数据的数据输入过程输入过程与方式与方式1的输入方式一样的输入方式一样n方式方式2的数据的数据输出过程输出过程与方式与方式1的输出方式有一点的输出方式有一点不同不同n数据输出时数据输出时8255A不是在不是在OBF#有效时向外设输出有效时向外设输出数据,而是在外设提供响应信号数据,而是在外设提供响应信号ACK时才送出数时才送出数据据22PC6PC7PC3PA7PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INTE1(输出用)用PC4设置INTE2(输入用)输入和输出中断通过或门输出INTRA信号CPUI/O设备设备
17、231.方式控制字242.C口按位置位口按位置位/复位控制字复位控制字252.端口端口C的说明的说明C端口被分成两个端口被分成两个4位端口,两个端口只能以方式位端口,两个端口只能以方式0工作,可分别选择输入或输出工作,可分别选择输入或输出n在控制上,在控制上,C端口上半部和端口上半部和A端口编为端口编为A组,组,C端端口下半部和口下半部和B端口编为端口编为B组组当当A和和B端口工作在方式端口工作在方式1或方式或方式2时,时,C端口的部分端口的部分或全部引脚将被征用,即被征用引脚的功能不由方或全部引脚将被征用,即被征用引脚的功能不由方式字定义,而是由式字定义,而是由A、B口的工作方式确定口的工作
18、方式确定n其余引脚仍可设定工作在方式其余引脚仍可设定工作在方式0262.端口端口C的说明的说明写端口写端口Cn对端口对端口C的数据输出有两种办法的数据输出有两种办法n通过端口通过端口C的的I/O地址地址:向:向C端口直接写入字节数端口直接写入字节数据。这一数据被写进据。这一数据被写进C端口的输出锁存器,并从端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效。输出引脚输出,但对设置为输入的引脚无效。n通过控制端口通过控制端口:向:向C端口写入端口写入“C口按位置位口按位置位/复复位控制字位控制字”,使,使C端口的某个引脚端口的某个引脚输出输出1或或0,或,或置位置位/复位内部的中断允许
19、触发器复位内部的中断允许触发器273.端口端口C的说明的说明读端口读端口Cn读取的读取的C端口数据有两种情况端口数据有两种情况n未被A和B端口征用的引脚n将从定义为输入的端口读到引脚输入的数据;将从定义为输入的端口读到引脚输入的数据;将从定义为输出的端口读到输出锁存器中的信将从定义为输出的端口读到输出锁存器中的信息,这一信息是息,这一信息是CPU前次送入的。前次送入的。n被A和B端口征用作为联络线的引脚n将读到反映将读到反映8255A状态的状态的状态字状态字。283.读写数据端口:示例读写数据端口:示例n利用利用8255A的输出锁存能力,可实现按位输的输出锁存能力,可实现按位输出控制出控制 n
20、例如,对输出端口例如,对输出端口B的的PB7位置位的程序段:位置位的程序段:mov dx,0fffah;B端口假设为端口假设为FFFAHin al,dx;读出读出B端口原输出内端口原输出内容容or al,80h;使使PB71out dx,al;输出新的内容输出新的内容29系统复位n8255A的的RESET输入端为高电平时,使输入端为高电平时,使8255A复位,所有的数据端口都被置成复位,所有的数据端口都被置成输入方输入方式式。n当复位信号撤除后,当复位信号撤除后,8255A继续保持复位时预继续保持复位时预置的输入方式。如果希望它已这种方式工作,置的输入方式。如果希望它已这种方式工作,就不用再另外进行初始化。就不用再另外进行初始化。308255A的应用n作为通用的并行接口电路芯片,作为通用的并行接口电路芯片,8255A具有广泛的具有广泛的应用应用n连接简易键盘连接简易键盘n驱动驱动LED数码管数码管n打印机接口电路打印机接口电路n
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。