1、八章 并行通信和8255A第八章 并行通信和8255A第一节 并行通信基础知识一、并行通信和并行接口所谓并行通信是指数据通过多条线路同时进行传送;并行接口是实现CPU与外设之间并行通讯的接口。并行通信速度快,适宜短距离传送。二、并行接口的内部组成由控制寄存器、状态寄存器、输入缓冲数据寄存器、输出锁存数据寄存器三、并行接口输入、输出数据的过程1、输入过程外设数据准备好-数据送入接口,发出“STB”信号-状态位置“1”,发出中断请求信号-CPU读取数据,状态位置“0”。2、输出过程缓冲器为空-状态位置“1”,发出中断请求信号-CPU向端口送数据,状态位置“0”。-数据送入外设,发出READY第二节
2、 并行接口芯片8255A一、内部基本结构1、内部有三个数据端口:A口、B口、C口,用以输入、输出数据,其中C口作用较为特殊,可以作为控制口。2、A口控制部件:控制A口和C口高四位的读写3、B口控制部件:控制B口和C口低四位的读写。4、读写控制逻辑:用以接收系统的控制信号,负责对A、B、C口进行控制管理。5、数据总线缓冲器:用以暂时存放CPU与外设之间传送的信息。(状态、控制、数据)二、8255A的引脚信号共有40个引脚,分别为:1、与外设连接的引脚信号:即A、B、C三个端口。PA0PA7:作为A口与外设间的传递数据通道PB0PB7:作为B口与外设间的传递数据通道PC0PC7:可以作为C口与外设
3、间的传递数据通道,也可以作为A口或B口的控制、联络信号2、与CPU连接的引脚信号:(1)RESET:有效时8255A内部寄存器清零,A、B、C口为输入状态(2)CS:片选信号,地址译码器产生(A15A2)(3)A0A1:端口选择信号,从00到11分别选中A、B、C、控制端口(只能写入,不能读出)。三、8255A的控制字有两个控制字,分别是方式控制字和C口按位置、复位控制字。1、方式控制字D7D6D5D4D3D2D1D01A组电路控制 B组电路控制D7=1,该控制字标志。D3D6,A组电路控制。其中,D6D5用以A口的方式选择,00到10对应A口的方式0到方式2,11无效状态;D4用以决定A口工
4、作于输入或输出状态,1入0出;D3用以决定C口高四位工作于输入或输出状态,1入0出。D2D0,B组电路控制。其中,D2用以B口的方式选择,01对应B口的方式0到方式1;D1用以决定B口工作于输入或输出状态,1入0出;D0用以决定C口低四位工作于输入或输出状态,1入0出。该控制字从控制端口写入。例:如控制字82H,说明设置情况。2、C口按位置、复位控制字用以设置C口某位输出高电平还是低电平D7D6D5D4D3D2D1D001/0无效位 C口位的选择 置/复位D7=0,该控制字标志。D4D6,无效位。D3D1,D3D1的顺序排列组合用以表明选择C口的哪一个二进制位。D0,决定对选中的二进制位是置位
5、还是复位操作,“1”,置位;“0”,复位。例:将C口的PC2置1,写出控制字。注意: 当需要用C口的某位作为外设控制、联络信号时,则应该设置该控制字。 该控制字一次只能对一位二进制位设置。 必须从控制端口写入。 四、8255A的工作方式8255A的工作方式有0、1、2三种,但并不是每一个端口都有这三种工作方式。1、方式0是一种基本的输入输出方式,A、B、C三个口均可以工作在该种方式。(1)特点工作于此种方式端口无固定应答线,与其他的端口无必然联系,可作为独立的数据输入输出端口。适用于无条件传送方式和查询/条件传送方式。 无条件方式:CPU和I/O间可以同步,可以设置某端口工作于方式0 查询方式
6、:A、B口可以作为独立数据端口,C口作为联络控制信号,此时C口高四位与低四位的输入输出状态相反。2、方式1 选通的输入输出方式,A口和B口拥有方式1(1)特点工作在方式1的A口和B口,8255A为它指定C口的某些位作为控制、状态信号(2)该方式输入端口的一些重要联络线(A)STB:选通信号,输入信号,低电平有效,以表示数据表示好(B)IBF:输出信号,高电平有效,表示输入缓冲器满(C)INTR:输出信号,高电平有效,接口芯片数据准备好,CPU准备读取(D)INTE:中断允许标志,为1时允许中断注意:IBF、STB、INTE均有效才能发出INTRSTB时,IBF有效,RD时,IBF失效A口输入P
7、C3INTRAPC4STBAPC5IBFAB口输入PC0INTRBPC1IBFA PC2STBA时序注意以上几根联络线的情况(3)该方式输出端口的一些重要联络线(A)OBF:输出信号,低电平有效,表示输出数据准备好(B)ACK:输出信号,低电平有效,以示外设接收到数据(C)INTR:输出信号,高电平有效,表示8255A端口准备好(D)INTE:中断允许标志,为1时允许中断注意:ACK、OBF、INTE均有效才能发出INTRACK时,OBF失效,WR时,IBF有效A口输出PC5INTRAPC6ACKAPC7OBFAB口输入PC0INTRBPC1OBFA PC2ACKA时序注意以上几根联络线的情况
8、(4)方式1适用场合查询数据传送方式(测试C1/C5/C7)中断数据传送方式(设置INTE,1至C2/C6/C8)3、方式2双向输入输出方式,仅有A口拥有方式2(1)特点双向数据传送,8255A为A口提供的控制状态为:C3、C4、C5、C6、C7(2)该方式A口的一些重要联络线(A)OBF-PC7(B)IBFPC5(C)STBPC4(D)ACKPC6(E)INTRPC3(F)INTE1输入中断允许标志,C4设置(G)INTE2-输出中断允许标志,C6设置注意:ACK、OBF、INTE2均有效才能发出INTR(输出)STB、IBF、INTE1均有效才能发出INTR(输入)(3)方式2适用场合具有双向数据输入、输出的外设(A)查询数据传送方式(测试C5/C7,5入7出)(B)中断数据传送方式(设置INTE,1至INTE1/INTE2)(4)方式2时其他端口的情况(A)其他端口不用11XXXXXX(B)B口在方式011XXX01/01/0(C)B口在方式111XXX11/0X五、8255A的应用1、查询方式初始化读入8255A状态位(C1/C5/C7)-Ci为0时继续读状态位,为1A口或B口读写数据-处理完则结束,未完再读状态位2、中断方式主程序:初始化设置INTE为1-STI等待中断服务程序:保护现场设置INTE为00至C2/C4/C6STI与8255A交换数据CLI恢复现场IRET
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1