数电实验-----实现74LS153芯片扩展为8选1数据选择器以及应用(Quartus II )

本文主要是介绍数电实验-----实现74LS153芯片扩展为8选1数据选择器以及应用(Quartus II ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、74LS153芯片介绍

 管脚图

功能表

二、4选1选择器扩展为8选1选择器

 1.扩展原理

2.电路图连接(Quartus II )

3.仿真结果

三、8选1选择器的应用

1.三变量表决器

2.奇偶校验电路


 

一、74LS153芯片介绍

74ls153芯片是属于四选一选择器的芯片。

74LS153是双4选1数据选择器,有选择输入端B和A,能有四种状态,选中输入4个数据中的其中一个数据,选择输入中L,H分别代表为L为低电平,H为高电平。选通输入可称为使能端,选通输入为高电平时,输出端Y为L低电平,选通为低电平时,输出Y为选择的数据输出。

2ac9492643f4418586b746c5769700ed.png

 管脚图

1G、2G是表示控制开关

A,B是表示地址选择器

1C0~1C3和2C0~2C3是输出口

40f1a47039b541a995c85ca70c1c8dde.png

 内部结构:bc2d612daa874dcd9a184c1b12a1df4c.png 

功能表

 真值表:

7cb6f2a3fe5642f986e0f8998a6f65ae.png

S是控制开关,当S为高电平的时候,表示不工作,反之就正常工作,A1和A0是地址选择器,选择相对应的地址输出。

二、4选1选择器扩展为8选1选择器

 1.扩展原理

8选1选择器真值表:

1744b724cf794a92b0f0aefc903943b5.png

 74ls153芯片有三个输入口,其中一个是选通开关S,其他两个是地址输出选择器A1 A0,这里我们就可以去通过这三个输入口作为8选1选择器的三个输入口。所以我们要用到两个4选1选择器来去实现8选1选择器的功能,通过两个4选1选择器交替工作实现输出的位选,我们让其中一个4选1选择器为高位选择器,另一个低位选择器,低位的选通开关取反接入到高位的开关,开关就作为A2。然后剩下的就是地址选择输出。下面看个示例:

        比如,选通开关S、地址选择器A1、A0分别输入1 0 1,那么我们要输出就应该是高位的第2个,也就是输出D5即2D2这一条数据结果。那此时低位4选1选择器就不工作,所以输出的是0,也就只有高位的选择器在工作。

2.电路图连接(Quartus II )

下面我们打开Quartus II,然后创建一个block文件,按照以下的图示连接,以下就是4选1选择器扩展为8选1选择器的电路图。

084ae1646f6c4a2c8f3804131199d410.png

(注意,这里我的1C0~1C3和2C0到2C3输出口都是接高电平,这个可以根据实际情况去接高电平或者低电平。)

3.仿真结果

88e58a67ae2f43edaea932e5e9446805.png

 由于数据选择器是选择1C0~1C3和2C0到2C3这8个输出口输出的,我这里都是接高电平,那么输出结果要么是高位(OUT2)为1,要么是低位(OUT1)的为1。仿真结果无误。

三、8选1选择器的应用

1.三变量表决器

项目一 : 用指定芯片设计一个三变量表决器(即三个人对于某件事情进行表决,两个和两个以上同意则表决结果为通过,否则为不通过)。也就是说,输入端ABC,只要其中有两个或以上的输入1,那么结果就是通过,输出1。

真值表:

2652476a221e41aa9ef9e08186bc29fb.png

 如下图,我们可以看到74ls153芯片,在不同的输入现在地址下的输出。要想实现三变量表决器的话,我们就需要根据上图的三变量表决器的真值表来去设置1C0~1C3和2C0到2C3这8个输出口输出的电平接口,很显然1C0,1C1,1C2,2C0这四个是接到低电平的,也就是直接接地,而剩下的四个就是接高电平的,直接接电源VCC。

7ccb79347d0b4a68b440994404389c40.png

电路连接图: 

b458832c4b3a46c2bbf220eaef457596.png

仿真结果如下所示:9cb3db16eff74cc9aca7ce8f908a7dc3.png

 仿真无误,实验成功。

实际电路连接图:

254c893a7734442984d9341b5f2ffd4b.png

2.奇偶校验电路

项目二 : 用指定芯片设计一个三位输入一位输出的奇偶校验电路(奇校验电路,当输入有奇数个 1 时, 输出为 1;偶校验电路当输入有偶数个 1 时,输出为 1。这里以奇校验电路为示例:

真值表:

67da1bd06da44cfa9a9e9a485498a861.png

表达式:Y=m1+m2+m4+m7

同样的我们根据表达式,去对C0~1C3和2C0到2C3这8个输出口输出的电平接口设置,很显然,1C0,1C3,2C1,2C3这4个是接低电平的,直接接地,而另外四个就是接高电平。

电路连接图如下:

647a466dc5534b7eb74fbcb4bbdeb340.png

仿真结果:

这里我们可以看到,当A2,A1,A0其中一个输出一个高电平的时候,输出结果就是1,表示奇数,当三个都输入1的时候输出结果也是1,其他情况为0,那就说明仿真无误。

66de295e24184064a8a2782c8079d605.png 

实验连接图忘记拍照了,不好意思哈!!!

以上就是本期的全部内容,喜欢的话给个赞吧!

分享一张壁纸:

c7b398182a434f408ffd489e8adbf011.png

 

这篇关于数电实验-----实现74LS153芯片扩展为8选1数据选择器以及应用(Quartus II )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/398087

相关文章

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解

golang float和科学计数法转字符串的实现方式

《golangfloat和科学计数法转字符串的实现方式》:本文主要介绍golangfloat和科学计数法转字符串的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望... 目录golang float和科学计数法转字符串需要对float转字符串做处理总结golang float

linux lvm快照的正确mount挂载实现方式

《linuxlvm快照的正确mount挂载实现方式》:本文主要介绍linuxlvm快照的正确mount挂载实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux lvm快照的正确mount挂载1. 检查快照是否正确创建www.chinasem.cn2.

Python Flask 库及应用场景

《PythonFlask库及应用场景》Flask是Python生态中​轻量级且高度灵活的Web开发框架,基于WerkzeugWSGI工具库和Jinja2模板引擎构建,下面给大家介绍PythonFl... 目录一、Flask 库简介二、核心组件与架构三、常用函数与核心操作 ​1. 基础应用搭建​2. 路由与参

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价

使用Python和Tkinter实现html标签去除工具

《使用Python和Tkinter实现html标签去除工具》本文介绍用Python和Tkinter开发的HTML标签去除工具,支持去除HTML标签、转义实体并输出纯文本,提供图形界面操作及复制功能,需... 目录html 标签去除工具功能介绍创作过程1. 技术选型2. 核心实现逻辑3. 用户体验增强如何运行

SpringBoot实现Kafka动态反序列化的完整代码

《SpringBoot实现Kafka动态反序列化的完整代码》在分布式系统中,Kafka作为高吞吐量的消息队列,常常需要处理来自不同主题(Topic)的异构数据,不同的业务场景可能要求对同一消费者组内的... 目录引言一、问题背景1.1 动态反序列化的需求1.2 常见问题二、动态反序列化的核心方案2.1 ht

Spring Boot中的YML配置列表及应用小结

《SpringBoot中的YML配置列表及应用小结》在SpringBoot中使用YAML进行列表的配置不仅简洁明了,还能提高代码的可读性和可维护性,:本文主要介绍SpringBoot中的YML配... 目录YAML列表的基础语法在Spring Boot中的应用从YAML读取列表列表中的复杂对象其他注意事项总

Python实现文件批量重命名器

《Python实现文件批量重命名器》在日常工作和学习中,我们经常需要对大量文件进行重命名操作,本文将介绍一个使用Python开发的文件批量重命名工具,提供了多种重命名模式,有需要的小伙伴可以了解下... 目录前言功能特点模块化设计1.目录路径获取模块2.文件列表获取模块3.重命名模式选择模块4.序列号参数配

golang实现延迟队列(delay queue)的两种实现

《golang实现延迟队列(delayqueue)的两种实现》本文主要介绍了golang实现延迟队列(delayqueue)的两种实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录1 延迟队列:邮件提醒、订单自动取消2 实现2.1 simplChina编程e简单版:go自带的time