找回密码
 注册
关于网站域名变更的通知
查看: 323|回复: 1
打印 上一主题 下一主题

简单的单片机I/O口扩展实例

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-4 10:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
简单的单片机I/O口扩展实例: Z( V- P# T) }- j6 u# t1 ?& l
6 Y, h, Z$ n5 J, Z0 I, z' N0 p) X

- |8 d) d. i" W& s. S$ L

扩展实例

简单的I/O口扩展通常是采用TTL或CMOS电路锁存器、三态门等作为扩展芯片,通过P0口来实现扩展的一种方案。它具有电路简单、成本低、配置灵活的特点。下图为采用74LS244作为扩展输入、74LS273作为扩展输出的简单I/O口扩展。

芯片及连线说明

图中电路中采用的芯片为TTL电路74LS244、74LS273。其中,74LS244为8缓冲线驱动器(三态输出),、为低电平有效的使能端。当二者之一为高电平时,输出为三态。74LS273为8D触发器,为低电平有效的清除端。当=0时,输出全为0且与其它输入端无关;CP端是时钟信号,当CP由低电平向高电平跳变时刻,D端输入数据传送到Q输出端。P0口作为双向8位数据线,既能够从74LS244输入数据,又能够从74LS273输出数据。输入控制信号由P2.0和相“或”后形成。当二者都为0时,74LS244的控制端有效,选通74LS244,外部的信息输入到P0数据总线上。当与74LS244相连的按键都没有按下时,输入全为1,若按下某键,则所在线输入为0。输出控制信号由P2.0和相“或”后形成。当二者都为0后,74LS273的控制端有效,选通74LS273,P0上的数据锁存到74LS273的

输出端,控制发光二极管LED,当某线输出为0时,相应的LED发光。

 I/O口地址确定

因为74LS244和74LS273都是在P2.0为0时被选通的,所以二者的口地址都为FEFFH(这个地址不是惟一的,只要保证P2.0=0,其它地址位无关)。但是由于分别由和控制,因而两个信号不可能同时为0(执行输入指令,如MOVX A,@DPTR或MOVX A,@Ri时,有效;执行输出指令,如MOVX @DPTR,A或MOVX @Ri,A时,有效),所以逻辑上二者不会发生冲突。


: F; r" Y5 X$ Z

该用户从未签到

2#
发表于 2019-3-4 11:13 | 只看该作者
学习一下,谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-18 06:32 , Processed in 0.109375 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表