使用三八译码器制作流水灯.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用三八译码器制作流水灯 在单片机日常应用过程中,往往会遇见I/O 口不够用的情况。因 此经常会用一些硬件来扩展I/O 接口,根据使用场合的不同,使用不 同的硬件进行扩展。流水灯是经常遇到的应用场景,下面就以流水灯 为例,对单片机I/O 口进行扩展。 常规流水灯电路如下图所示。通过图1 可以看出,单片机控制8 个LED 发光二极管的亮灭状态。每个LED 需要1 个I/O 口,在本例 中单片机控制了8 个LED ,因此需要8 个I/O 引脚。如果控制更多个 数的流水灯,则需要更多的I/O 引脚。采用这种控制方式,单片机最 多只能控制32 个LED ,因为单片机只有32 个I/O 引脚。 图1 常规流水灯电路 对于流水灯这种效果,我们可以采用译码器进行I/O 口的扩展。 这里以三八译码器进行讲解。首先我们来认识一下三八译码器。这里 1 以74LS138 为例,三八译码器仿真电路图如图2 所示。三八译码器可 以将该芯片三个输入引脚的输入状态通过译码后反馈到8 个输出引 3 脚。因此成为三八译码器。三个引脚的状态为2 =8 ,因此输出引脚有 8 个。三八译码器的真值表如表1 所示。 图2 74LS138 仿真电路图 表1 三八译码器真值表 E 1 E2 E3 A B C Y0 Y 1 Y2 Y3 Y4 Y5 Y6 Y7 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 0 0 1 1 0 1 1 1 1 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 0 2 芯片中引脚A 、B 、C 是输入引脚,引脚Y0~Y7 是输出引脚。对 于正常工作的芯片,E1 必须接高电平,E2 和E3 必须接低电平。 通过三八译码器来拓展单片机的I/O 接口,从而实现使用更少的 引脚实验流水灯的实验效果,电路图如图3 所示。 图3 三八译码器拓展I/O 口 编程思路: 单片机P2.0~P2.2 接口连接译码器的A~C 。通过控制P2.0~P2.2 的输出状态,就可以控制8 个LED 的点亮与熄灭状态。只要按照真 值表的顺序,控制P2.0~P2.2 的状态,就可以实现8 个LED 灯循环点 亮并闪烁的状态。 在编程的过程中,可以采用直接对P2 口赋值的方式来进行编程。 这种方式编程思路简单,不需动脑筋,也不容易出错。只需要根据真 值表对P2.0~P2.2 口进行赋值即可。部分参考程序如下: MOV P2, ;将P2.0~P2.2 赋值为0,0,0

文档评论(0)

189****5876 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档