8.2并行输入输出系统

上传人:ldj****22 文档编号:53548146 上传时间:2018-09-02 格式:PPT 页数:58 大小:909.50KB
返回 下载 相关 举报
8.2并行输入输出系统_第1页
第1页 / 共58页
8.2并行输入输出系统_第2页
第2页 / 共58页
8.2并行输入输出系统_第3页
第3页 / 共58页
8.2并行输入输出系统_第4页
第4页 / 共58页
8.2并行输入输出系统_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《8.2并行输入输出系统》由会员分享,可在线阅读,更多相关《8.2并行输入输出系统(58页珍藏版)》请在金锄头文库上搜索。

1、Page 1,8.2 并行输入/输出系统,8.2.1 并行接口系统概述 8.2.2 可编程并行接口芯片内部结构和外部引脚 8.2.3 可编程并行接口芯片使用的控制字 8.2.4 可编程并行接口芯片的工作方式 8.2.5 可编程并行接口芯片8255A应用举例,8.2.1,Page 2,8.2.1 并行接口系统概述,外部设备和主机之间进行数据交换,称为“数据通信”。,传输方式,串行通信,并行通信,串行通信,Page 3,并行通信,Page 4,并行通信特点适用场合,并行通信:就是把数据的各比特位在相应数目的信号线上同时进行传输,比如传输一个字节时,使用8位数据线,各个数据位同时从发送端出发,也同时

2、到达接收端。,Page 5,主要用于传输速率要求较高,而传输距离较短的场合。,并行通 信特点,优点:速度快,信息率高。,缺点:随着通信距离延长,线路成本不断上升,电磁干扰持续加大。,适用 场合,在一般计算机系统中: CPU与存储器之间 CPU与并行输入输出设备之间,并行接口的特点,Page 6,并行接口的特点(4点),1. 以字节或字为单位传送信息 2. 并行接口要有联络信号 3. 即使传一位信息,也要进行8/16位的传送 4. 传送信息不要求有固定的格式,8.2.1 并行I/O接口,Page 7,并行I/O接口,CPU,并行接口,数据总线,读信号,写信号,复位,中断请求,地址 译码,控制寄存

3、器,输入寄存器,输出寄存器,状态寄存器,输入 设备,输出 设备,数据输出,数据输出应答,数据输出选通,数据输入,数据输入应答,数据输入选通,并行接口内部组成及与外设连接示意图,Page 8,并行输入输出的控制方式,1. 并行接口的输入过程,CPU,并行接口,数据总线,读信号,写信号,复位,中断请求,地址 译码,控制寄存器,输入寄存器,输出寄存器,状态寄存器,输入 设备,输出 设备,数据输出,数据输出应答,数据输出选通,数据输入,数据输入应答,数据输入选通,并行接口内部组成及与外设连接示意图,2.输出过程,Page 9,2. 并行接口的输出过程,CPU,并行接口,数据总线,读信号,写信号,复位,

4、中断请求,地址 译码,控制寄存器,输入寄存器,输出寄存器,状态寄存器,输入 设备,输出 设备,数据输出,数据输出应答,数据输出选通,数据输入,数据输入应答,数据输入选通,并行接口内部组成及与外设连接示意图,8.1.3 并行接口标准,Page 10,并行接口标准,1. Centronics标准,DB25,带孔,带针,数据只在一个方向上传送,从电脑到打印机或是其他设备。 在传输距离为2米时,最大传输速率为10KBps。,标准引脚信号,Page 11,Centronics标准引脚信号,8.2.2 8255A,Page 12,8.2.2 8255 A的内部结构和外部引脚,一、逻辑结构,各部分功能,Pa

5、ge 13,1.数据总线缓冲器 双向、三态; 用于CPU与8255A传送数据的接口。 2.读/写控制逻辑 负责管理8255A数据传送的过程。 3.数据端口A、B、C 三个独立的I/O端口 每个端口都具有两个寄存器: 一个数据输入寄存器(具有三态缓冲功能) 一个数据输出寄存器(具有锁存功能),C口,Page 14,C口比较特殊,有4个作用: (1)作数据口: 可作8位的数据口; 可分为高、低四位: 高4位PC4PC7与A口一起组成A组 低4位PC0PC3与B口一起组成B组 (2)作状态口: 8255A工作在方式1、2下,有固定的状态字,需要从C口读出。,4.AB组控制电路,Page 15,(3)

6、作专用的联络信号: 在方式1、2C口的大部分引脚被分配了固定的联络线 (4)作按位控制用 C口的8个引脚可单独进行位操作,使其置1或置0,4.AB组控制电路,Page 16,4.A组和B组的控制电路 作用(2个): (1)控制A、B、C三个端口的工作方式: A组控制电路控制A口和C口的高4位; B组控制电路控制B口和C口的低4位。 (2)根据编程命令对端口C指定位进行置位/复位。,二.引脚功能,Page 17,二、8255A的引脚功能,Page 18,1面向CPU的引脚信号及功能,D0-D7: 8位,双向,三态数据线, 用来与系统数据总线相连;,RESET: 复位信号, 高电平有效,输入, 用

7、来清除8255A的内部寄存器,并置A口,B口,C口均为输入方式;,继续,Page 19,:片选,输入,决定芯片是否被选中;,: 读信号,输入, 控制8255A将数据或状态信息送给CPU;,: 写信号,输入, 控制CPU将数据或控制信息送到8255A;,A1,A0:内部端口地址选择,输入。,操作功能表,Page 20,2.面向外设的引脚,Page 21,2面向外设的引脚信号及功能,PA0PA7:A口数据信号,用来连接外设; PB0PB7:B口数据信号,用来连接外设;PC0PC7:C口数据信号,用来连接外设或者作为控制信号。,三.编程命令字,Page 22,8.2.3 8255A的控制字,1. 控

8、制命令字 作用:指定8255A的工作方式及其方式下3个并行端口的功能(作输入还是输出); 格式:,例子,Page 23,【例81】 某系统要求使用8255A的端口A以方式0输入,端口B以方式0输出,端口C的高4位以方式0输出,端口C的高4位以方式0输入。 初始化程序为: MOV AL,1001 0001B OUT CTRL_PORT,AL,2.命令字2,Page 24,2.按位置位/复位命令字: 作用:对PC口指定的位进行置位/复位操作 格式:,例子,Page 25,【例】 利用8255A的PC7产生负脉冲,作打印机接口电路的数据选通信号,设8255A命令口地址为303H,PC7平时为高电平。

9、实现该功能的程序段为: MOV DX,303H MOV AL,0000 1111B ; 置PC71 OUT DX,AL MOV AL,0000 1110B ; 置PC70 OUT DX,AL NOP ;维持低电平 MOV AL,0000 1111B ; 置PC71 OUT DX,AL,Page 26,方式0简单输入/输出;A,B,C三个端口均可使用; 方式1选通输入/输出;A ,B两个端口均可使用; 方式2双向输入/输出;只有A端口可以使用。,三 种 工 作 方 式,工作方式的选择可通过向控制端口写入控制字来实现。,8.2.4 8255A的工作方式,使用8255A,3个端口在进行工作时,若工作

10、方式不同,8255A引脚的信号功能定义不一样,其硬件连接和软件编程也不一样。而8255A的工作方式与端口有关。,Page 27,1. 方式0,基本的输入/输出方式; 用于无条件传送和查询传送; 通常不用联络信号,或不使用固定的联络信号(可用三个端口的任何一位作为查询信号); 单向I/O端口:一次初始化,只能指定某端口为输入或输出,不能同时作输入和输出。,例子,Page 28,【例83】利用8255A的A口方式0与微型打印机相连,将内存缓冲区BUFF中的字符打印输出。 工作流程是: 主机将要打印的数据送上数据线,然后发选通信号。 打印机将数据读入,同时使BUSY线为高,通知主机停止送数。这时,打

11、印机内部对读入的数据进行处理。 处理完以后,使BUSY变为低电平,通知主机可以发下一个数据。,硬件连接图,Page 29,打印机连线图,说明,Page 30,说明: 由PC0充当打印机的选通信号,通过对PC0的置位/复位来产生选通。同时,由PC7来接收打印机发出的“BUSY”信号作为能否输出的查询。 8255A的控制字为:10001000 B 即88H,A口方式0,输出;C口高4位方式0输入,低4位方式0输出。 PC0置位: 00000001 即 01H PC0复位:00000000 即 00H 8255A的4个口地址分别为:00H,01H,02H,03H。,程序,Page 31,继续,Pag

12、e 32,继续,CMP AL,$ ;是否结束符 JZ DONE ; 是则输出回车OUT 00H,AL ;不是结束符,则从A口输出MOV AL,00H ;产生选通信号OUT 03H, ALMOV AL, 01HOUT 03H,ALINC SI ;修改指针,指向下一个字符JMP WAIT DONE: MOV AL,0DHOUT 00H,AL ;输出回车符MOV AL, 00HOUT 03H,ALMOV AL, 01HOUT 03H,AL ;产生选通,Page 33,2.方式1,Page 34,2. 方式1,是一种选通I/O方式; 用于查询传送和中断传送; 需要设置专用联络线; A口和B口为两个独立

13、的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出; C口大部分引脚做专用的联络信号: 6位分别用作A口B口固定的联络线; 其余2位仍可工作在方式0,用作I/O。 I/O过程中有固定的状态字。,联络信号的定义,Page 35,INTEA 由PC4置位/复位,INTEB 由PC2置位/复位,Page 36,方式1联络信号线的定义,1.用作输入时,信号线的定义:外设给8255A的输入选通信号,低电平有效; 用来将外部输入的数据送入8255A的A口或B口的输入(缓冲)寄存器中。 IBF:是8255A给外设的回答信号,高电平有效; 表示输入缓冲器满(说明8255A已经收到外设的数据

14、,但未被CPU取走)。 INTR:8255A给CPU的中断请求信号,高电平有效; 请求CPU从8255A读数。,Page 37,图8-18 方式1选通输入时序,Page 38,使INTR引脚有效的条件(3个): #STB=1 (数据已经可靠送完) IBF1(缓冲区有数据) INTE1(允许此端口提出的中断)此位需要编程,用按位置位/复位命令置1或清0,从而对相应端口进行开/关中断。 MOV DX,303H MOV AL,0000 1001B OUT DX,AL ;INTEA=1,Page 39,状态字,2.方式1输出,INTEA 由PC6置位/复位,INTEB 由PC2置位/复位,Page 4

15、0,用作输出时,信号线的定义:是8255A给外设的输出缓冲器已满信号,低电平有效; 表示CPU已经将数据写到8255A输出端口,通知外设来取数。:是外设给8255A的回答信号,低电平有效; 表示外设已经从8255A端口接收了数据。 INTR:8255A给CPU的中断请求信号,高电平有效; 请求CPU向8255A写数; INTR有效的条件(4个),继续,Page 41,使INTR引脚有效的条件(4个): #WR1(已经写完一个数据) #OBF=1 (输出缓冲器已经变空) #ACK1(回答信号已经结束) INTE1(允许此端口提出的中断),Page 42,3. 方式2,是一种双向选通I/O方式;

16、用于查询传送和中断传送; 只有A口有此方式; C口的高5位作专用的联络线; 联络信号线和状态字是方式1输入/输出的综合。,联络信号,Page 43,图8-22 方式2时端口的状态,Page 44,1.简单开关接口电路【例】:在某一系统中,有8个开关K7K0,要求不断检测它们的通断状态,并通过发光二极管LED7LED0显示出来。开关断开,相应的LED点亮;开关合上,LED熄灭。选用8086CPU,8255A和译码器等芯片,构成应用电路。如图8-24所示编写完成此功能的程序段。,8.2.5 8255A应用举例,Page 45,图8-24 读开关状态和显示接口,Page 46,分析:由图可见,8255A的A口作输入口,8个开关K7K0分别接PA7PA0。B口为输出口,PB7PB0分别接显示器LED7LED0。8255A的数据线D7D0与8086的低8位数据总线D7D0相连,这时8255A的4个口地址都应为偶地址,A0必须总等于0,用地址线的A2、A1来选择片内的4个端口。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号