数字电子技术基础(三十七)——利用Multisim软件实现16线-4线编码器和4线-16线译码器
1 利用Multisim软件来实现16线-4线编码器
在之前的博客中完成了利用Multisim软件实现8线-3线优先编码器,现在使用Multisim软件来实现16线-4线编码器,其原理图如下所示:

使用字发生器来实现16线-4线编码器,器件选择:
- 芯片选择:组选项栏中选择TTL,系列选项栏中选择74LS,在元器件选项栏中选择74LS138N,然后逆时针旋转90°放置;复制粘贴该芯片,将另一个并行放置。
- LED选择:组选项栏中选择Diodes,系列选项栏中选择LED,在元器件中选择LED_BLUE_FOUR。鼠标左键点击LED灯,将值项下面的通态电流5mA设置为10mA。
- 电阻选择:组选项栏中选择Basic,系列选项栏中选择RESISTOR,阻值选择300Ω,选择合适位置放置之后,复制粘贴电阻并行放置4个。
- 门电路选择:在组选项栏中选择TTL,在系列项中选择74LS,在元器件选项栏中选择74LS00N的与非门,选择在芯片和LED灯中间的位置放置后顺时针旋转90°,复制粘贴并排放置三个。然后在相同系列选项栏中,选择74LS04N的反相器放置和与非门并排放置。
- 电源选择:组选项栏中选择Sources,系列选项栏中选择POWER_SOURCES,在元器件选项栏中选择GROUND作为接地,将元器件放置在电阻下面。复制粘贴GROUND另一个放置在第二个芯片旁边。
- 字发生器选择:将字发生器放置在第一个芯片的旁边,将字发生器引脚0的一端靠近第一个芯片。
选择合适的位置放置如下所示:

将电阻一端全部接地,另一端全部接LED灯,分别与LED灯一端的引脚相对应,LED灯的另一端接与非门和非门的输出端;字发生器的引脚0~7接芯片U1的引脚D0~D7,字发生器的引脚8~15接芯片U2的D0~D7;芯片U1和芯片U2的引脚A、B、C分别接3与非门的一端,其中两个芯片的引脚A接同一个与非门,引脚B接同一个与非门,引脚C接同一个与非门;芯片U2的引脚GS接非门的输入端,芯片U2的引脚EI接地;芯片U2的EO端接芯片U1的EI端;子发生器的输入范围为1111111111111110~0111111111111111,子发生器有16个,每个数都有一位为0,并且16个数中0的位置都不同。
最终的电路如下所示:

运行该电路,当输入0的引脚是第一个芯片从右向左数第4个,则低8位芯片的引脚D4是有效输入,运行示意图如下所示:

可以看到,LED灯显示的是11,D4所对应的数为3,则符合运行结果。
当输入0的引脚为高8位芯片从左向右数第6个,即全部输入从右向左数的第11位,即高8位芯片的引脚D3为有效输入,如下图所示:

可以看到LED灯输出的是1010,即十进制的10,通过验证输出正确。
2 利用Multisim软件来实现4线-16线译码器
在上一篇的博客中完成了利用Multisim软件实现对于3线-8线译码器,现在同样使用Multisim软件实现4线-16线译码器,其原理图如下所示:

如下所示即为4线-16线译码器的原理图,下面尝试使用Multisim软件进行输入。
2.1 使用手动输入方式实现4线-16线译码器
器件选择:
- 芯片选择:组选项栏中选择TTL,系列选项栏选择74LS,在元器件项选择74LS138N。然后将其顺时针旋转90°,然后复制粘贴,为了便于观察将两个芯片并排放置。
- LED选择:组选项栏中选择Diodes,系列选项栏中选择LED,在元器件中选择BAR_LED_RED。鼠标左键点击LED灯,将值项下面的通态电流的5mA设置为10mA。然后复制粘贴将连个LED灯并排放置。
- 电源选择:组选项栏中选择Sources,系列选项栏中选择POWER_SOURCES,在元器件中选择VCC作为电源;同时在相同的系列选项栏中,在元器件中选择GROUND作为接地,同时将接地复制,在第二块74LS138N芯片旁边放置第二节接地装置。
- 电阻选择:组选项栏中选择Basic,系列选项栏中选择RESISTOR,阻值选择300Ω,选择合适位置放置之后,复制粘贴电阻并行放置16个。
- 开关选择:组选项栏中选择Basic,系列选项栏中选择SWITCH,在元器中选择SPDT。选择合适的位置后进行水平翻转,复制粘贴开关并列放4个。
放置好调整位置如下所示:

电阻的一端全部接地,另一端接LED的一端,LED的另一端接芯片U1和U2的输出端;四个开关右侧上端全部接电源,下端全部接地,S1、S2、S3个开关的左端接芯片U1和芯片U2的输入端,其中开关S1接芯片U1和芯片U2的引脚A,开关S2接芯片U1和芯片U2的引脚B,开关S3接芯片U1和芯片U2的引脚C,开关S4接芯片U1的引脚~G2A和引脚~G2B、芯片U2的引脚G1;芯片U1的引脚G1接高电平,芯片U2的引脚~G2A、引脚~G2B接地。
最终连接电路如下所示:

在上图中四个开关S4、S3、S2、S1所对应的原理图中的电路为、
、
、
,下面开始运行该电路。
(1)当、
、
、
时,即开关S4和S3接低电平,开关S1和S2接高电平,此时运行结果如下所示:

通过运行结果可以看到,LED1灯从右向左第四个灯是灭的,对应输出的二进制为0011,对应的十进制数为3,运行结果正确。
(2)当、
、
、
时,即开关S4和S1接低电平,开关S2和S3接高电平,此时运行结果如下所示:

通过结果可以看到,LED1从右向左数的第7个灯是灭的,对应输出的二进制数为0110,对应的十进制为6,运行结果正确。
(3)当、
、
、
,即开关S1、S2、S3接低电平,开关S4接高电平,此时运行结果如下所示:

通过结果可以看到,LED2从右向左数的第1个灯是灭的,对应输出的二进制数为1000,对应的十进制为8,运行结果正确。
(4)当、
、
、
,即开关S2接低电平,开关S1、S3、S4接高电平,此时的运行结果如下所示:

通过结果可以看到,LED2从右向左数的第6灯是灭的,对应输出的二进制为1101,对应的十进制为8,运行结果正确。
2.2 使用字发生器实现4线-16线译码器
除了使用手动输入的方式实现了4线-16线译码器,还可以使用字发生器来实现4线-16线译码器。在原来手动输入的电路图的基础上,使用S1~S4几个开关以及连接这几个开关的线路删除,将电源移动到两个74LS138N芯片的中间,然后在软件右侧选择字发生器放置到第一片74LS138N芯片的右边,并且将其水平翻转。如下图所示:

之后开始连线,将字发生器的引脚1连接芯片U1的引脚A和芯片U2的引脚A,将字选择器的引脚2连接芯片U1的引脚B和芯片U2的引脚B,将字选择器的引脚3连接芯片U1的引脚C和芯片U2的引脚C,电源接芯片U1的引脚G1,字发生器的引脚4连接芯片U1的引脚~G2A、引脚~G2B和芯片U2的引脚G1。如下图所示:

左键点击字发生器,控件点击单步,显示点击二进制,将二进制的范围改为0000~1111,将1111设置为最终位置。如下所示:

开始运行:

可以看到,当字发生器输入0011,LED1从右向左数第4个灯灭,说明输出为3,输出正确。

当字发生器输入1001,LED2从右向左数第2个灯灭,说明输出9,输出正确。
通过电路运行结果可知道4线-16线译码器的电路连接正确。
相关文章:
数字电子技术基础(三十七)——利用Multisim软件实现16线-4线编码器和4线-16线译码器
1 利用Multisim软件来实现16线-4线编码器 在之前的博客中完成了利用Multisim软件实现8线-3线优先编码器,现在使用Multisim软件来实现16线-4线编码器,其原理图如下所示: 使用字发生器来实现16线-4线编码器,器件选择: …...
02_MySQL安装及配置
文章目录 一、下载二、安装及配置2.1、选择安装类型2.2、检查需要的依赖2.3、安装2.4、配置2.4.1、配置类型和网络2.4.2、配置账户和角色2.4.3、配置Windows服务2.4.4、让配置生效 2.5、验证是否安装成功 三、卸载3.1、运行MySQL安装工具3.2、卸载及清理3.3、卸载之后的检查工作…...
Windows11,微软软件(VSCODE/EDG)错误登录,0x80190001错误
修改网络设置 运行以下命令,打开网络共享中心 Start-Process "control.exe" -ArgumentList "/name Microsoft.NetworkAndSharingCenter" 点击左下角的 选项 TLS 1.1 1.2 1.3 这三个选项 1.0 不建议启用,不安全 1.1 可以不用启用…...
WPF 浅述IsHitTestVisible属性
WPF 浅述IsHitTestVisible属性 IsHitTestVisible 属性是 WPF 中一个非常重要的属性,它决定了一个控件是否可以作为 hit test 的一部分被检测到。理解这个属性对于处理交互事件(如鼠标点击、触摸等)非常重要。 IsHitTestVisible 属性的含义&am…...
力扣刷题-热题100题-第29题(c++、python)
19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode)https://leetcode.cn/problems/remove-nth-node-from-end-of-list/description/?envTypestudy-plan-v2&envIdtop-100-liked 计算链表长度 对于链表,难的就是不知道有多少元素ÿ…...
NLP高频面试题(三十)——LLama系列模型介绍,包括LLama LLama2和LLama3
本文深入介绍Meta推出的LLama系列模型,包括LLama、LLama2和LLama3,探讨了它们的技术创新、应用场景以及对大语言模型发展的重要推动作用。通过系统地回顾各代模型的进化过程,分析其核心特性与技术亮点,为读者提供全面且深入的理解…...
torch.nn.Conv2d介绍——Pytorch中的二维卷积层
torch.nn.Conv2d是torch.nn模块中的二维卷积层类,用于构建神经网络中的二维卷积层。 1、基本语法 torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride1, padding0, dilation1, groups1, biasTrue, padding_modezeros, deviceNone, dtypeNone)将 2D …...
阻止上传可执行程序
点击工具中的文件服务器资源管理器 、然后点击文件屏蔽管理中的文件屏蔽,然后导入目标文件选择要限制的属性即可...
DirectX修复工具免费版下载安装教程(附安装包)
文章目录 前言一、DirectX修复工具免费版介绍二、DirectX修复工具免费版安装教程1. 下载安装包2. 解压文件3. 以管理员身份运行4. 开始检测与修复5. 查看修复详情 前言 本教程主要介绍的是DirectX修复工具免费版下载安装教程,帮您轻松解决 DirectX 相关问题。 一、…...
UE5学习笔记 FPS游戏制作33 游戏保存
文章目录 核心思想创建数据对象创建UIUI参数和方法打开UI存档文件的位置可以保存的数据类型 核心思想 UE自己有保存游戏的功能,核心节点,类似于json操作,需要一个数据类的对象来进行保存和读取 创建存档 加载存档 保存存档 创建数据对象…...
Git与SVN的区别以及各自的优势
前言:版本控制的诞生与意义 在软件开发的漫长历程中,代码的迭代与协作始终是核心挑战。从早期的“文件夹版本”到现代的分布式系统,版本控制系统(VCS)的进化史,本质上是人类对协作效率与数据安全的不懈追求…...
PipeWire 音频设计与实现分析三——日志子系统
日志子系统 PipeWire 的日志子系统的设计分为多个层次。PipeWire 用 struct spa_log 对象描述日志组件,用 struct spa_log_methods 对象描述日志组件打印各层级日志的多个方法。PipeWire 为日志子系统添加了 topic 机制,不同文件中的日志按功能以不同的…...
TypeScript vs. JavaScript:技术对比与核心差异解析
引言 在 Web 前端开发领域,JavaScript(JS)长期占据主导地位,但随着项目复杂度的提升,开发者逐渐面临维护性差、协作困难等问题。TypeScript(TS)作为 JavaScript 的超集,通过静态类型…...
关于 @Autowired 和 @Value 使用 private 字段的警告问题分析与解决方案
问题背景 在使用 Spring 框架进行开发时,我们经常会使用 Autowired 和 Value 注解来进行依赖注入和属性值注入。然而,当我们将这些注解应用于 private 字段时,IDE(如 IntelliJ IDEA)可能会显示警告信息,提…...
MySQL 进阶 面经级
会用数据库,找大厂工作是远远不够的。 本人2025美团暑期AI面试好几个MySQL场景问题不会答,已脏面评。遂在此整理学习! 文章目录 分片分区分区语法范围分区 (RANGE Partitioning)列表分区(LIST Partitionin…...
《C奥林匹斯宝典:基础篇 - 重载函数》
一、重载函数 (一)函数模板重载 详细解析:函数模板提供了一种通用的函数定义方式,可针对不同类型进行实例化。当存在函数模板与普通函数、其他函数模板同名时,就构成了函数模板重载。编译器在编译阶段,依…...
【408--考研复习笔记】计算机网络----知识点速览
目录 一、计算机网络体系结构 1.计算机网络的定义与功能: 2.网络体系结构相关概念: 3.OSI 七层模型与 TCP/IP 模型: 4.通信方式与交换技术: 电路交换 报文交换 分组交换 5.端到端通信和点到点通信: 6.计算机…...
TiDB 可观测性解读(二)丨算子执行信息性能诊断案例分享
导读 可观测性已经成为分布式系统成功运行的关键组成部分。如何借助多样、全面的数据,让架构师更简单、高效地定位问题、分析问题、解决问题,已经成为业内的一个技术焦点。本系列文章将深入解读 TiDB 的关键参数,帮助大家更好地观测系统的状…...
15:00开始面试,15:08就出来了,问的问题有点变态。。。
从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到8月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降40%…...
蓝桥杯准备(前缀和差分)
import java.util.Scanner; public class qianzhuihe {public static void main(String[] args) {int N,M;Scanner scnew Scanner(System.in);Nsc.nextInt();Msc.nextInt();int []treesnew int[N1];//设为N1的意义,防止越界int []prefixSumnew int[N1];for(int i1;i…...
试用thymeleaf引入vue-element-admin(一)
作为后端程序员,一直使用springbootbootstarp做管理系统,对前端不是太了解,现在感觉bootstarp的admin ui一直不得劲,想切换成前端使用较多的ui,费了老鼻子劲。 我的目的不是前后端分离,而是一个人全栈&…...
Minimind 训练一个自己专属语言模型
发现了一个宝藏项目, 宣传是完全从0开始,仅用3块钱成本 2小时!即可训练出仅为25.8M的超小语言模型MiniMind,最小版本体积是 GPT-3 的 17000,做到最普通的个人GPU也可快速训练 https://github.com/jingyaogong/minimi…...
C++11QT复习 (七)
智能指针雏形 **Day7-1 智能指针雏形:独占语义与共享语义****1. 独占语义与共享语义****1.1 Circle 类:示例类** **2. 拷贝构造:独占语义(Unique Ownership)****2.1 代码解析** **3. 拷贝构造:共享语义&…...
STM32八股【5】----- TIM定时器
1. TIM定时器分类 STM32 的定时器主要分为以下几类: 高级定时器(Advanced TIM,TIM1/TIM8) 具备 PWM 生成、死区控制、互补输出等高级功能,适用于电机控制和功率转换应用。通用定时器(General-purpose TIM…...
单元测试之Arrange-Act-Assert(简称AAA)
Arrange-Act-Assert(简称AAA)是一种编写单元测试的标准模式,具有清晰的结构和明确的步骤,有助于提高测试的可读性、可维护性和可扩展性。以下是对每个步骤的详细说明: 1. Arrange(准备阶段) 在…...
厘米级定位赋能智造升级:品铂科技UWB技术驱动工厂全流程自动化与效能跃升”
在智能制造中的核心价值体现在高精度定位、流程优化、安全管理等多个维度,具体应用如下: 一、核心技术与定位能力 厘米级高精度定位 UWB技术通过纳秒级窄脉冲信号(带宽超500MHz)实现高时间分辨率,结合…...
C++刷题(四):vector
📝前言说明: 本专栏主要记录本人的基础算法学习以及刷题记录,使用语言为C。 每道题我会给出LeetCode上的题号(如果有题号),题目,以及最后通过的代码。没有题号的题目大多来自牛客网。对于题目的…...
学习记录706@微信小程序+springboot项目 真机测试 WebSocket错误: {errMsg: Invalid HTTP status.}连接不上
我微信小程序springboot项目 真机测试 websocket 总是报错 WebSocket错误: {errMsg: Invalid HTTP status.},总是连接不上,但是开发者工具测试就没有问题。 最后解决方案是编码token,之前是没有编码直接拼接的,原因不详。 consol…...
【虚拟仪器技术】Labview虚拟仪器技术应用教程习题参考答案[13页]
目录 第1章 第2章 第3章 第4章 第5章 第6章 第7章 第8章 第1章 1. 简述虚拟仪器概念。 参考答案:虚拟仪器是借助于强大的计算机软件和硬件环境的支持,建立虚拟的测试仪器面板,完成仪器的控制、数…...
【工作梳理】怎么把f12里面的东西导入到postman
postman左上角导入 结果:...
