9.第九章 可编程外围接口芯片8255A及其应用1

上传人:野鹰 文档编号:2871504 上传时间:2017-07-28 格式:PPT 页数:47 大小:360KB
返回 下载 相关 举报
9.第九章 可编程外围接口芯片8255A及其应用1_第1页
第1页 / 共47页
9.第九章 可编程外围接口芯片8255A及其应用1_第2页
第2页 / 共47页
9.第九章 可编程外围接口芯片8255A及其应用1_第3页
第3页 / 共47页
9.第九章 可编程外围接口芯片8255A及其应用1_第4页
第4页 / 共47页
9.第九章 可编程外围接口芯片8255A及其应用1_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《9.第九章 可编程外围接口芯片8255A及其应用1》由会员分享,可在线阅读,更多相关《9.第九章 可编程外围接口芯片8255A及其应用1(47页珍藏版)》请在金锄头文库上搜索。

1、第 9 章,可编程外围接口芯片8255A及其应用,微机与I/O设备的接口按照数据传送方式的不同,可分为并行接口与串行接口两种。 并行接口一次传送多位数据,即在CPU与I/O设备之间传送信息的数据单位一般为“字节”或“字”,需要使用多根数据线,如打印机接口等 在并行接口中,除了少数场合(无条件传送)之外,一般都要求在接口与外设之间设置并行数据线的同时,至少还要设置两根握手(联络)信号线,以便进行互锁异步握手方式(即查询方式)的通信。 并行接口的优点是传输速率高,但由于需要多根数据线,不适合长距离数据传输,一般用于近距离传送的场合。 并行接口电路有不可编程接口和可编程接口之分。可编程接口可由用户根

2、据需要,编制相应的接口控制程序,选择接口的工作方式及功能。由于可编程接口具使用灵活、功能强的特点,在微机系统中应用广泛。,9.1 8255A的工作原理,Intel 8255A是一种通用的可编程并行I/O接口芯片,又称为“可编程外设接口芯片(Programmable Peripheral Interface PPI)” 具有多种功能的可编程并行接口电路芯片最基本的接口电路:三态缓冲器和锁存器与CPU间、与外设间的接口电路:状态寄存器和控制寄存器还有端口的译码和控制电路、中断控制电路分3个端口,共24个外设引脚共三种输入输出工作方式,一、8255A的内部结构和功能,1. 外设数据端口,端口A:PA

3、0PA7A组,支持工作方式0、1、2, 常作数据端口,功能最强大端口B:PB0PB7B组,支持工作方式0、1, 常作数据端口端口C:PC0PC7仅支持工作方式0A组控制高4位PC4PC7B组控制低4位PC0PC3可作数据、状态和控制端口分两个4位,每位可独立操作控制最灵活,最难掌握,2.8255A基本操作,二、8255A的控制字1.方式选择控制字,方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路,标志位,00= A口方式001= A口方式11X= A

4、口方式2,1=A口输入0=A口输出,1=C口高4位输入0=C口高4位输出,0= B口方式01= B口方式1,1=B口输入0=B口输出,1=C口低4位输入0=C口低4位输出,方式选择控制格式字,2.C口置位/复位控制字,C口置位复位控制字的功能有两个:一是用于对外设的控制。利用这一功能,可使C口某一位输出一个开关量或一个脉冲,作为外设的启动或停止信号。二是可用于设置方式1和方式2的中断允许。此时,C口置位/复位控制字不影响对应的引脚状态,只是起到设置INTE、开关8255A中断的作用。C口置位复位控制字写入控制端口。,标志位,任意值,000:选择PC0001:选择PC1:111:选择PC7,1:

5、置位0:复位,置位/复位控制字格式,MOV AL, 00001010BOUT 63H, ALMOV AL, 00001011BOUT 63H, ALMOV AL, 00001010BOUT 63H, AL,PA7:PA0PB7:PB0PC7:PC5:PC0,例:方式0下:,三、8255A的工作方式和C口状态字,1.方式0 简单的输入输出方式 方式0是一种简单的输入输出方式,也称为无条件传送方式或同步传送方式。在这种方式下,A、B、C三个端口作为相互独立的输入/输出端口使用,不需要联络信号。C口的高4位(PC7PC4)和低4位(PC3PC0),即可以合成一个8位端口使用,也可以作为两个相互独立的

6、4位口使用。方式0是单向传送,一次初始化只能设置在一个方向上传送数据。方式0一般用于无条件传送的场合,也可以用做查询式传送。,IN AL,60HOUT 61H, AL,方式0输入时序,方式0输出时序,2.方式1 选通输入输出方式,方式1是一种选通输入输出方式(也称为应答方式或异步方式)。A口和B口都可以工作在这种方式。在这种方式下,A口和B口作为两个独立的8位IO数据通道(可连接外设)。C口要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可作为方式0的输入输出。方式1也是单向传送。,(1)方式1输入联络信号,STB选通信号,低电平有效由外设提供的输入信号,当其有效时,将输入设

7、备送来的数据锁存至8255A的输入锁存器IBF输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器INTR中断请求信号,高电平有效8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据,方式1输入:A端口,数据选通信号表示外设已经准备好数据,输入缓冲器满信号表示A口已经接收数据,中断请求信号请求CPU接收数据,PC4,PC5,PC3,PA7PA0,INTEA,IBFA,INTRA,STBA,中断允许触发器,RD,方式1输入时序,STB和IBF是外设和8255A间的一对应答联络信号,为的是可靠地输入数据,方式1中断控制,8255A的中断由

8、中断允许触发器INTE控制 置位允许中断,复位禁止中断对INTE的操作通过写入端口C的对应位实现,INTE触发器对应端口C的位是作应答联络信号的输入信号的哪一位,只要对那一位置位/复位就可以控制INTE触发器选通输入方式下 端口A的INTEA对应PC4 端口B的INTEB对应PC2选通输出方式下 端口A的INTEA对应PC6 端口B的INTEB对应PC2,(2)方式1输出联络信号,OBF输出缓冲器满信号,低有效 8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走ACK响应信号,低有效 外设的响应信号,指示8255A的端口数据已由外设接受INTR中断

9、请求信号,高有效 当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据,端口A的INTEA对应PC6端口B的INTEB对应PC2,方式1输出:A端口,外设响应信号表示外设已经接收到数据,输出缓冲器满信号表示CPU已经输出了数据,中断请求信号请求CPU再次输出数据,PC6,PC7,PC3,PA7PA0,INTEA,OBFA,INTRA,ACKA,中断允许触发器,WR,方式1输出时序,OBF和ACK是外设和8255A间的一对应答联络信号,为的是可靠地输出数据,3. 方式2双向方式,方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据只有

10、端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同方式2的数据输入过程与方式1的输入方式一样方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF有效时向外设输出数据,而是在外设提供响应信号ACK时才送出数据,方式2-双向,PC6,PC7,PC3,PA7PA0,INTE1,OBFA,INTRA,ACKA,PC4,PC5,IBFA,RD,INTE2,用PC6设置INTE1(输出)用PC4设置INTE2(输入)输入和输出中断通过或门输出INTRA信号,WR,STBA,方式2双向时序,data-out,INTR,data-out,data-in,dat

11、a-in,PA0PA7,D0D7,IBF,ACK,4.C口状态字,当8255A工作在方式1或方式2时,用输入指令可读取C口的状态字,以了解8255A的状态。,4.端口C的状态字,ACKA,ACKA,STBB,STBA,ACKA,STBA,8255A的编程,初始化编程:一个方式控制字 采用控制I/O地址:A1A011工作过程中:通过数据端口对外设数据进行读写 数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10IBM PC/XT机上,端口A、B、C和控制端口的I/O地址为60H、61H、62H和63H,1. 写入方式控制字:示例,要求:A端口:方式1输入C端口上半部:输出,C

12、口下半部:输入B端口:方式0输出方式控制字:10110001B初始化的程序段:mov dx,0fffeh;假设控制端口为FFFEHmov al,0b1h;方式控制字out dx,al;送到控制端口,2. 读写数据端口,初始化编程后:当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时,执行输出OUT指令将把CPU的数据送给输出设备8255A具有锁存输出数据的能力对输出方式的端口同样可以输入不是读取外设数据读取的是上次CPU给外设的数据,读写数据端口示例:,利用8255A的输出锁存能力,可实现按位输出控制 对输出端口B的PB7位置位的程序段:mov dx,0

13、fffah;B端口假设为FFFAHin al,dx;读出B端口原输出内容or al,80h;使PB71out dx,al;输出新的内容,3. 读写端口C:,C端口被分成两个4位端口,两个端口只能以方式0工作,可分别选择输入或输出在控制上,C端口上半部和A端口编为A组,C端口下半部和B端口编为B组当A和B端口工作在方式1或方式2时,C端口的部分或全部引脚作为联络信号使用其余引脚仍可设定工作在方式0,对端口C的数据输出有两种办法通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效通过控制端口:写入位控字,使C端口的某个引脚输

14、出1或0,或置位复位内部的中断允许触发器,读取的C端口数据有两种情况未被A和B端口使用的引脚:将从定义为输入的端口读到引脚输入信息;将从定义为输出的端口读到输出锁存器中的信息被A和B端口作为联络线的引脚:将读到反映8255A状态的状态字,9.2 8255A的应用,作为通用的并行接口电路芯片,8255A具有广泛的应用应用在IBM PC/XT微机上应用于打印机接口电路连接简易键盘驱动LED数码管,例,某一系统中,有8个开关K7K0,要求不断检测它们的通断状态,并随时在发光二极管LEE7LED0上显示出来。开关断开,相应的LED点亮;开关合上,LED熄灭。选用8086 CPU,8255A和74LSl38译码器等芯片。,判断端口地址:0F0H0F6H确定控制字:10010000B,一、基本输入输出应用,MOV DX,0F6H ;控制字寄存器 MOV AL,10010000B ;控制字 OUT DX,AL;写入控制字TEST_IT: MOV DX,0F0H;指向A口 IN AL,DX ;从A口读入开关状态 MOV DX,0F2H;指向B口 OUT DX,AL ;B口控制LED,指示开关状态 JMP TEST_IT ;循环检测,PA08255A PA1PA2PA3,PB7PB6PB5PB48255APB3PB2PB1PB0,

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

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

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