分享

使用74系列芯片作为I/O并行扩展的方法以及总线驱动芯片的使用方法

 360tsgyd 2018-04-28

https://blog.csdn.net/mybirdsky/article/details/2049400

使用74系列芯片作为I/O并行扩展的常见于过去单片机I/O口不够的情况,而且是需要大量的内存和程序存储器严重不足的情况下。

开关量输出的扩展经常使用的芯片是74LS273/74LS373/74LS573/74LS574;这些芯片的共同特点是具有数据锁存的功能;

开关量输入的扩展经常使用的芯片是74LS244/74LS245/74LS240等;这些芯片的特点是三态门,可以把多个芯片的输出,并联在一起而不会互相影响;

通过138139153等译码选通芯片,把RD/WR/地址的高位信号(高3位或者高4位,看单片机系统中的芯片的数量)接到译码芯片,把译码芯片的输出接到锁存器的锁存输入,或者缓冲器的选通输入。下面以74LS138为例。

要特别注意到,对245574273等使用TTL芯片以RAM方式做I/O扩展的,跟825581558253825162256等系列芯片不一样的地方,就是:

1825581558253825162256等芯片本身有wrrdce等信号,所以138的地址译码输出,可以直接接到CE;但是,245574273等芯片,没有wr或者rd信号,因此,如果系统中有这样的芯片扩展,就需要把wr或者rd加入到138中;

2)对于245或者244,要把数据读到数据总线上,芯片的数据的使能端必须是WR和地址译码数据的混和;

3)对于要把数据总线上的数据,锁存到574或者273的数据输出端口上,必须锁存器的LE,是地址和wr的混和;

因此,138的接法是:

1A15-》138A23

2A14-》138A12

3A13-》138A01

4RDWR74LS0000的输出接138E3(6)

5138的输出接245E或者574CLK

这样,使用 MOVX a@dptr的时候,才能在245E上出现带地址的RD信号;

使用 MOVX @dptr,A的时候,才能在574CLK上出现带地址的WR信号;

参见574的真值表,可见,E应该接低电平;

373573273574有所区别:

1573是从低-》高-》低,在从高-》低的瞬间,锁存数据;但是,在高电平的时候,数据是直通的,所以也可以使用这个特性做缓冲器,把LE直接接高电平;OE是三态门,直接接地;

2、但是138的输出是,当地址的输入有效的时候,是低电平,其它时间是高电平,所以在时序上跟573是不配合的,因此,573不能作为数据锁存器,除非138的输出加一个反向门接到LE

574是上升沿锁存数据,138的输出直接作为锁存脉冲即可;

如果系统中没有825581558253825162256这样的芯片,也可以使用139RDwr分别接入一个2-4译码器,译码器的输出分别接到245E574LE,这样可以省去一个74LS00

地址、数据、RDWR等时序是51MOVX a@dptr或者MOVX @dptr,A时自动产生的。

245244不具备锁存的功能,具备选通输入或者输出的功能,所以可以作为扩展I/O输入;

245244同时作为总线芯片的另外一个特点是驱动能力加强了,可以提供比较大的输出电流,所以经常用来直接驱动光耦、发光管等,也可以用于驱动微型的继电器!

也可以利用三态门的选通功能,把作为多个子板(地址不同)的输出并联在一起,

三态门芯片主要是74LS24574LS24474LS240;还有一些芯片但是不怎么常用;

1、数据总线:

只能使用74LS245,因为数据总线是双向的;而74LS245是双向的总线驱动器,有一个芯片管脚DIR是控制方向的;

2、地址总线

使用74LS244,也可以使用74LS245,因为245的输入输出排列在芯片一侧,比较好布线

74LS240比较少使用到,因为它是反向的。

244245作为数据总线和地址总线芯片使用在:

1、电路板上大量使用TTL芯片,比如,74LS57474LS27374LS24574LS244作为I/O并行扩展;因为芯片比较多,单片机的数据和地址总线驱动能力比较弱,无法带动这么大的负载;

而且,往往电路板的面积比较大,线路比较长;使用总线驱动芯片成了唯一的选择;

2、多板结构的仪器或者设备,例如STD总线的CPU模板和其它的接口模板;还有ISA总线的板卡,尤其是工控行业的ISA总线的I/O板,更是经常看见一片74LS245;这是作为数据总线驱动芯片的;

3、也可以利用三态门的选通功能,把作为多个子板(地址不同)的输出并联在一起

例如在我设计的一个多板的系统中,每个板子有2位的地址;一共有16个输出;

每个电路板根据地址选择其中的4路输出;其它的12路为高阻态。

通过拨码开关作为地址选择输出是哪4路;

然后把这4块的电路板的输出通过背板并联接到一个CPU板进行处理,解决了这4块同样的电路板输出并联在一起的问题。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多