微机原理第十一章并行接口芯片

上传人:j****9 文档编号:54795949 上传时间:2018-09-19 格式:PPT 页数:55 大小:691.50KB
返回 下载 相关 举报
微机原理第十一章并行接口芯片_第1页
第1页 / 共55页
微机原理第十一章并行接口芯片_第2页
第2页 / 共55页
微机原理第十一章并行接口芯片_第3页
第3页 / 共55页
微机原理第十一章并行接口芯片_第4页
第4页 / 共55页
微机原理第十一章并行接口芯片_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《微机原理第十一章并行接口芯片》由会员分享,可在线阅读,更多相关《微机原理第十一章并行接口芯片(55页珍藏版)》请在金锄头文库上搜索。

1、第十一章 可编程并行接口8255A,11.1并行接口的概述 11.2 可编程并行接口8255A 11.3 8255A的0方式及其应用 11.4 8255A的1方式及其应用 11.5 8255A的2方式及其应用,CPU与外设之间的信息传送都是通过接口电路来进行的。 计算机与外部设备、计算机与计算机之间交换信息称之为计算机通信,计算机通信可分为两大类:并行通信:8位或16位或32位数据同时传输, 速度快,信息率高,成本高 串行通信:一位一位数据传送(在一条线上顺序传送),成本低实现并行通信的接口就是并行接口。,11.1并行接口的概述,一、串行与并行通信,并行接口最基本的特点是在多根据数据线上以数据

2、字节(字)为单位与I/O设备或被控对象传送信息。 如: 打印机接口,A/D、D/A转换器接口,IEEE-488接口,开关量接口,控制设备接口等。 在并行接口中,除了少数据场合之外,一般都要求在接口与外设之间设置并行数据线的同时,至少还要设置两根握手(联线)信号线,以便进行互锁异步握手方式(即查询方式)的通信。 在并行接口中,8位或16位是一起行动的,因此,当采用并行接口与外设交换数据时,即使是只用到其中的一位,也是一次输入/输出8位或16位。 并行传送信息,不要求固定的格式,这与串行传送的数据格式的要求不同。,二、并行接口的特点,对于各种型号的CPU都有与其配套的并行接口芯片。如Intel公司

3、8255A(PPI),Zilog公司Z-80PIO,MC6820(PIO)等,它们的功能虽有差异,但工作原理基本相同。,11.2 可编程并行接口8255A,一、8255A的外部特性和内部结构,1.8255A的基本特性 具有两个8位(A口和B口)和两个4位(C口高/低4位)并行I/O端口的接口芯片。 能适应CPU与I/O接口之间的多种数据传送方式的要求。,PC口的使用比较特殊,除作数据口外,当工作在1方式和2方式时,它的大部分引脚被分配作专用联络信号;PC口可以进行按位控制;在CPU读取8255A状态时,PC口又作1,2方式的状态口用,等等。 可执行功能很强,内容丰富的命令(方式字和控制字)为用

4、户如何根据外界条件(I/O设备需要哪些信号线以及它能提供哪些状态线)来使用8255A构成多种接口电路,组成微机应用系统提供了灵活方便的编程环境。 8255芯片内部主要由控制寄存器、状态寄存器和数据寄器组成。,2.8255A的外部引线与内部结构8255A是一个单+5V电源供电,40个引脚的双列直插式组件,其外部引线如图所示。 (1)外部引脚 与系统总线的连接信号 面向数据总线的有:D0D7:双向数据线,用于CPU向8255A发送命令、数据和8255A向CPU回送状态、数据和8255A向CPU回送状态、数据。 面向地址总线的有:,8255A引脚,RD:读信号,低电平有效。 WR:写信号,低电平有效

5、。 RESET:复位信号,高电平有效。它清除控制寄存器并将8255A的A、B、C三个端口均置为输入方式;输入寄存器和状态寄存器被复位,并且屏蔽中断请求;24条面向外设信号线呈现高阻悬浮状态。,与外部设备的连接信号PA0PA7:端口A的输入/输出线。PB0PB7:端口B的输入/输出线。PC0PC7:端口C的输入/输出线。这24根信号线均可用来连接I/O设备和传送信息。其中,A口和B口只作输入/输出的数据口用,尽管有时也利用它们从I/O设备读取一些状态信号,如打印机的“忙”(Busy)状态信号、A/D转换器的“转换结束”(EOC)状态信号,但对A口和B口来说,都是作8255A的数据口读入,而不是作

6、8255A的状态口读入的。,C口的作用与8255A的工作方式有关,它除了作数据口以外,还有其他用途,故C口的使用比较特殊,单独介绍如下:a.作数据口。b.作状态口。c.作专用(固定)联络(握手)信号线。d.作按位控制用。(2)内部结构 8255A的内部结构如图所示。它由以下4个部分组成。, 数据总线缓冲器。这是一个三态双向8位缓冲器,它是8255A与CPU系统数据总线的接口。 读/写控制逻辑。读/写控制逻辑由读信号RD、写信号WR、选片信号CS以及端口选择信号A1A0等组成。 输入/输出端口A、B、C。8255A包括3个8位输入输出端口(port)。每个端口都有一个数据输入寄存器和一个数据输出

7、寄存器。 A组和B组控制电路。控制A、B和C三个端口的工作方式。,表11.1 8255A基本操作与端口地址,二、8255A的编程命令 1.方式命令 作用:指定8255A的工作方式及其方式下3个并行端口(PA、PB、PC)的功能,是作输入还是作输出。 格式:8位,其中最高位是特征位,一定要写1,其余各位定义如下,应根据用户的设计要求填写1或0。,例1:要把A口指定为1方式,输入,C口上半部为输出;B组指定为0方式,输出,C口下半部定为输入,则工作方式命令代码是:10110001B或B1H。若将此命令代码写到8255A的命令寄存器,即实现了对8255A工作方式及端口功能的指定,或者说完成了对825

8、5A的初始化。初始化的程序段为:MOV DX,203H ;8255A命令口地址MOV AL,0B1H ;初始化命令OUT DX,AL ;送到命令口,2.按位置位/复位命令 作用:指定PC口的某一位(某一个引脚)输出高平或低电平。 格式:8位,其中最高位是特征位,一定要写0,其余各位的定义如下,应根据用户的设计要求填写1或0.,例2:若要把C口的PC2引脚置成高电平输出,则命令字应该为00000101B或05H。将该命令的代码写入8255A的命令寄存器,就会使得从PC口的PC2引脚输出高电平,其程序段为:MOV DX,203H ;8255A命令口地址MOV AL,05H ;使PC2=1的命令字O

9、UT DX,AL ;送到命令口如果要使引脚PC2输出低电位,则程序段为:MOV DX,203H ;8255A命令口地址MOV AL,04H ;使PC2=0的命令字OUT DX,AL ;送到命令口,利用C口的按位控制特性还可以产生、负脉冲或方波输出,对外设进行控制。 例3:利用8255A的PC7产生负脉冲,作打印机接口电路的数据选通信号,其程序段为:MOV DX,203H ;8255A命令口MOV AL,00001110B ;置PC7=0OUT DX,ALNOP ;维持低电平NOP MOV AL,00001111B ;置PC7=1OUT DX,AL,3.关于两个命令的讨论 方式命令是对8255A

10、的3个端口的工作方式及功能进行指定,即进行初始化,初始工作要在使用8255A之前做。 按位置位/复位命令只是对PC口的输出进行控制,使用它产不破坏已经建立的3种工作方式,而是对它们实现动态控制的一种支持。它可放在初始化程序以后的任何地方。 两个命令的最高位(D7)都分配作了特征位,之所以要设置特征位,是为了识别两个不同的命令。 按位置位/复位的命令代码只能写入命令口。,4.A口和B口另一个使用方法A口、B口也可以按位输出高低电平,但是,它与前面的按位置位/复位命令有本质的差别,并且实现的方法也不同,。C口按位输出是以送数据到A口、B口来实现的。其具体作法是:若要使某一位置高电平,则先对端口进行

11、读操作,将读入的原输出值,“或”上一个字节,字节中使该位为1,其他位为0,然后再送到同一端口,即可使该位为0,然后再送到同一端口,即可使该位置位。,例4: 若要使PA7位输出高/低电平,则用下列程序段:使PA7输出高电平.MOV DX,200H ;PA数据口地址IN AL,DX ;读入A口原输出内容MOV AH,AL ;保存原输出内容OR AL,80H ;使PA7=1OUT DX,AL ;输出PA7MOV AL,AH ;恢复原输出内容OUT DX,AL,使PA7输出低电平 MOV DX,200H ; A口地址 IN AL,DX ;读入端口原输出值 MOV AH,AL ;保存原输出值 AND A

12、L,7FH ;使PA7=0 OUT DX,AL ;输出PA7 MOV AL,AH ;恢复原输出内容 OUT DX,AL,三、8255A的工作方式 8255A的工作方式与端口有关,PA口有三种方式(0方式、1方式、2方式),PB口和PC口只有两种方式(0方式、1方式)。,11.3 8255A的0方式及其应用,一、特点 0方式是一种基本输入/输出工作方式。通常不用联络信号,或不使用固定的联络信号。基本I/O方式是指查询方式传送,也包括无条件传送。 在0方式下,彼此独立的两个8位和两个4位并行口,都能被指定作为输入或者输出用,共有16种不同的使用状态。,在0方式下不设置专用联络信号线,需要联络时,可

13、由用户任意指定C口中的哪 根线完成某种联络功能,这与后面要讨论的在1方式、2方式下设置固定的专用联络信号线不同。 是单向I/O,一次初始化只能指定端口(PA、PB和PC)作输入或输出,不能指定端口同时既作输入又作输出。二、并行打印机接口设计 1.要求为某应用系统配置一个并行打印机接口,并且通过接口CPU采用查询方式把存放在BUF缓冲区的256个字(ASCII码)送去打印。,2.分析由于打印接口直接面向的对象是打印机接口标准,而不是打印机本身,因此打印机接口要按照接口标准的要求进行设计。有关打印机接口标准Centronics的信号线定义和工作时序如下 。,过程:采用查询方式时,打印机与CPU之间

14、传送数据的过程是: 首先查询BUSY。若BUSY=1,打印机忙,则等待;若BUSY=0,打印机不忙,则送数据。 通过并行接口把数据送给标准插座DATA BIT1DATA BIT8 数据线上,此时数据并未送入打印机。 再送出一个数据选通信号DATA STROBE-(负脉冲)给 标准插座的1号引脚,把数据线上的数据打入到打印机的内部缓冲器。 打印机在收到数据后,通过插座的11号引肢发出“忙”(BUSY=1)信号,表明打印机正在处理输入的数据。 最后在10号引脚上送出一个回答信号ACK-给主机,表示上一个字符已经处理完毕。,3.设计 接口电路的设计包括硬件接口电路和软件驱动程序两部分。 打印机接口电

15、路。打印机接口电路原理框图如图所示。该电路的设计思路是:按照Centronicss标准对打印机接口信号线的定义,最基本的信号线需要8根数据线(DATABIT18),1根控制线(STB),1根状态线(BUSY)和1根地线。选用8255A的PA口作数据口输出8位打印数据,工作方式为0方式。 接口驱动程序。其程序流程图如右图所示。驱动程序的程序段如下:,CODE SEGMENT ASSUME CS:CODE,DS:CODE ORG100H START: MOV AX,CODEMOV CS,AXMOV DS,AXMOV DX,203H ;8255A命令口MOV AL,10000001B ;工作方式字O

16、UT DX,AL ;(A口0方式,输出, C4C7输出,C0C3输入),MOV AL,00001111B ;PC7位置高,使STB-=1 OUT DX,AL MOV SI, OFFSET BUF ;打印字符内存首地址 MOV CX,OFFH ;打印字符个数 MOV DX,202H ;PC口地址 IN AL,DX ;查BUSY=0?(PC2=0) AND AL,04H ;00000100B JNZ L ;忙,则等待;不忙,则向A口送数 MOV DX,200H ;PA口地址 MOV AL,SI ;从内存取数 OUT DX,AL ;送数据到A口 MOV AL,203H ;8255A命令口 MOV AL,00001110B ;置STB-信号为低(PC7=0),

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

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