自动控制网—学习自动控制技术电气自动化技术从这里开始!

计算机系统I/O接口扩展

时间:2015-11-01 08:39来源:www.eadianqi.com 编辑:自动控制网
通常选用的微型计算机系统都已配备有相当数量的通用可编程序I/O接口电路,如并行接口8155、8255A、串行接口8251A、计数器/定时器8253以及DMA控制器和中断控制器等。但是选用通用的计算机系统用于控制生产对象时,往往接口和内存还不够用,必须扩展I/O接口及

    通常选用的微型计算机系统都已配备有相当数量的通用可编程序I/O接口电路,如并行接口8155、8255A、串行接口8251A、计数器/定时器8253以及DMA控制器和中断控制器等。但是选用通用的计算机系统用于控制生产对象时,往往接口和内存还不够用,必须扩展I/O接口及内存容量。因此,I/O接口扩展是计算机控制系统硬件设计的主要任务之一。

自动控制网www.eadianqi.com版权所有

    1、地址译码器的扩展

自动控制网www.eadianqi.com版权所有

    扩展I/O接口必然要解决I/O接口的端口(寄存器)的编址、选址问题。每个通用接口部件都包含一组寄存器,CPU和外围设备进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口。一个双向工作的接口芯片通常有4个端口,如Z-80PlO有A数据端口、B数据端口、A控制端口和B控制端口。8255A有A、B、C三个数据端口和一个控制端口。计算机主机和外部之间的信息交换都是通过接口部件的I/O端口进行的。因此扩展的地址译码电路不仅要提供接口芯片的片选信号,而且还能对芯片内的I/O端口(寄存器)寻址。 本文来自www.eadianqi.com

    前面已介绍了I/O接口有两种编址方式,即与存储器独立编址和统一编址,今以独立编址为例,说明如何扩展I/O接口的地址译码。

本文来自www.eadianqi.com

    地址译码要用译码器,常用的译码器有2—4(四中选一)、3—8(八中选一)和4—16(十六中选一)译码器等。微机系统中最常采用的是74LSl38(3—8)译码器和74LSl55(双2—4)译码器。74LSl38的管脚图如图1所示。其译码功能是:A、B、C三个地址输入端分别输入000~111时,则~依次是低电平, 自动控制网www.eadianqi.com版权所有

自动控制网www.eadianqi.com版权所有

图1 74LS138管脚图 本文来自www.eadianqi.com

    例1:此例是采用8位的Z—80CPU的微机控制系统,按控制要求需扩展一个并行接口芯片PIO、一个计数器/定时器(CTC)、一个8位的A/D转换器(ADC0808)和一个8位的D/A转换器(DAC0832)。若指定它们的地址分别为40H~43H、44H~47H、58H和5CH,那么可以设计出如图所示的地址译码电路。

自动控制网www.eadianqi.com版权所有

    图中,独立编址方式片选信号只利用地址总线的低8位()译出,为了区别是访问存储器还是访问I/O接口,信号是必须用的。同时为了控制数据流向也要使用读()、写()信号。但是Z—80PIO和Z—80CTC芯片有些特殊,没有信号引脚,它是利用三个信号通过内部逻辑电路的组合而得到读、写、复位、中断响应等控制信号的。ADC0808只提供按58H地址的启动转换信号(START和ALE同时为“1”)并允许读出转换后的数据信号(OE=1)。DAC0832只提供按5CH地址的一次锁存信号,同时为“0”(ADC0808和DAC0832的原理、接线等。 自动控制网www.eadianqi.com版权所有

    为了准确的得到ADC0808和DAC0832的译码信号,使用了四或门74LS32和四或非门74LS02构成简单的逻辑电路。 本文来自www.eadianqi.com

自动控制网www.eadianqi.com版权所有

图2 I/O接口地址译码扩展 自动控制网www.eadianqi.com版权所有

    2、负载能力的扩展 本文来自www.eadianqi.com

    扩展的I/O接口和存储器的数据线都同时挂到CPU的数据总线上,各芯片的地址都要挂到CPU的地址线上,控制线也一样,要挂到CPU的控制总线上。计算机系统设计时,都考虑了各总线的驱动能力问题,CPU的数据、地址和控制总线都经过总线收发器(如74LS245)或缓冲器(如74L8244)才形成系统总线。因此,系统总线的负载能力较强。但是其负载能力还是有限的,不能无限制的增加,特别是当设计者自己设计微机控制系统时,更有必要考虑CPU各总线的负载能力。因为当负载过重时,各信号线的电压就会偏离正常值,“0”电平偏高,或“1”电平偏低,造成系统工作不稳定、抗干扰能力差,严重时甚至会损坏器件。因此总线负载能力的扩展也是I/O接口扩展设计中必须考虑的问题之一。 自动控制网www.eadianqi.com版权所有

    微机系统中,通常采用两种不同工艺制造的器件,即TTL器件和MOS器件(TTL又分标准TTL器件74XXX,和低功耗肖特基TTL器件74LSXXX)。它们之间级连使用,逻辑电平是一致的(“1”电平≥1.8V~3.8V,“0”电平≤0.8~0.3V),但功耗和驱动能力有差别。它们的输入输出电流,如表2—4所示。

本文来自www.eadianqi.com

    由表2可见,MOS器件的输入电流小,驱动能力也差。一个MOS器件只能带一个标准74XXX器件(约1.6 mA)或四个74LSXXX器件(4×0.4mA),但它可以驱动10个左右的MOS器件。通常,同类器件带8~10个没有问题,若超过了就要加驱动器。 自动控制网www.eadianqi.com版权所有

表2 TTL和MOS器件输入输出电流

本文来自www.eadianqi.com

器件
I              意义 本文来自www.eadianqi.com

74XXX

自动控制网www.eadianqi.com版权所有

74LSXXX

本文来自www.eadianqi.com

MOS 自动控制网www.eadianqi.com版权所有

I1H 自动控制网www.eadianqi.com版权所有

输入为高电平时的输入电流

本文来自www.eadianqi.com

40A

本文来自www.eadianqi.com

20A

本文来自www.eadianqi.com

10A 本文来自www.eadianqi.com

I1L 自动控制网www.eadianqi.com版权所有

输入为低电平时的输入电流

本文来自www.eadianqi.com

-1.6mA

自动控制网www.eadianqi.com版权所有

-0.4mA 自动控制网www.eadianqi.com版权所有

-0.1mA

本文来自www.eadianqi.com

I0H

自动控制网www.eadianqi.com版权所有

输出为高电平时的拉电流

本文来自www.eadianqi.com

-0.4mA 自动控制网www.eadianqi.com版权所有

-0.2~-1.2mA 自动控制网www.eadianqi.com版权所有

-0.2mA

自动控制网www.eadianqi.com版权所有

I0L 本文来自www.eadianqi.com

输出为的电平时的灌电流 自动控制网www.eadianqi.com版权所有

16mA 本文来自www.eadianqi.com

8~16mA

本文来自www.eadianqi.com

1.6mA 自动控制网www.eadianqi.com版权所有

    应用总线收发器可以提高总线驱动能力。Intel系列芯片的典型收发器为8286,是8位的。所以,在数据总线为8位的8088系统中,只用一片8286就可以构成数据总线收发器,而在数据总线为16位的8086系统中,则要用2片8286。

本文来自www.eadianqi.com

    从图3中,可以看到8286具有两组对称的数据引线,~为输入数据线,为输出数据线,当然,由于在收发器中数据是双向传输的,所以实际上输入线和输出线也可以交换。用T表示的引脚信号就是用来控制数据传输方向的。当T=1时,就使为输入线,当T=0时,则使为输入线。在系统中,T端和CPU的DT/R端相连,DT/为数据收发信号。当CPU进行数据输出时,DT/为高电平,于是数据流由进入,从

本文已影响