1 / 19

第 6 章(二) 并行接口技术

第 6 章(二) 并行接口技术. 并行接口基本概念 8255A 的内部结构 8255A 的控制字 8255A 的编程及应用. 并行接口概念. 并行接口 又简称为“ 并口 ”,是一种增强了的 双向并行传输接口 。目前,计算机中的并行接口主要作为 打印机端口 。所谓“并行”,是指 8 位数据同时通过并行线进行传送,这样数据传送速度大大提高 。. AB. DB. CB. 外 部 设 备. 数据 8. CPU. 并行接口. 握手信息. 存储器. 图 1 :并行接口电路位置示意图. 8255A 可编程并行接口芯片.

aoife
Download Presentation

第 6 章(二) 并行接口技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第6章(二) 并行接口技术 • 并行接口基本概念 • 8255A的内部结构 • 8255A的控制字 • 8255A的编程及应用

  2. 并行接口概念 并行接口又简称为“并口”,是一种增强了的双向并行传输接口。目前,计算机中的并行接口主要作为打印机端口 。所谓“并行”,是指8位数据同时通过并行线进行传送,这样数据传送速度大大提高 。

  3. AB DB CB 外 部 设 备 数据8 CPU 并行接口 握手信息 存储器 图1:并行接口电路位置示意图

  4. 8255A可编程并行接口芯片 8255A是Intel公司生产的通用8位并行输入/输出 接口芯片,具有可编程性。 图2:8255A芯片图

  5. 8255A引脚介绍 D0-D7:数据线 PA0-PA7:A口8位数据输入输出 PB0-PB7:B口8位数据输入输出 PC0-PC7:C口8位数据输入输出 CS:片选信号,低电平有效 WR:写控制信号 RD:读控制信号 A0、A1:端口选择线 RESET:复位信号,高电平有效 8255A

  6. 8255A引脚介绍 A1、A0、读写控制RD、WR和片选信号CS组合后,进行寻址实现相应的操作,如下表所示:

  7. PA0-PA7 A组 PC4-PC7 D0-D7 A口 C口 RD 8255A WR CS A0 A1 PC0-PC4 B组 PB0-PB7 C口 RESET B口 8255A功能示意图

  8. 8255A内部结构 与 外 设 端 接 口 信 号 与 CPU 端 接 口 信 号

  9. 8255A内部结构 • 1.数据总线缓冲器 • 缓冲器宽度为8位,直接挂在PC机8位数据总线D0-D7上。8255A编程时的各种命令字或被读取的状态字,也是通过其传送的。 2.读写控制逻辑 • CPU通过输入和输出指令,将地址信息和控制信息送至该部件,使其向A组和B组发出控制信号。 3.A组和B组控制部件 • A组控制部件:控制A口及C口的高4位 • B组控制部件:控制B口及C口的低4位 • 接受读写控制逻辑命令,从数据总线接收控制字。

  10. 8255A内部结构 • 4.数据端口A、B、C • A口、B口和C口均可作为输入输出口。 • C口除作为输入和输出口外,还可做控制口。C口高4位配合A口工作,低4位配合B口工作,分别用于输出控制信号和输入状态信号。 10

  11. 8255A的工作方式及控制字 • 8255A芯片有三种工作方式: • 方式0:基本输入/输出方式 • 方式1:选通输入/输出方式 • 方式2:选通双向输入/输出方式 • 可通过对芯片的编程来指定各端口的工作方式,即对8255A芯片内的控制寄存器装入不同的控制字,以决定其工作方式。 11

  12. B组 方式选择 1: 方式1 0:方式0 B口 1: 输入,0:输出 C口低4位: 1: 输入,0:输出 A组 C口高4位: 1: 输入,0:输出 A口 1: 输入,0:输出 方式选择 00: 方式0 01:方式1 1×:方式2 8255A的工作方式控制字 1.工作方式控制字 格式如下图所示: 标志位 =1 12

  13. 8255A的工作方式控制字 例1.A组工作在方式1,且A口作为输入口,C口高4位作为输出口;B组工作在方式0,且B口指定为输出,C口低4位为输入;设8255A端口地址为4F0H-4F3H。 则:对应的方式控制字是什么? 写出初始化程序。 13

  14. 8255A的工作方式控制字 例1解答: 对应的方式控制字是 B1H。 初始化程序如下: MOV DX,4F3H MOV AL,0B1H OUT DX,AL 14

  15. 1=置位 0=复位 未用位(一般取0) 8255A的控制字 2.按位 置位/复位 控制字 当控制字寄存器D7=0时,控制字用来将C口某位置位或复位。 标志位 =0 15

  16. 8255A的工作方式控制字 • C口中的任一位均具有位操作功能,若要通过C口的某一位输出一个脉冲时,只要将相应的控制字送入控制字寄存器即可。 • 例2:将PC3产生一个脉冲信号。 程序如下: MOV AL,07H MOV DX,4F3H OUT DX,AL MOV AL,06H OUT DX,AL 16

  17. 8255A的应用 • 【例3】8255A作为并行打印机的接口。 要求:将8255A的A口连接一个并行打印机,工作在方式1,数据输出,采用查询方式将内存输出缓冲区BUFFER中的100H个字节数据送打印机输出,设计接口电路,编制打印驱动程序。 17

  18. 打印驱动程序编制如下: DATASEGMENTBUFFERDB100H DUP(?) DATAENDS CODESEGMENT ASSUMCS:CODE, DS:DATASTART: MOVAX, DATAMOVDS, AXMOVAL, 0A8H; A口方式1输出, PC4输入MOVDX, 0FFE3H; 控制口地址OUTDX, AL; 控制字写入控制口MOVCX, 100H; 传送字节数送CX寄存器MOVSI, OFFSET BUFFER ; 数据缓冲区首地址送SI寄存器L1:MOVDX, 0FFE2H; C口地址INAL, DX; 读C口内容, 查询BUSY信号ANDAL, 10H; 保留PC4状态, 判断BUSY=1?JNZL1; BUSY=1, 打印机处于忙状态, 应该继续查询MOVAL, [SI]; BUSY=0, 打印机处于空闲状态, 可以输出数据MOVDX, 0FFE0H; A口地址OUTDX, AL; 输出数据INCSI; 修改数据缓冲区地址LOOPL1; 数据未传送完毕, 继续传送MOVAX,; 数据传送完毕, 返回DOSINT21H CODEENDSENDSTART

  19. 常见的I/O接口 • Intel 8259A 中断控制器 • Intel 8237A DMA控制器 • Intel 8255A 并行控制器 • Intel 8253A/8254 计时/定数器

More Related