七段 LED 数码管译码器
在前面, 通过创建子电路的方式, 我们封装了一个 LED 数码管的译码模块, 这个模块可以与加法器电路结合起来, 最终形成一个完整的输入, 译码显示, 运算, 输出的完整的简易加法演示电路:
使用门电路, 子电路并带显示的简易加法器 在线可互动操作示例
所封装的显示译码模块是支持显示 0~7 8 个不同数字的. 但目前来说, 输入只有一位, 因此只接入最低位的 C, 其它两位 A, B 不接保持低位(也可以显式接入低位逻辑输入或是接地);
输出有两位, 因此只接入两位 B 和 C, A 未使用. 就目前来说, 显示是绰绰有余了, 但后续随着组建更复杂的多位加法器, 最终的结果会超出 7, 我们模块就不足以应付了.
当然, 我们可以继续修改所封装的译码电路, 使之支持更多数字的显示. 不过, 对于 LED 显示译码的这种常见需求, 模拟器同样内置了一个译码器. 通过 菜单--绘制--数字芯片--添加 7 段译码器
可以添加一个内置的译码器:
它支持四位的输入, 从高到低分别为 I3, I2, I1, I0, 因此可以显示 0~15 16 个不同数字.
注: 9 以后的数字是使用字母表示的 十六进制 数字.
下面是用它显示 0 和 9 的一个示例:
内置7段译码器译码显示 0 和 9 在线可互动操作示例
有了它, 就无需使用我们自己封装的显示译码模块. 应该说, 先前创建此模块更多是为了演示数字电路的一些设计技巧.
如果你已经掌握了这些技巧, 显示更多的数字只不过是需要更复杂一点的电路组合而已, 如果你有兴趣, 你可以自己在课余尝试实现一个能支持显示 0~9 的电路.
另: 系统自带的 7 段 LED 数码管其实还可以从普通的 7 段拓展为 14 段乃至 16 段:
对于这些 14 段乃至 16 段数码管, 模拟器就没有自带译码器了.
作为练习, 你可以自行查找资料了解这些数码管的行为, 并尝试为其设计相应的译码电路.