1.接口
微机接口技术是采用硬件与软件相结合的方法,使微处理器与外部设备进行最佳的匹配,实现CPU与外部设备之间的高效、可靠的信息交换的一门技术。
接口技术是把由处理器、存储器等组成的基本系统与外部设备连接起来,从而实现计算机与外部设备通信的一门技术。处理器通过总线与接口电路连接,接口电路再与外部设备连接,因此CPU总是通过接口与外部设备发生联系。微机的应用是随着外部设备的不断更新和接口技术的发展而深入到各个领域的,因此接口技术是组成任何实用微机系统的关键技术,任何微机应用开发工作都离不开接口的设计、选用和连接。
实际上,任何一个微机应用系统的研制和设计,主要就是微机接口的研制和设计,需要设计的硬件是一些接口电路,所要编写的软件是控制这些电路按要求工作的驱动程序。因此,微机接口技术是一种用软件和硬件综合来完成某一特定任务的技术,掌握微机接口技术已成为当代科技和工程技术人员应用微机必不可少的基本技能。
所谓接口就是微处理器CPU与外部连接的部件,是CPU与外部设备进行消息交换的中转站。
如:源程序或数据要通过接口从输入设备送入计算机,运算结果要通过接口向输出设备送出;控制命令通过接口发出,现场状态通过接口取进来,实现现场的实时控制等。
接口可以抽象地定义为一个部件(Unit)或一台设备(Device)与周围环境的理想分界面。这个假设的分界面切断该部件或设备与周围环境的一切联系,当一个组件或设备与外界环境进行任何信息交换和传输时,必须通过这个假想的分界面,我们称这个分界面为接口(Interface)。
I/O接口电路 也简称 接口电路,它是主机和外围设备 之间交换信息的连接部件(电路)。
接口电路的作用就是将来自外部设备的数据信号传送给CPU,CPU对数据进行适当的加工后再通过接口传回外部设备,所以接口的基本功能就是对数据传送控制。
CPU在与I/O设备进行数据交换时存在以下问题:
1)速度不匹配。
2)时序不匹配。
3)信息格式不匹配。(串行、并行;二进制、ASCII编码和BCD编码)
4)信息类型不匹配。(数字信号、模拟信号)
所谓标准接口,就是指明确定义了几何尺寸、信号功能、信号电平等的接口。
有了标准接口,可以使不同类型、不同生产厂家的数据终端和数据通信设备之间方便地进行通信。
2. 接口信息
3. 数据信息
计算机中数据位数,一般:
8位、16位、32位、64位等。
计算机中数据基本类型:
数字量数据(常见的有键盘、打印机、显示器等)
模拟量数据(如温度、压力、声音等)
开关量(如电机启停控制、开关断开与闭合等)。
计算机与外设之间的 数据传送方式:
并行(如打印机等)
串行(如键盘、异步通信口等)
状态信息:反映当前外设或接口 本身所处的工作状态。
计算机在I/O过程中,外部设备的数据是否准备好,外部设备是否已准备好接受数据等,都要通过一定的数据量来表示,才能实现计算机与外设之间的正确"握手"。常见的状态信息有:ready/empty/busy等。
控制信息:主要是指启动、停止外部设备的接口信息。
CPU通过发送控制信息开工至外设的工作。
4. 接口地址
CPU要和I/O设备进行数据传送,在接口中就必须有一些寄存器或特定的硬件电路供CPU直接存取访问,这就是接口电路。
为了区分不同的接口电路,也必须像 存储器一样给他们编号,这就是接口电路的地址。这样CPU就可以象访问存储单元一样按地址访问这些接口电路,从而与外设发生联系。
一个接口电路中根据需要可能有多个存储器,如数据寄存器、状态寄存器和命令寄存器等,为了区别他们,也给予不同的地址,以便CPU能正确找到它们。为了将这些地址和存储器地址相区别,称它们为接口地址。
CPU通过这些地址向接口电路中的 寄存器 发送命令,读取状态和传送数据。
有时,也将上述提到的接口中可被CPU直接访问的一些寄存器 称为端口。一个接口常常有几个端口,如数据端口、状态端口、命令端口等,每个端口的地址叫端口地址。
如何实现 这些 接口地址、端口地址的访问,就是I/O地址的寻址问题。
在接口电路中,一般 一个端口 对应 一个寄存器,
也可以多个寄存器。
此时,由 内部控制逻辑 根据程序指定的I/O端口地址和数据标志位选择不同的寄存器进行读/写等操作。因此,CPU在访问这些寄存器时,只需指明它们的端口,不需指出是什么寄存器。
我们在输入/输出程序中,也只看到端口,而看不到相应的具体寄存器。也就是说,访问端口就是访问接口电路中的寄存器,这些端口可以是输入端口,也可以是输出端口,还可以是双向端口。
端口寄存器 或 部分端口线 与I/O设备直接相连,完成数据、状态及控制信息的交换。这样,I/O操作实质上转化为对I/O端口的操作,即CPU所访问的是 与I/O设备相关的端口,而不是I/O设备本身。
对I/O端口的访问,则取决于I/O端口的编制方式,即I/O编制。常用的编址方式主要有 I/O端口与存储器统一编制和I/O端口与存储器分开独立编址。
5. I/O接口的功能
1)数据缓冲功能。
2) 设备选择功能。(通过 接口的地址译码对外设进行寻址。)
一般,通过 高位地址产生 外设的片选信号,
地位地址作为 芯片 内部寄存器或锁存器寻址,
以选定所需的设备,只有被选中的设备才能与CPU交换数据信息。
3)信号转换功能。
由于外部设备所需的控制信号和所能提供的状态信号与计算机能识别的信号往往是不一致的,特别是连接不同公司生产的芯片时,进行信号之间的转换是不可避免的。信号的转换包括:时序的配合、电平的转换、信号类型的转换(模拟量变数字量或数字量变模拟量)、数据格式的转换(并行变串行或串行变并行)等。
4)提供信息交换的握手信号。
CPU对外设的各种命令和数据都是以代码的形式发送到接口电路,再由接口电路解读后,形成一系列控制信号去控制外设。为了CPU与外设之间的联络,接口电路要提供寄存器或锁存器“空”、“满”、“准备好”、“忙”、“不忙”等状态信息,以便程序能够了解是否可以发送数据到外设或从外设读取数据。
5)驱动功能。
由于计算机总线的信号驱动能力有限,当要连接多台外部设备时,总线资源可能不够。利用接口电路可以提高总线的负载能力,使一个接口与多台外部设备相连接,充分利用计算机的硬件资源。
6)中断管理功能。
当外部设备需要及时得到计算机的服务时,特别是一些随机需要与CPU交换信息的外设,就要求接口设备具有中断控制管理功能。此时,接口为计算机(CPU)处理有关中断事务,如提出中断请求,中断优先级排队,提供中断向量等。这样既加快了计算机对外部的响应速度,又使CPU与外部设备能并行工作,从而提高了CPU的效率。
7)可编程功能。
所谓可编程,即可以用程序来改变接口的工作方式。目前大多数接口芯片是可编程的,这样在不改动硬件电路的情况下通过修改接口驱动程序就可以改变接口的工作方式,从而大大增强了接口的灵活性 和适应性,使接口向智能化方向发展。
6. 接口的分类
6.1 按接口的功能划分
1)人机对话接口。这类接口 主要 为操作者与计算机之间的信息交换服务。如键盘接口、显示器接口、图形设备接口和语音输入输出接口等。
2)过程控制接口(I/O接口)。
传感器接口,输入各种外界信息。
控制接口,输出经计算机处理后的控制信好。
3)通用外设接口(标准接口)。
这类接口是通用外设 与 计算机之间的接口。
6.2 按接口与总线的关系划分
接口是某一部件与总线的联系,它与总线密切相关。
1)元件级接口。
是计算机系统 内部 某一 具体元件 如:存储器、定时器、中断控制器等 与 内部总线之间的联系。
焊接?
元件级接口 是接口电路的基本部分,任何档次的接口都必须涉及元件级接口,因为它是实现各种接口电路的基础。元件级接口电路比较简单看,特别是现代LSI接口芯片均与CPU兼容,只需外加译码器电路等即可直接与CPU相连。
2)插板级接口。
插接?
插板级接口又称系统内接口,它是 系统某一部分 与系统内总线之间的一切联系。如键盘接口、显示器接口、打印机接口、磁盘驱动器接口等。这种接口都比较复杂。
3)系统间接口。
系统间接口又称 通信接口,是计算机系统 与 另外一系统或智能设备之间的 联系,因这种联系不外乎就是数据的通信联系,故称之为通信接口。
数据通信都是 通过总线传输的,因此通信接口 是一种总线与另一种总线之间的接口,即计算机系统总线与通信总线之间的接口。如:RS-232C接口、IEEE-488接口、USB接口等。
7. I/O接口的实现方式
7.1 整体方式
将控制系统制作成一个独立的装置,在这种方式中,计算机(CPU)与看I/O接口是安装在同一块印刷线路板上的。
例如:用单片机开发的系统 或单板机计算机。这种方式的特点是:体积小、重量轻、成本也比较低。由于接口装置与CPU是做在一起的,一旦系统开发完成,就不能轻易改变。这种方式一般用于小型的计算机控制系统,特别是嵌入式系统中。
7.2 板卡方式
利用计算机的扩展功能,将 I/O接口装置按照计算机扩展槽的标准开发,并根据实际需要制成多种类型的板卡,有的板卡同时包含了 A/D和D/A 功能。
板卡直接插在个人计算机的扩展槽上,板卡通过总线与计算机互联和传输信息。
7.3 模块方式
在这种方式中,将各种I/O功能以模块的形式来实现。I/O模块与计算机之间以及I/O模块与I/O模块之间的物理连接可以很灵活。
例如,可以采用双绞线连接或 同轴电缆连接,也可以采用并行总线(底板总线)连接。
□