开关量接口技术 点击:2102 | 回复:1



明心

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 2回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2008年9月26日
发表于:2008-10-19 10:42:04
楼主
开关量接口技术
第一讲:
第七章 接口与并行通信

回顾: 微机系统结构及控制信号的名称和作用。
本讲重点:I/O接口概述,CPU与I/O接口,I/O接口与系统的连接。

讲授内容:
7.1 CPU与外设之间的数据传输
一.CPU与I/O接口
接口电路按功能可分为两类:
①是使微处理器正常工作所需要的辅助电路:时钟信号或中断请求等;
②是输入/输出接口电路:CPU与外部设备信息的传送(接收、发送)。
最常用的外部设备:如键盘、显示装置、打印机、磁盘机等都是通过输入/输出接口和总线相连的,完成检测和控制的仪表装置也属于外部设备之列,也是通过接口电路和主机相连。
1.为什么要用接口电路
需要分析一下外部设备的输入/输出操作和存储器读/写操作的不同之处:
存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配.。
外部设备的功能多种多样的(输入设备,输出设备,输入设备/输出设备),信息多样(数字式的,模拟式的),信息传输的方式(并行的,串行的),外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这也要求通过接口电路对输入/输出过程起一个缓冲和联络的作用。
注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能
2.接口的功能(8种):
⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。另—类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。

二.I/O接口与系统的连接
1.CPU与I/O设备之间的信号(三类)
(1) 数据信息 包括三种形式:数字量、模拟量 、开关量
(2) 状态信息 是外设通过接口往CPU传送的
如:“准备好”(READY)信号、“忙”(BUSY)信号
(3) 控制信息 是CPU通过接口传送给外设的
       如:外设的启动信号、停止信号就是常见的控制信息
2.接口部件的I/O端口:
⑴数据端口、⑵控制端口、⑶状态端口
CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口有一个端口地址。用于对来自CPU和内存的数据或者送往CPU和内存的数据起缓冲作用的,这些端口叫数据端口。用来存放外部设备或者接口部件本身的状态,称为状态端口。用来存放CPU发出的命令,以便控制接口和设备的动作,这类端口叫控制端口。如下图

注:⑴输入还是输出,所用到的地址总是对端口而言的,不是对接口部件而言的。⑵为了节省地址空间,将数据输入端口和数据输出端口对应同一个端口地址。同样,状态端口和控制端口也常用同一个端口地址。
⑶CPU对外设的输入/输出操作就归结为对接口芯片各端口的读/写操作。

3.接口与系统的连接.
接口电路位于CPU与外设之间,从结构上看,可以把一个接口分为两个部分,⑴用来和I/O设备相连;
⑵用来和系统总线相连,这部分接口电路结构类似,连在同一总线上。
下图是一个典型的I/O接口和外部电路的连接图:

联络信号:读/写信号,以便决定数据传输方向。
地址译码器,片选信号:地址译码器除了接收地址信号外,还用来区分I/0地址空间和内存地址空间的信号(M/ )用于译码过程。
注:⑴一个接口通常有若干个寄存器可读/写,
⑵一般用1-2位低位地址结合读/写信号来实现对接口内部寄存器的寻址。

4.输入输出的寻址方式
CPU对外设的寻址方式通常有两种:
(1) 存储器对应输入输出方式
每一个外设端口占有存储器的一个地址。
优点:CPU对外设的操作可使用全部的存储器操作指令,寻址方式多,使用方便灵活,且可寻址的外设数量多。
缺点:由于外设占用了存储单元的地址,使内存的容量减小,同时,程序的可读性下降。
(2) 端口寻址的输入输出方式
CPU有专门的输入输出指令( IN, OUT),通过这些指令中的地址来区分不同的外设。
优点:容易掌握,编出的程序可读性好。
缺点:可寻址的范围较小,还必须有相应的控制线(M/ )来区分是寻址内存还是外设。

7.2 可编程并行接口芯片8255A
一.并行通信与接口
并行通信就是把一个字符的各位同时用几根线进行传输。传输速度快,信息率高。电缆要多,随着传输距离的增加,电缆的开销会成为突出的问题,所以,并行通信用在传输速率要求较高,而传输距离较短的场合。
Intel 8255A是一个通用的可编程的并行接口芯片,它有三个并行I/O口,又可通过编程设置多种工作方式,价格低廉,使用方便,可以直接与Intel系列的芯片连接使用,在中小系统中有着广泛的应用。

二.8255A的编程结构
8255A由以下几部分组成:见图7-3
1.三个数据端口A,B,C
这三个端口均可看作是I/O口,但它们的结构和功能也稍有不同。
?A口:是一个独立的8位I/O口,它的内部有对数据输入/输出的锁存功能。
?B口:也是一个独立的8位I/O口,仅对输出数据的锁存功能。
?C口:可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。也是仅对输出数据进行锁存。
2.A组和B组的控制电路
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复位的操作。
A组控制电路用来控制A口及C口的高4位;
B组控制电路用来控制B口及C口的低4位。


图7-3 8255A的编程结构
2.A组和B组的控制电路
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复位的操作。
A组控制电路用来控制A口及C口的高4位;
B组控制电路用来控制B口及C口的低4位。
3.数据总线缓冲器
8位的双向的三态缓冲器。作为8255A与系统总线连接的界面,输入/输出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。
4.读/写控制逻辑
读/写控制逻辑电路负责管理8255A的数据传输过程。它接收片选信号 及系统读信号 、写信号 、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。



习题与思考:
1.接口电路的主要作用是什么?它的基本结构如何?
2.说明接口电路中控制寄存器与状态寄存器的功能,通常它们可共用一个端口地址码,为什么?
3.CPU寻址外设端口的方式通常有哪两种?试说明它们的优缺点。
4.在CPU与外部设备接口电路的连接中,通过数据总线可传输哪几种信息?在这里地址译码器起什么作用?





















第二讲:
7.2 可编程并行接口芯片8255A
回顾:接口与系统的连接, 并行



siren

  • 精华:36帖
  • 求助:0帖
  • 帖子:426帖 | 6724回
  • 年度积分:0
  • 历史总积分:21846
  • 注册:2002年3月09日
发表于:2008-10-19 23:37:09
1楼

研发的人才知道!?????????


热门招聘
相关主题

官方公众号

智造工程师