精品电子发烧友课件_9

上传人:bin****86 文档编号:57530536 上传时间:2018-10-22 格式:PPT 页数:186 大小:2.02MB
返回 下载 相关 举报
精品电子发烧友课件_9_第1页
第1页 / 共186页
精品电子发烧友课件_9_第2页
第2页 / 共186页
精品电子发烧友课件_9_第3页
第3页 / 共186页
精品电子发烧友课件_9_第4页
第4页 / 共186页
精品电子发烧友课件_9_第5页
第5页 / 共186页
点击查看更多>>
资源描述

《精品电子发烧友课件_9》由会员分享,可在线阅读,更多相关《精品电子发烧友课件_9(186页珍藏版)》请在金锄头文库上搜索。

1、7.1 并行输入/输出接口 7.2 串行通信接口 7.3 定时器接口 7.4 模拟通道接口,第7章 微机接口技术,返回主目录,第 7 章 微机接口技术,微机接口技术是微型计算机应用的重要部分。为了实现人机交互和各种形式的输入和输出,在不同的微机系统中,人们使用了多种多样的I/O设备。 这些设备和装置,在工作原理、 驱动方式、信息格式以及工作速度方面彼此差别很大;在处理数据时,其速度也比CPU慢得多,所以它们不可能与CPU直接相连,必须通过作为接口的中间电路再与微机系统相连。因此, 微机接口设计就是根据接口芯片厂家提供的芯片功能、引脚、 时序和使用说明,将接口芯片通过一定的方式与CPU和外部设备

2、连接起来,并进行相关的程序设计。,7.1 并行输入/输出接口,7.1.1并行输入/输出接口概述并行输入/输出就是把一个字符的几个位同时进行传输。 它具有传输速度快、效率高的优点。并行通讯所用的电缆较多, 不适合长距离传输。所以,并行通讯总是用在数据传输率要求较高,而传输的距离较短的场合。 实现并行输入/输出的接口就是并行接口。通常, 一个并行接口可设计为输出接口,如连接一台打印机。也可设计为输入接口,如连接键盘。还可设计成双向通讯接口,既作为输入接口又作为输出接口,如连接像磁盘驱动器这样的需双向通路的设备。,图 7 - 1 是典型的并行接口和外设连接的示意图。 从图中可以看到,并行接口左边是与

3、CPU连接的总线,右边用一个通道和输入设备相连,另一个通道和输出设备相连,输入和输出都有独立的信号交换联络控制线。在并行接口内部用控制寄存器来寄存CPU对它的控制命令,用状态寄存器来提供各种工作状态供CPU查询,此外,还有供输出和输入数据用的输出数据锁存器和输入数据缓冲器。并行接口的工作原理如下: 在输入过程中,当外设把数据送到数据输入线上时,通过“数据输入准备好”状态线通知接口取数。接口在把数据锁存到输入缓冲器的同时,把数据输入回答线置“1”,用来通知外设,接口的数据输入缓冲器“满”,禁止外设再送数据。,图 7 1 并行接口与外设连接示意,并且把内部状态寄存器中“输入准备好”状态位置“1”,

4、以便CPU对其进行查询或向CPU申请中断。在CPU读取接口中的数据后,接口将自动清除“输入准备好”状态位和“数据输入回答”信号,以便外设输入下一个数据。 在输出过程中,当数据输出缓冲器“空闲”时,接口中“输出准备好”状态位置“1”。在接收到CPU的数据后,“输出准备好”状态位复位。数据通过输出线送到外设,同时,由“数据输出准备好”信号线通知外设取数据。当外设接收一个数据时, 回送一个“数据输出回答”信号,通知接口准备下一次输出数据。 接口将撤消“数据输出准备好”信号并再一次置“输出准备好”状态位为“1”,以便CPU输出下一个数据。 ,7.1.2 可编程并行输入/输出接口8255A8255A是I

5、ntel公司生产的一种可编程并行输入/输出接口芯片。它的通用性强,可以方便地和微机连接,用来扩展输入/输出口。8255A有3个8位并行端口,根据不同的初始化编程, 可以分别定义为输入或输出方式,以完成CPU与外设的数据传送。 1. 8255A的结构8255A的内部结构如图 7 - 2 所示。它由并行I/O端口、 控制电路、数据总线缓冲器和读/写控制逻辑等几个部分组成。 (1) 并行I/O端口A、B、C。,A、B、C口都是8位的,可以选择作为输入或输出, 但在结构和功能上有所不同。A口含有一个8位数据输出锁存/缓冲器和一个8位数据输入锁存器。B口含有一个8位数据输入/输出锁存/缓冲器和一个8位的

6、数据输入缓冲器(不锁存)。C口含有一个8位数据输出缓冲器和一个8位数据输入缓冲器(不锁存)。 当数据传送不需要联络信号时,这三个端口都可以用作输入或输出口。当A口、B口工作在需要联络信号输入、输出方式时,C口可以分别为A口和B口提供状态和控制信息。 (2) A组和B组控制电路。 8255A的三个端口在使用时分为A、B组。A组包括A口8位和C口的高4位,B组包括B口8位和C口的低4位。两组的控制电路中有控制寄存器,根据写入的控制字决定两组的工作方式, 也可以对C口的每一位置“1”或清“0”。,(3) 数据总线缓冲器。 数据总线缓冲器是三态双向8位缓冲器,是8255A与CPU数据总线的接口。数据的

7、输入/输出、控制字和状态信息的传送, 都是通过这个缓冲器进行的。由于8255A的数据总线是三态的,所以D0D7可以直接与CPU的数据总线相连。 (4) 读/写控制逻辑。 8255A的读/写控制逻辑的作用是从CPU的地址和控制总线上接收有关信号,转变成各种控制命令送到数据缓冲器以及A组、B组控制电路,从而管理三个端口、控制寄存器和数据总线之间的传送操作。 ,2. 8255A的引脚功能8255A采用40脚双列直插式封装,引脚如图 7 - 3 所示。下面分别介绍各个引脚的功能。 D0D7: 双向三态数据总线。 RESET:复位信号,输入。当RESET端得到高电平后, 8255A复位。复位状态是控制寄

8、存器被清零,所有端口(A、 B、 C口)被置为输入方式。 : 片选信号, 输入。当 为低电平时,该芯片被选中。 : 读信号, 输入。当 为低电平时,允许CPU从8255A读取数据或状态信息。 ,图7-3 8255A引脚,:写信号,输入。当 为低电平时,允许CPU将控制字或数据写入8255A。 A1、A0:端口选择信号,输入。8255A中有端口A、 B、 C, 还有一个控制寄存器,共4个端口,根据从A1、A0输入的地址信号来寻址,如表 7 - 1 所示。 A1、A0与信号一起,用来确定8255A的操作状态,如表 7 - 2 所示。 PA0PA7: A口数据线,双向。 PB0PB7: B口数据线,

9、双向。 PC0PC7:C口数据线,双向。当8255A工作于方式0时, PC0PC7分成 两组并行I/O 数据线,每组4位。当8255A工作于方式1或方式2时,PC0PC7为A口、B口提供联络和中断信号,这时每根线的功能有新的定义。 ,3. 8255A工作方式和控制字8255A有三种工作方式: 方式0是基本输入/输出方式;方式1是选通输入/输出方式;方式2是双向传送方式。8255A各端口的工作方式由写入8255A控制口的工作方式控制字来确定。工作方式控制字的格式如图 7 - 4 所示。在工作方式控制字中, D7位是工作方式控制字的标志,置“1”为有效;D3D6确定A组的工作方式;D0D2确定B组

10、的工作方式。 8255A还有一个位控制字,用来设置C口某位的状态而不影响其它位。位控字也写入8255A的控制口。位控字的格式如图 7 - 5 所示, D7=0是位控字的标志。,图 7 4 8255A工作方式控制字格式,图 7 5 8255A位控字格式,4. 8255A三种工作方式的功能(1) 工作方式0。 方式0是基本的输入/输出方式。在这种方式下,三个端口都可以由程序规定为输入或输出方式,但不能既作为输入又作为输出, 也没有提供固定的联络信号。C口分为两个4位高4位和低4位,可以分别设置为输入或输出方式。各端口在输出方式下有锁存功能,输入不锁存。8255A工作方式0的功能如图 7 - 6 所

11、示。 当以工作方式0输入时,外设先将数据送到8255A的某个端口,CPU执行一条输入指令, 有效,将该端口的数据送入CPU。当以工作方式0输出时,CPU执行一条输出指令, 有效,将数据送到8255A的某个端口,然后由外设取走。 工作方式0适合于数据的无条件传送,也可以人为指定某些位作为状态信息线,进行查询式传送。 ,图 7 6 8255A工作方式0的功能,(2) 工作方式1。 方式1是选通输入/输出方式。这种方式下,A口、B口作为数据的输入或输出口,输入和输出都具有锁存功能;C口的某些位相应地被定义为A口、B口的状态和控制信号线。 在以方式1输入和输出情况下, C口各位的定义如表 7 - 3

12、所示。若A口和B口都工作于方式1,则C口有6位固定作为A口、 B口的状态和控制信号,剩下2位可由程序指定为输入和输出。 若A口、 B口中一个工作于方式1,另一个工作于方式0,则C口有3位固定作为A口或B口的状态和控制信号,其余5位可由程序指定为输入或输出。 方式1输入。 8255A工作于方式1输入情况下的功能如图 7 - 7 所示。,图 7 7 8255A工作于方式1输入的功能,在方式1输入情况下,C口被定义的状态和控制信号有 、 IBF和INTR, 其含义如下: : 选通信号, 低电平有效, 由外设提供。 当有效时,外设把数据送入8255A的A口或B口。 IBF:输入缓冲器满,高电平有效,由

13、8255A输出给外设。 当该信号有效时表明外设已将数据送到A口或B口的输入缓冲器。IBF由 置位, 的上升沿使它复位。IBF可作为8255A与外设的联络信号。当IBF=0时,允许外设向8255A传送一个数据; 当IBF=1时,表示外设送来的数据还未被CPU取走,这时禁止外设向8255A传送数据。IBF也可作为CPU的查询信号,当IBF=1时,告诉CPU应该从8255A的端口读取数据。 ,INTR:中断请求信号,高电平有效,由8255A发出。 在程序设置的中断允许信号INTE=1的条件下,当 =1和IBF=1时,INTR被置为1, 的上升沿使它复位。 INTE是端口内部的中断允许信号,是内部中断

14、允许触发器的状态,由C口的位控字来设置。若位控字使PC4=1,则A口的中断允许信号INTEA=1;若位控字PC2=1,则B口的中断允许信号INTB=1。这一点对于PC4和PC2两引脚的 、 功能并无影响。 8255A在 =0的控制下,将A口或B口的数据送入输入锁存器, 然后输出IBF=1给外设。外设在IBF=1作用下停止数据传送,置 =1。 这时若已有INTE=1,则使INTR=1,向CPU发出中断请求。,时序如图7-8所示,7-8 8255A工作方式1输入的时序,此时 有效,在其下降沿INTR被复位,在其上升沿IBF被复位。 至此完成一个数据从外设经 到CPU的选通输入。 方式1输出。 82

15、55A工作于方式1输出情况下的功能如图 7 - 9 所示。C口被定义的状态和控制信号有 、 和INTR, 其含义如下: : 输出缓冲器满,低电平有效,由8255A输出给外设。当该信号有效时,表示CPU已把要输出的数据输出到A口或B口的输出缓冲器中,告诉外设可以把数据取走。 ,图 7- 9 8255A工作于方式1输出的功能,由CPU的 上升沿为低电平,将外设发来的ACK上升沿置为高电平。 : 响应信号,低电平有效。当外设将8255A的A口或B口数据取走后,向8255A发出一个负脉冲信号 。 INTR:中断请求信号,高电平有效,由8255A发出。在程序设置的中断允许信号INTE=1的条件下,当 =

16、1和 =1时,INTR被置为1, 的上升沿使它复位。 在方式1输出情况下,若所设位控字使PC6=1,则INTEA=1;若位控字使PC2=1, 则INTEB=1。 ,8255A工作于方式1输出的时序如图 7 - 10 所示。 现结合时序图说明8255A选通输出的工作情况。在采用中断控制方式时,输出过程是从CPU响应中断开始的。在中断服务程序中, CPU执行输出指令,发出 信号,输出数据到8255A的A口或B口。 的上升沿使INTR变为无效。同时8255A向外设发出 =0的信号,告诉外设可以接收数据。外设从8255A取走数据后,发出 =0信号,其下降沿使 =1。 当 变为高电平时,因同时有INTE=1和 =1,故将INTR置为1,向CPU发出中断请求,开始进入输入下一个数据的操作过程。 ,

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

当前位置:首页 > 办公文档 > PPT模板库 > 其它

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