理学微机原理与接口技术课件

上传人:我*** 文档编号:145063030 上传时间:2020-09-16 格式:PPT 页数:82 大小:1.31MB
返回 下载 相关 举报
理学微机原理与接口技术课件_第1页
第1页 / 共82页
理学微机原理与接口技术课件_第2页
第2页 / 共82页
理学微机原理与接口技术课件_第3页
第3页 / 共82页
理学微机原理与接口技术课件_第4页
第4页 / 共82页
理学微机原理与接口技术课件_第5页
第5页 / 共82页
点击查看更多>>
资源描述

《理学微机原理与接口技术课件》由会员分享,可在线阅读,更多相关《理学微机原理与接口技术课件(82页珍藏版)》请在金锄头文库上搜索。

1、2020/9/16,第 7章,2020/9/16,第7章 并行接口,教学目的和要求: 掌握8255A的功能、结构和工作原理 掌握并行接口电路的设计方法 了解键盘、LED显示器的工作原理 能够编写基于8255A的简单控制程序,31,2020/9/16,本章难点,1 8255A的工作方式1的理解 2 基于8255A芯片的接口电路设计,30,2020/9/16,并行通信,特点: 以数据字节或字为单位进行数据传送; 适合近距离传送 ; 对传送的信息不要求固定格式。 分类 输入和输出 数字和模拟 单向和双向 简单接口和可编程接口,2020/9/16,串行通信,特点: 按位传送 造价低,适合于远距离传送

2、传送方式 全双工 半双工 单工,2020/9/16,芯片简介: Intel8255A是一种的可编程的并行接口芯片。通过编写初始化程序,可以设定芯片的工作方式。 8255A通用性强,灵活性高,可以为多种不同的CPU与外设之间提供并行输入/输出通道。,7.3 并行接口芯片8255A,28,2020/9/16,1. 引线,连接系统端的主要引线: D0-D7 CS RD WR A0,A1 REAST,A1 A0 0 0 A端口 0 1 B端口 1 0 C端口 1 1 控制寄存器,2020/9/16,引线,连接外设端的引脚: PA0 PA7 PB0 PB7 PC0 PC7,分别对应A、B、C三个端口,2

3、020/9/16,7.3.1 8255A的内部结构,8255A内部具有三个带锁存的数据端口,可以与外设进行并行数据交换,各个端口内具有中断控制逻辑和选通控制逻辑。外设与CPU之间可通过条件传输方式或中断方式进行数据交换。,27,2020/9/16,它是具有多种功能的可编程并行接口芯片 最基本的接口电路:三态缓冲器和锁存器 是CPU与外设间的接口电路:状态寄存器和控制寄存器 还有端口的译码和控制电路、中断控制电路 有3个端口 有三种输入输出工作方式,特点,26,2020/9/16,8255A的内部结构,B组:端口B+ 端口C,A组:端口A+ 端口C,25,2020/9/16,1. 外设数据端口A

4、 、B、C,端口A:PA0PA7 A组,支持工作方式0、1、2 端口B:PB0PB7 B组,支持工作方式0、1 端口C:PC0PC7 仅支持工作方式0 A组控制高4位PC4PC7 B组控制低4位PC0PC3,端口A:PA0PA7 常作数据端口,功能最强大 端口B:PB0PB7 常作数据端口 端口C:PC0PC7 可作数据、状态和控制端口 分两个4位,每位可独立操作 控制最灵活,最难掌握,24,2020/9/16,2.A组控制和B组控制,它们可以接收芯片内部总线的控制字,也可以接收来自读写控制电路的读/写命令。由此决定两组端口的工作方式和读/写操作。 1)A组控制电路控制端口A和端口C的高4位(

5、PC7-PC4)的工作方式和读/写操作。 2)B组控制电路控制端口B和端口C的低4位(PC3-PC0)的工作方式和读/写操作。,23,2020/9/16,3.数据总线缓冲器,8255A具有一个双向三态的8位数据缓冲器,它是8255A与CPU系统总线的数据接口。 1)当CPU执行OUT输出指令时,可将控制字或数据通过该缓冲器传送给8255A. 2) 当CPU执行IN输入指令时,可将状态信息或数据通过该缓冲器传送给CPU. 因此,输入数据、输出数据、CPU给8255A发送的控制字都要通过它。可见,它是CPU与8255A数据交换的必由之路。,22,2020/9/16,4.读/写控制逻辑电路,负责管理

6、整个8255A的数据传输方向及过程。 接收CS和地址总线A1、A0的信号 (8086系统中为A2、A1) 。 接收控制总线的信号RESET、WR、RD。将这些信号组合得到A组和B组的控制部件的控制命令,完成对数据、状态和控制信息的传输。,21,8255A控制信号和数据传输之间的关系,20,2020/9/16,8255A的初始化,8255A的端口有3种基本的工作方式。具体采用哪一种工作方式是依靠写入控制寄存器中的控制字确定。通常把这个过程叫做8255A的初始化编程。CPU通过OUT指令往8255A的控制端口写入控制字来决定它的工作方式。,19,2020/9/16,7.3.2 8255A的工作方式

7、,方式0:基本的输入输出方式 适用于无条件传送和查询方式的接口电路,方式1:选通的输入输出方式 适用于查询和中断方式的接口电路,方式2:双向传输方式 用于与双向传送数据的外设 适用于查询和中断方式的接口电路,18,2020/9/16,8255A的工作方式与端口之对应,17,端口A:方式0、方式1、方式2,端口B:方式0、方式1,端口C:方式0,2020/9/16,方式0,方式0称为基本的输入/输出方式。 端口A和端口B可以通过方式选择控制字设定该端口作为输入端口或输出端口来工作。 端口C则分为两个4位端口,高4位作为一个端口,低4位作为另一个端口。它们可以通过方式选择控制字规定该端口作为输入端

8、口或输出端口,16,2020/9/16,方式0,15,2020/9/16,方式1,方式1称为选通的输入/输出方式。,与方式0的区别点: 端口A和端口B用方式1进行输入或输出数据时,利用端口C提供的选通信号和应答信号,而这些信号与端口C中的数位有着固定的对应关系。这种关系是8255A本身决定的,不能用程序改变。而使用方式0没有固定的对应关系。,14,基本特点:,1 、端口A和端口B可分别作为两个输入或输出端口工作在方 式1。具体安排由方式选择控制字决定。,2、若端口A和端口B只有一个端口工作方式1,则端口C中就 有3条线被规定为配合方式1工作的联络信号。此时另一 个端口可以工作在方式0,端口C中

9、剩余的5条线也可以 工作于方式0。,3、若端口A和端口B都工作于方式1,则端口C中就有6条线被 规定为配合方式1工作的联络信号。此时端口C中剩余2条 线仍可以工作于方式0。,4、端口A和端口B在方式1下,输入和输出均具有锁存功能。,5、当端口C的相应引脚规定为联络信号时,将不能通过编程 再改变。,13,2020/9/16,方式1输入引脚:端口A,数据选通信号 表示外设已经准备好数据,输入缓冲器满信号 表示A口已经接收数据,中断请求信号 请求CPU接收数据,12,2020/9/16,方式1输入引脚:端口B,方式1需借用端口C用做联络信号 同时还具有中断请求和屏蔽功能,11,2020/9/16,方

10、式1输入联络信号,STB (Strobe )选通信号,低电平有效 由外设提供的输入信号,当其有效时,将输入设 备送来的数据锁存至8255A的输入锁存器,IBF(Input Buffer Full)输入缓冲器满信号,高 电平有效 8255A输出的联络信号。当其有效时,表示数据已 锁存在输入锁存器,INTR(Interrupt Request)中断请求信号,高 电平有效 8255A输出的信号,可用于向CPU提出中断请 求,要求CPU读取外设数据,10,2020/9/16,方式1输入时序,9,2020/9/16,方式1中断控制,8255A的中断由中断允许触发器INTE控制 置位允许中断,复位禁止中断

11、 对INTE的操作通过写入端口C的对应位实现,INTE触发器对应端口C的位是作应答联络信号的输入信号的哪一位,只要对那一位置位/复位就可以控制INTE触发器 选通输入方式下 端口A的INTEA对应PC4 端口B的INTEB对应PC2,8,2020/9/16,方式1输出引脚:端口A,外设响应信号 表示外设已经接收到数据,输出缓冲器满信号 表示CPU已经输出了数据,中断请求信号 请求CPU再次输出数据,7,2020/9/16,方式1输出引脚:端口B,6,2020/9/16,方式1输出联络信号,OBF(Output Buffer Full)输出缓冲器满信号, 低电平有效 8255A输出给外设的一个控

12、制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走 ACK(Acknowledge)响应信号,低电平有效 外设的响应信号,指示8255A的端口数据已由外设接收 INTR(Interrrupt Request)中断请求信号, 高电平有效 当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续发送数据,端口A的INTEA对应PC6 端口B的INTEB对应PC2,5,2020/9/16,方式1输出时序,4,INTE 中断允许信号。是控制8255A能否向CPU发中断请求信号,它没有外部引脚,INTEA、INTEB是由用户对PC4、PC2按位置位实现的。,注意

13、,2020/9/16,方式2 双向传输方式,方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据 只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同 方式2的数据输入过程与方式1的输入方式一样 方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF有效时向外设输出数据,而是在外设提供响应信号ACK时才送出数据,3,2020/9/16,方式2双向引脚,用PC6设置INTE1(输出) 用PC4设置INTE2(输入) 输入和输出中断通过 或门输出INTRA信号,2,方式2双向时序,1,端口C状态字,8255A工作在方式0时

14、,C口各位作输入输出用。当工作在方式1和方式2时,C口产生与外设的联络信号。此时。读入C口各位的内容可检查或测试外设的状态。C口的状态字如下:,(1)方式1,(2)方式2,2020/9/16,7.3.3 基于8255A的应用编程,初始化编程:设定方式控制字的过程 采用控制寄存器端口的地址:A1A011 工作过程中:通过数据端口对外设数据进行读写 数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10,27,8255控制字,方式控制字,C口置0/置1控制字,2020/9/16,8255A的内部结构,B组:端口B+ 端口C,A组:端口A+ 端口C,25,1,1. 方式控制字,端口

15、C (PC3-PC0) 1=输入 0=输出,端口C (PC7-PC4) 1=输入 0=输出,标识位,1. 方式控制字:例1,MOV DX,0F006H;控制端口为F006H MOV AL,91H;方式控制字 OUT DX,AL;送到控制端口,如果8255A芯片的按照下列要求工作: 端口A :方式0,输入;端口C上半部:输出;端口C下半部:输入;端口B :方式0,输出。设控制端口的地址为:F006H。请编写相应的初始化程序。,1)先写出方式控制字,2)编写初始化程序,1,1,0,0,0,0,1,0,方式控制字:10010001B或91H,25,8255A,24,例2:在一个系统中,8255A的四

16、个端口地址分别为:320H、322H、324H和326H。要求: 1)端口A、B、C均工作于方式0,端口A作为输入端口,端口B和C作为输出端口。 2)将端口A输入的信息直接输出到端口B。 3)检测端口A输入的信息的PA7位。当PA7=1时,端口C输出FFH,否则,输出00H。 请编写程序,完成上述功能。,23,程序流程图,设定8255的方式 全部为:方式0 A:输入;C和B:输出,用IN指令读入端口A的信息,用OUT指令从端口B输出信息,PA7=1:C口输出FFH PA7=0:C口输出00H,1)先写出8255A的方式控制字。,1,0,0,0,0,0,1,0,方式控制字为10010000B或90H,2) 编写实现的程序(题目),MOV DX,0320H ;端口A的地址送DX IN AL,DX ; 读端口A的输入数据,22,MOV AL,90H ;将8255A的方

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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