标题: 扩展芯片IO口的计算方法 [打印本页]

作者: auy    时间: 2013-7-9 16:38
标题: 扩展芯片IO口的计算方法
请介绍扩展芯片IO口的计算方法。89c52的p2.5、p2.6、p2.7接74138的A0、A1、A2,74138的Y5、Y6分别接扩展芯片的82c79的CS(81C55的CE),请问地址如何计算。
作者: ahshmj    时间: 2013-7-9 17:41
本帖最后由 ahshmj 于 2013-7-9 17:47 编辑

如果不考虑138的/E1、/E2、 E3,仅就A0、A1、A2的编码,138输出端y5的地址是10100000~10111111(只要保持高3位为101即可,其余位无关,任意)(0xA0~0XBF)、y6的地址是11000000~11011111(0XC0~0XDF)(高0位为110即可)。以上仅为高8位,也就是P2口的编码。低8位(P0)也是无关。
注意:A2接P2.7,A1接P2.6......

作者: auy    时间: 2013-7-9 18:11
本帖最后由 auy 于 2013-7-9 18:19 编辑

谢谢回答!对不起我没有说清楚。138的/E1、/E2接地,E3接5v电源,会是什么结果呢?
作者: auy    时间: 2013-7-9 18:51
本帖最后由 auy 于 2013-7-10 07:43 编辑

是不是这样的结果:138输出端y5的地址是0x4a~0x4bf,y6的地址是0x4c~0x4df.(自作聪明,哈哈)
作者: ahshmj    时间: 2013-7-14 11:03
本帖最后由 ahshmj 于 2013-7-14 11:05 编辑
auy 发表于 2013-7-9 18:51
是不是这样的结果:138输出端y5的地址是0x4a~0x4bf,y6的地址是0x4c~0x4df.(自作聪明,哈哈)

错的远了!

上面讲的很清楚了。A0、A1、A2,3位的2进制编码  =0(000),是Y0有效;=1(001)是Y1有效......=5是Y5(101)有效,=6(110)是y6有效;=7(111)是Y7有效。

如果使用P2口控制74hc138,那么地址都是16位的。你这里仅仅和高3位有关其余无关,分别对应A0、A1、A2。P2口的其余位和P0口的所有位都无关,可以任意。

/E1、/E2是低电位有效,E3是高电位有效。如果照你的接法,是固定始终有效。当然也可以使用单片机I/O控制。
作者: 乐儿翅    时间: 2020-7-28 10:26
单片bai机的输入IO口扩展可以通过du以下方法来实现:1、通过并zhi行扩展芯片,比如8255 ,8155等。2、通过锁存器或缓冲dao器来扩展,比如74LS273,74LS373,74LS244,74LS245等等3、通过串口-并口来扩展,比如74HC595,74HC164等等。4、通过译码器来扩展,比如74HC138,74HC154等等。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1