历史上的今天
今天是:2025年03月09日(星期日)
2018年03月09日 | 利用74LSTTL电路扩展并行I/O口
2018-03-09 来源:eefocus
在AT89S51单片机应用系统中,有些场合需要降低成本、缩小体积,这时采用TTL电路、CMOS电路锁存器或三态门电路也可构成各种类型的简单输入/输出口。通常这种I/O都是通过PO口扩展。由于PO口只能分时复用,故构成输出口时,接丑一芯片应具有锁存功能;构成输入口时,要求接口芯片应能三态缓冲或锁存选通,数据的输入、输出由单片机的读/写信号控制。
下图所示为一个利用74LS244和74LS273芯片,将PO口扩展成简单的输入/输出口的电路。74LS244和74LS273的工作受AT89S51单片机的P2.O、RD、WR 3条控制线控制。74LS244是缓冲驱动器,作为扩展输入口,它的8个输入端分别接8个按钮开关。74LS273是8D锁存器扩展输出口,输出端接8个LED发光二极管,以显示8个按钮开关状态。当某条输人口线的按钮开关按下时,该输入口线为低电平,读入单片机后,其相应位为0,然后再将口线的状态经74LS273输出,某位低电平时二极管发光,从而显示出按下的按钮开关的位置。

该电路的工作原理如下:
当P2.0=0,RD(的反)=0(WR(的反)=l)时,选中74LS244芯片,此时若无按钮开关按下,输入全为高电平。当某开关按下时则对应位输入为0,74LS244的输入端不全为1,其输入状态通过Po口数据线被读入AT89S51单片机片内。
当P2.0=0,WR(的反)=0(RD(的反)=1)时,选中74LS273芯片,CPU通过PO口输出数据锁存到74LS273,74LS273的输出端低电平位对应的LED发光二极管点亮。
总之,在图9-20中只要保证P2.0为0,其他地址位或0或1即可。如地址用FEFFH(无效位全为1),或用0000H(无效位全为0)都可。

例1:编写程序把按钮开关状态通过上图中的发光二极管显示出来。程序如下:

由以上程序可以看出,对于所扩展接口的输入/输出就像从外部RAM读/写数据一样方便。上图仅仅扩展了两片,如果仍不够用,还可扩展多片74LS244、74LS273之类的芯片。但作为输入口时,一定要求有三态功能,否则将影响总线的正常工作。
史海拾趣
|
1 引言 汽车仪表是驾驶员与汽车的信息交流界面,对汽车安全以及经济行驶具有重要作用。近年来,随着汽车电子技术的发展,汽车仪表显示信息也不断增加,而传统机械指针式汽车组合仪表则无法满足现在使用需求。特别是计算机、微电子和 ...… 查看全部问答> |
|
extern ROMChain_t *OEMRomChain; 这段编译错误 在eboot main.c 添加 multibin xip 过程中, 添加 InitRomChain() 函数中,引用了 全局变量 extern ROMChain_t *OEMRomChain; OEMRomChain 指针对应是 public\\common\\oak\\inc\\Bcoemglobal.h 文件中 #define OEMRomChain g_pOemGlobal->pRO ...… 查看全部问答> |
|
个人求有PHS基站控制器软件开发经验辅导老师(可兼职,深圳) 本人欲从事PHS基站控制器软件开发,因无此方面的经验,想请位有这方面经验的辅导老师。 主要工作是帮助本人分析一个现有PHS基站控制器软件源程序,然后修正程序中的一些BUG。 时间方面可以是灵活按排(工作日、业余均可),报酬可以按时/日/周/月等 ...… 查看全部问答> |
|
请问linuxlogo默认是在左上角显示的,现在要求显示到右下角,并且企鹅图像倒置 相当于把默认显示转180度,请问这个哪里可以改。 可以修改fbcon.c吗?新人求救!!… 查看全部问答> |
|
各位大侠们,麻烦帮忙看看这个例子,是我毕业设计的题目,由于单片机C编程学得不精,这几天一直在调程序都没法调出来,还请各位大虾们帮帮忙!万分感激!!! 硬件实现功能: 1、从机U2按键按下,在本机显示,同时将按键值送往主机U1,在主机显示 ...… 查看全部问答> |
|
中*美*爱*梯*科*技, .NET外企软件工程师班将于2007年9月10日开课, 开课第一周免费试听, 欢迎大家踊跃报名参加! 中*美*爱*梯*科*技向学员郑重承诺: 百分之百保证就业, 月薪3000——8000, 就不了业者退还全部学费! ...… 查看全部问答> |
|
1,#define IS_GPIO_MODE(MODE) (((MODE) == GPIO_Mode_AIN) || ((MODE) == GPIO_Mode_IN_FLOATING) || ;请问这个加了红色背景的是什么意思;特别是IS—是什么意思,后面这一句是什么意思… 查看全部问答> |




