第7章 输入瑜出接口
第7章 输入输出接口
【本章重点】本章重点介绍输入输出 接口的基本概念和输入输出接口的功 能;着重讨论不同外设数据传送的不 同方法及简单接口的应用。 本章难点】掌握无条件传送和查询 传送的工作原理,难点是接口芯片的 应用
【本章重点】本章重点介绍输入输出 接口的基本概念和输入输出接口的功 能;着重讨论不同外设数据传送的不 同方法及简单接口的应用。 【本章难点】掌握无条件传送和查询 传送的工作原理,难点是接口芯片的 应用
7.1微型计算机的输入/输出接口 7.1.1输入/输出接口 I/0接口的功能 个接口的基本功能是在系统总线和I/0设备之间传输信号, 提供缓冲作用,以满足接口两边的时序要求 1)寻址功能 2)输入输出功能 3)联络功能 4)速度匹配功能 5)数据格式转换功能 6)中断管理功能 7)可编程功能
7.1.1 输入/输出接口 1. I/O接口的功能 一个接口的基本功能是在系统总线和I/O设备之间传输信号, 提供缓冲作用,以满足接口两边的时序要求。 1) 寻址功能 2) 输入输出功能 3) 联络功能 4) 速度匹配功能 5) 数据格式转换功能 6) 中断管理功能 7) 可编程功能 7.1 微型计算机的输入/输出接口
外设接口的编址方式 每个接口部件都含有一组寄存器,CPU与外设进行数据传送时,各类信息在 接口中进入不同的寄存器,一般称这些寄存器为I/0端口,每个端口都 有一个端口地址。系统对各种寄存器的操作,实际上是通过寻址,对个 端口地址的选择和操作,因此外设接口(I/0端口)有两种编址方式。 (1)外设地址与内存地址统一编址 这种编址方式又称为存储器映射编址方式。在这种编址方式中,将外设接 口地址和内部存储器地址统一安排在内存的地址空间中。即把内存地址 分配给外设,由外设来占用这些地址。用于外设的这些地址,存储器不 能再使用。 (2)外设与内存独立编址 在这种编址方式中,内存地址空间和外设地址空间是相互独立的。例如, 在8086CPU中,内存地址是连续的1M字节,从00000~FFFH,而外设 的地址范围从0000H~FFH。它们相互独立,互不影响
2.外设接口的编址方式 每个接口部件都含有一组寄存器,CPU与外设进行数据传送时,各类信息在 接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口都 有一个端口地址。系统对各种寄存器的操作,实际上是通过寻址,对个 端口地址的选择和操作,因此外设接口(I/O端口)有两种编址方式。 (1)外设地址与内存地址统一编址 这种编址方式又称为存储器映射编址方式。在这种编址方式中,将外设接 口地址和内部存储器地址统一安排在内存的地址空间中。即把内存地址 分配给外设,由外设来占用这些地址。用于外设的这些地址,存储器不 能再使用。 (2)外设与内存独立编址 在这种编址方式中,内存地址空间和外设地址空间是相互独立的。例如, 在8086CPU中,内存地址是连续的1M字节,从00000H~FFFFFH,而外设 的地址范围从0000H~FFFFH。它们相互独立,互不影响
7.1.2输入/输出的控制方式 概括起来,在微型计算机系统中,主要有如下 4种传送方式解决上述问题 ①无条件传送 ②查询传送 ③中断传送 ④直接存贮器存取(DMA)方式
7.1.2 输入/输出的控制方式 概括起来,在微型计算机系统中,主要有如下 4种传送方式解决上述问题: ①无条件传送 ②查询传送 ③中断传送 ④直接存贮器存取(DMA)方式
1无条件传送 在微机系统中,有一些简单外设.当它们工作时,随时都准备好接收 PU的输出数据或它们的数据随时都是准备好的,CPU什么时候读 均可以正确地读到它们的数据。也就是说外设无条件准备好向CPU 提供数据或接收CPU送来的数据。在CPU与这样的外设交换数据的 过程中,数据交换与指令的执行是同步的。因此也有人称其为同 步传送 无条件传送方式是一种简单的输入输出方式,一般用于控制CPU与 低速接口之间的信息交换.例如,开关、温度、压力流量等(A/D) 转换器。由于这些信号变换缓慢,当需要采集这些数据时,外设 已经将数据准备就绪了,因此无需检査端口的状态,就可以立即 采集数据。由于数据保持时间相对于CPU的处理时间长得多,故输 入端可直接用输入缓冲器与CPU的数据总线相连。若外设是输出设 备,一般要求接口有锁存能力,也就是CPU送给外设的数据应该在 接口中保持一段时间,其原因是外设的速度较慢,所以要求CPU送 到接口的数据能保持到外设动作相适应的时间
1.无条件传送 在微机系统中,有一些简单外设.当它们工作时,随时都准备好接收 CPU的输出数据或它们的数据随时都是准备好的,CPU什么时候读 均可以正确地读到它们的数据。也就是说外设无条件准备好向CPU 提供数据或接收CPU送来的数据。在CPU与这样的外设交换数据的 过程中,数据交换与指令的执行是同步的。因此也有人称其为同 步传送。 无条件传送方式是一种简单的输入输出方式,一般用于控制CPU与 低速接口之间的信息交换.例如,开关、温度、压力流量等(A/D) 转换器。由于这些信号变换缓慢,当需要采集这些数据时,外设 已经将数据准备就绪了,因此无需检查端口的状态,就可以立即 采集数据。由于数据保持时间相对于CPU的处理时间长得多,故输 入端可直接用输入缓冲器与CPU的数据总线相连。若外设是输出设 备,一般要求接口有锁存能力,也就是CPU送给外设的数据应该在 接口中保持一段时间,其原因是外设的速度较慢,所以要求CPU送 到接口的数据能保持到外设动作相适应的时间
开关K看作一个简单的外设。K的状态是确定的,要么闭合,要么打开。当 计算机通过外设接口读K的状态时,一定会读到指令执行时刻K的状态 当CPU读接口地址 FFFTH时,或门输出为低电平。该电平使输入接口三态门 导通,则开关K的状态就由数据线D读到CPU。判断读入数据D=0时,K闭合 D。=1时,K打开。 LOKI 23456 10 IOR-
开关K看作一个简单的外设。K的状态是确定的,要么闭合,要么打开。当 计算机通过外设接口读K的状态时,一定会读到指令执行时刻K的状态. 当CPU读接口地址FFF7H时,或门输出为低电平。该电平使输入接口三态门 导通,则开关K的状态就由数据线D0读到CPU。判断读入数据D0 =0时,K闭合; D0 =1时,K打开。 +5V 10K A8 A9 A10 A11 A12 A13 A14 A15 & A4 A3 A2 A7 A0 A5 A1 A6 1 & 1 IOR D0
【例7-1】图中外设是简单的发光二极管.此外设的接口是用锁存器来实 现的.锁存器在打入脉冲CP上升沿将输入端D的数据锁存在它的输出Q端。 编写点亮二极管的程序。 3009 Do Qo +5v D7 D 3009 A A CP 74LS273 lOW Mov AL, 81H MOV DX, 0000H 送端口地址 OU DX, AL 点亮发光二极管
【例7-1】图中外设是简单的发光二极管.此外设的接口是用锁存器来实 现的.锁存器在打入脉冲CP上升沿将输入端D的数据锁存在它的输出Q端。 编写点亮二极管的程序。 D0 Q0 D7 Q7 CP 1 1 1 A0 A1 A2 A3 A4 A5 A6 A7 IOW A8 A9 A11 A10 A12 A13 A14 A15 D0 D7 ~ 1 +5v 300 1 +5v 300 74LS273 MOV AL,81H MOV DX,0000H ;送端口地址 OUT DX,AL ;点亮发光二极管
【例7-2】类似于例1中,让接在Q~Q2上的二极管自上而下 轮流点亮3s,编写程序实现 程序如下: MOV AL, OlH 使Q0为1,LEDO先亮 LOP OUT 0000H,AL 将信息送0000端口 CALL delaY 3 调用3S子程序 ROL AL, 1 小循环左移1位 JMP LOP 循环点亮LED
【例7-2】类似于例1中,让接在Q0 ~Q7上的二极管自上而下 轮流点亮3s,编写程序实现。 程序如下: MOV AL, 01H ;使Q0为1,LED0先亮 LOP: OUT 0000H,AL ;将信息送0000H端口 CALL DELAY 3s ;调用3S子程序 ROL AL,1 ;小循环左移1位 JMP LOP ;循环点亮LED
2.查询方式 无条件传送对于那些慢速的或总是准备好的外设是适应的。但是,许多 外设并不总是准备好的。CPU与这类外设交换数据可以采用程序查询方式。 所谓查询方式就是微型计算机利用程序不断地询问外部设备的状态,根 据它们所处的状态来实现数据的输入输出 为了实现这种工作方式,要求外部设备向微型计算机提供一个状态信息。 微型计算杋校验外部设备所提供的状态信息,即査询外部设备,以便确定它 的下一步操作。 图7-3给出了查询工作的示意图。 状态 CPU 接 数据 外设 控制 图7-3查询工作方式示意图
2.查询方式 无条件传送对于那些慢速的或总是准备好的外设是适应的。但是,许多 外设并不总是准备好的。CPU与这类外设交换数据可以采用程序查询方式。 所谓查询方式就是微型计算机利用程序不断地询问外部设备的状态,根 据它们所处的状态来实现数据的输入输出。 为了实现这种工作方式,要求外部设备向微型计算机提供一个状态信息。 微型计算机校验外部设备所提供的状态信息,即查询外部设备,以便确定它 的下一步操作。 图7-3给出了查询工作的示意图。 CPU 接 口 外 设 状态 数据 控制 图7-3查询工作方式示意图