简易加减运算器的制作----数字电路设计(含proteus仿真)

2023-12-10 21:36

本文主要是介绍简易加减运算器的制作----数字电路设计(含proteus仿真),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简易加减运算器的制作

一、功能要求—基本功能

1、自制0-9按键,在一个LED数码管上稳定地显示当前按下的值。(基本功能)

2、增加+、=两个按键,实现0-9两个一位数的加法运算,同时在两位LED上稳定地显示运算结果。(扩展功能1)

3、再增加一个-按钮,实现0-9两个一位数的减法运算,同时在两位LED上稳定地显示运算结果。(扩展功能2)

功能一实现

对于在LED数码管上显示数字最合适的就是74hc48。

74LS48是BCD至七段解码器,用于显示以二进制编码的十进制格式解码的数字。7 段是一种基于 7 个 LED 的小型设备,用于表示从 0 到 9 的单个数值。每个 7 段有七个输入引脚,用于点亮七个段中的单个 LED。每次制作单个数字时,某些特定引脚应该有电源输入。

74LS48解码器简介

为了实现特殊模式,可以使用逻辑门,但也可以使用IC 74LS48来控制 7 段。它有17个与门、4个或非门、6个非门和8个与非门。这些所有门的组合使 IC 具有 4 个输入和 7 个输出引脚。输出引脚在单个输出中生成两个 BCD 数字,这在 7 段上形成一个数字。该IC有4个输入引脚,总共有16种组合,但前10种组合用于产生7段输出,其余的将被视为无效状态。该 IC 是基于 TTL 的设备,因此可以由任何 TTL 设备或微控制器控制。它仅用于控制共阴极七段。

引脚配置
名称引脚
B引脚 1IC 74LS48有4个输入引脚,引脚1代表IC 4位输入数据的第三位。
C引脚 2引脚2代表IC的4位输入数据的第二位。
LT’引脚 3引脚 3 称为灯测试引脚。它用于使所有输出引脚为高电平以测试所有 7 段 LED。这是一个低电平有效引脚。
BI’/BRO’引脚 4引脚 4 将用作复位引脚。如果引脚 4 为低电平状态,则不会有任何输出。它是一个低电平有效引脚,它将使所有输出状态为低电平。
RBI’引脚 5引脚 5 称为纹波消隐输入引脚。它在多个 7 段的情况下使用来清除不必要的零。
D引脚 6引脚6代表IC的4位输入数据的MSB。
A引脚 7引脚7代表IC的4位输入数据的LSB。
GND引脚 8GND 引脚用作接地引脚。它用于使接地共用,以使 IC 能够与其他 TTL 设备和微控制器一起工作。
e引脚 9引脚 9 至引脚 15 将用作输出引脚。他们将给出输出信号来控制 7 段。引脚顺序为 a、b、c、d、e、f 和 g。每个字母代表7段LED上的字母。
d引脚 10
c引脚 11
b引脚 12
a引脚 13
g引脚 14
F引脚 15
VCC引脚 16引脚 16 用于向 IC 供电以使其正常工作。
工作原理

在 IC 74LS48 中,输出取决于输入。主要输入引脚有四个,有助于在特定输入数据上生成固定输出状态。在4位二进制数字中,十进制的0用0000表示,十进制的9用1001表示,并且从1到8的所有值也都有固定的4位二进制代码。当IC上有0到9的输入时,输出值将根据共阴极7段。这是因为 IC 是为执行该功能而设计的。如果使用7段IC,我们需要根据给定的电路连接7段IC。

原理图

左上方的四个数字输入对应BDC码

进一步完善

如需完整符合题目一的要求就需要有矩阵键盘转BCD码的数字电路。

结合给定得元件需要用到74HC147

74hc147是一个10线-4线优先编码器。它通常用于将多个输入信号(如开关或传感器输出)转换成较少的输出线,以便于处理。它能够识别多个激活输入中的最高优先级信号,并将其编码为二进制形式的输出。

最终设计的原理图如下,此时全部符合题意。

二、扩展功能1

增加+、=两个按键,实现0-9两个一位数的加法运算,同时在两位LED上稳定地显示运算结果。(扩展功能1)

对于数字电路的加法运算和给定的元器件综合分析,我们使用74hc283。

74hc283这是一个4位二进制加法器,用于执行两个4位二进制数的加法运算。它包括进4位输入和输出,可以用于构建更大的加法器系统。

设计思路
  • 根据进位信号和输出信号的逻辑表达式(74HC283逻辑图)以及真值表示例,结合行为级、数据流建模即可实现74HC283的四位二进制进位全加器的功能。
  • 进位信号和输出信号等逻辑表达式(74HC283逻辑图)

image-20231210155024610

  • 74HC283的真值表示例

image-20231210155145868

逻辑符号

image-20231210155333838

  • A 3 A 2 A 1 A 0 A_3A_2A_1A_0 A3A2A1A0:四位二进制加数。
  • B 3 B 2 B 1 B 0 B_3B_2B_1B_0 B3B2B1B0:四位二进制加数。
  • S 3 S 2 S 1 S 0 S_3S_2S_1S_0 S3S2S1S0:和数。
  • C − 1 C_{-1} C1:低位来的给 A 0 A_0 A0的进位信号。
  • C 0 C_0 C0 A 3 B 3 A_3B_3 A3B3向高位的进位信号

此时只需要将第一问输入的数字的BCD码分别接入两个AB进行加法运算,输出的BCD码继续在共阴极数码管上显示即可。

原理图

进一步完善

此时如需完整符合题意需要,需要再加入+号与=号两个按键。

等于好相当于最后的开关,打开开关显示减法的结果。原理图如下:

 

二、扩展功能2

再增加一个-按钮,实现0-9两个一位数的减法运算,同时在两位LED上稳定地显示运算结果。(扩展功能2)

关于减法功能其与加法的电路实现思路几乎一致,只是需要将被减数的BCD码进行取反加一(即补码)进行加法运算的结果就是减法运算。

思路图如下

image-20231210162617173

设计的最终原理图如下:

最终完善

需要进一步进行+和-还有等于的操作,即为+和-进行选择是否进行别减数的补码操作,加法就是不进行,减法就是进行补码操作,最总=号进行数码管加减法的结果显示。

最终原理图如下:

这篇关于简易加减运算器的制作----数字电路设计(含proteus仿真)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

使用PyQt实现简易文本编辑器

《使用PyQt实现简易文本编辑器》这篇文章主要为大家详细介绍了如何使用PyQt5框架构建一个简单的文本编辑器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录分析主窗口类 (MyWindow)菜单操作语法高亮 (SyntaxHighlighter)运行程序主要组件代码图示分析实现

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

用Java打造简易计算器的实现步骤

《用Java打造简易计算器的实现步骤》:本文主要介绍如何设计和实现一个简单的Java命令行计算器程序,该程序能够执行基本的数学运算(加、减、乘、除),文中通过代码介绍的非常详细,需要的朋友可以参考... 目录目标:一、项目概述与功能规划二、代码实现步骤三、测试与优化四、总结与收获总结目标:简单计算器,设计

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

如何用Python绘制简易动态圣诞树

《如何用Python绘制简易动态圣诞树》这篇文章主要给大家介绍了关于如何用Python绘制简易动态圣诞树,文中讲解了如何通过编写代码来实现特定的效果,包括代码的编写技巧和效果的展示,需要的朋友可以参考... 目录代码:效果:总结 代码:import randomimport timefrom math

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

通过C#和RTSPClient实现简易音视频解码功能

《通过C#和RTSPClient实现简易音视频解码功能》在多媒体应用中,实时传输协议(RTSP)用于流媒体服务,特别是音视频监控系统,通过C#和RTSPClient库,可以轻松实现简易的音视... 目录前言正文关键特性解决方案实现步骤示例代码总结最后前言在多媒体应用中,实时传输协议(RTSP)用于流媒体服

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系