编码器、译码器位的扩展及应用
扫描二维码
随时随地手机看文章
0 引 言
随着现代电子技术的发展,编码器、译码器作为最基本的电子元器件之一,其应用领域越来越广泛,例如光栅尺、旋转编码器、单片机的I/O等。同时,也正是其应用领域的不断扩展,现有的编码、译码芯片已远远不能满足需求,现在需要的是多位数据信号的编码、译码,为此,有必要对编码器、译码器位的扩展做进一步研究。
1 编码器位的扩展
表1,图1给出了74LS148的功能表和逻辑符号图。
由此不难看出,在EI=0电路正常工作状态下,允许I0~I7当中同时有几个输入端为低电平,I7的优先权最高,I0的优先权最低。当I7=0时,无论其他输入端有无输入信号(表中以X表示),输出端只给出I7的编码,当I7=1,I6=0时,无论其他输入端有无输入信号,只对I6编码。其余的输入状态类同。
由图2可知,该编码扩展电路的编码功能主要还是由74LS148优先编码器来实现的,之所以编码位数能够扩展,是因为编码器芯片的增加,但关键是如何准确地选择要工作的芯片。也就是说,这8片芯片并非同时进行编码,实际上每次对信号进行编码时,有且只有其中的一个芯片在进行编码工作,而其他的芯片则是处于禁止工作状态,只要正确选择要工作的编码芯片,就可以正确地将信号进行编码。例如,当编码器7的输入端(以I7为例)有输入信号时,由于EI.H为低电平,编码器7的选通输入端有效,所以编码器7的输出端有编码信号输出,即Y2Y1Y0=000;同时编码器7的选通输出端E0.7将输出高电平,GS.7输出低电平,并且EO.7的一条支路接到编码器6的选通输入端,禁止编码器6输出,另一条支路接到或门T6的输入端,使T6输出高电平,然后T6的输出又导致或门T5输出高电平,依次下去,或门T4~T0的输出都变成高电平,与之相应,编码器5~编码器0将被禁止工作,E0.H输出为高电平。也就是说,只要编码器7有编码信号输出,其他的编码器将禁止编码。与此同时,编码器7的输出端Y2,Y1,Y0及选通输出端GS.7分别经与门电路T7,T8,T9,T10,T11,T12,T13运算后,使得编码扩展电路的输出端A5A4A3A2A1A0=000000.E0.H=1,GS.H=0,从而形成对编码器7输入信号I7的整个编码过程。再如,当编码器6的输入端(以I7为例)有输入信号时(编码器7无输入信号,其他编码器的输入为任意),虽然编码器7的选通输入端有效,但编码器7的所有输人端无输入信号,故编码器7的选通输出端EO.7将输出低电平,GS.6输出高电平,于是导致编码器6的选通输入端有效,将对其I7输入端信号进行编码并输出,则有编码器6的输出端Y2Y1Y0=000,编码器6的选通输出端EO.6将输出高电平,GS.6输出低电平,同时或门T0~T6的输出都将变成高电平,编码器0~编码器5的输入端无论输入什么信号,都将无效,而最终输出结果为A5A4A3A2A1A0=001000,E0.H=1,GS=0。即形成了对编码器6的输入端I7的编码过程。其他状态的编码过程可依据编码扩展电路图自行分析。
此外,该编码扩展电路可等效成为一片74LS148编码器芯片,即编码扩展电路的输入口——编码器0~编码器7的64个输入口等效于74LS148的8个输入口,编码扩展电路的6个输出口等效于74LS148的3个输出口,编码扩展电路的选通输入端EI.H等效于74LS148的选通输入端EI,编码扩展电路的选通输出端GS.H,E0.H等效于74LS148的选通输出端GS,EO,如图3所示。
2 译码器(74LS138)位的扩展
表2,图4给出74LS138译码器的功能表和逻辑符号图。当S1=1,S2+S3=0时,译码器处于工作状态;否则,译码器被禁止,所有的输出端被封锁为高电平,这3个控制端也叫“片选”输入端。在此,也正是利用这些输入端来扩展译码器位的。图5给出是由9片74LS138译码器芯片组成的6线-64线译码电路。图中译码器H的控制线S1.H,S2.H,S3.H是该译码扩展电路的总控制线。此外,该译码扩展电路的输出端信号是以低平为有效信号的。下面就该译码扩展电路做一分析(在以下分析中令控制线S1.H=1,S2.H+S3.H=0)。
假定译码扩展电路的输入15141312I1I0=000000,首先I5,I4,I3引到译码器H的输入端,由于S1.H=1,S2.H+S3.H=0,所以译码器H先进行译码,并使其输出Y7Y6Y5Y4Y3Y2Y1Y0=11111110,其输出端Y0又引到译码器0的控制线S2,S3,从而使译码器0开始对其输入端信号I2,I1,I0进行译码,并使其输出Y7Y6Y5Y4Y3Y2Y1Y0=11111110。另一方面,由于译码器H的其他输出端Y7,Y6,Y5,Y4,Y3,Y2,Y1为高电平,导致译码器7,译码器6,…,译码器1都被禁止。到此为止,该译码扩展电路的译码工作完成,即当译码扩展电路的输入端I5I4I3I2I1I0=000000时,译码器0的输出端Y0有有效信号输出。再假定译码扩展电路的输入端I5I4I3I2I1i0=001000,那么译码器H输出Y7Y6Y5Y4Y3Y2Y1Y0=11111101,译码器1将被选中,并对其输入信号进行译码,最终译码器1的输出端Y0有有效信号输出。依次分析下去可知,该译码扩展电路的输入端I5I4I3I2I1I0从000000~111111的每一个信号,都将有惟一的有效输出与之相对应。
图6是译码扩展电路与74LS138的等效简图,即译码扩展电路的6个输人口等效于74LS138的3个输入口,译码扩展电路的控制线S1.H,S2.H,S3.H等效于74LS138的控制线S1,S2,S3,译码扩展电路的输出口——译码器0~译码器7的64个输出口等效于74LS138的8个输出口。
3 编码、译码扩展电路的应用
所谓编码、译码位的扩展,其位不仅仅只是扩展到64位,即使再多位的扩展都是能实现的,只不过是多用几片芯片而已。实际上往往会遇到这些问题,如可能会需要将编码、译码的位扩展到72位、80位、88位、96位等,其处理方法相同。下面应用说明编码、译码扩展电路在一些具体电子电路中的应用。
3.1 由编码扩展电路组成的键盘接口
在单片机应用系统中,键盘是人机交互的重要组成部分,用于向单片机应用系统输入数据或控制信息。而传统的键盘接口则主要是采用矩阵的结构,故占用的单片机I/O口较多,而且扫描程序又比较繁琐。为了解决这些问题,将对另一种键盘接口结构做一分析,即由编码扩展电路组成的键盘接口。图7是由编码扩展电路组成的键盘接口硬件电路,它只用了单片机的6个口就可采集到64个键盘输入信号。而单片机对键盘信号的采集可采用程序扫描、定时扫描和中断扫描三种方式。
3.2 由译码扩展电路组成的顺序脉冲发生器
图8是由译码扩展电路组成的32位顺序脉冲发生器的原理图。74LS161与T触发器组成了32位加法计数器,由Q,Q3,Q2,Q1,QO输出。译码扩展电路用于对QQ3Q2Q1QO进行译码,从而在译码扩展电路的输出端产生顺序脉冲。此外,只有在S2.H,S3.H为低电平时,该电路才可正常工作。还有一点要注意的是,计数器74LS161的边沿脉冲CP之所以要通过非门接到译码扩展电路的选通输入端S1.H上,其目的是为了消除译码扩展电路中各个译码芯片因传输时间不一致而产生的竞争一冒险现象。
4 结 语
无论是多么复杂的编码、译码电路,其实都可以等效为简单的编码译码模型,从而使其设计思路简单化。可以说,在实际应用中的某些复杂电子电路的设计,都可以通过这一模型来取代。