数字电路-可预置倒计时器Multisim仿真

数字电路之于FPGA意义重大。本“可预置倒计时器”设计采用施密特触发器40106作为振荡电路,由同步十进制可逆计数器74LSl92、译码器74LS47D和七段共阳数码管构成计时电路,具有启动/预置、暂停/继续计时和报警功能。紫色文字是超链接,点击自动跳转至相关博文。持续更新,原创不易!

目录:

一、简介

二、电路组成

1、秒脉冲发生器

2、计数器

3、译码及显示电路

4、控制电路

5、电路的变体

三、元件功能

四、掌握数字电路的意义


前置知识:卡诺图与逻辑代数化简法、数字电路-时序逻辑电路。


一、电路简介

本设计采用施密特触发器40106作为振荡电路,由同步十进制可逆计数器74LSl92、译码器74LS47D和七段共阳数码管构成计时电路,具有启动/预置、暂停/继续计时和报警功能。电路框图:

Microsoft Visio绘制

二、电路组成

电路由秒脉冲发生器、计数器、译码器、显示电路、声光报警电路、控制电路共6个部分组成。其部分电路如下图所示,仿真原文件下载移步:可预置倒计时器Multisim仿真。

1、秒脉冲发生器

秒脉冲发生器由40106和外接元件R1、C1构成多谐振荡器。输出脉冲的频率f ≈ 1Hz即1秒。

仿真设置如下图,否则振荡器不工作。

2、计数器

1)计数器由两片74LS192同步十进制可逆计数器构成,真值表如下图所示。

2)利用减计数PARALLEL LOAD = 1,RESET = 0,CLOCK DOWN = 1,实现计数器按8421码递减进行减计数。并且利用借位输出端BO与下一级的CLOCK DOWN连接,实现计数器之间的级联。

3)利用预置数PARALLEL LOAD端实现异步置数。

当RESET = 0,且PARALLEL LOAD = 0时,不管CLOCK UP和CLOCK DOWN时钟输入端的状态如何,将使计数器的输出等于并行输入数据,即Q3Q2Q1Q0 = D3D2D1D0。

3、译码及显示电路

本电路由译码驱动器74LS47D和七段共阳数码管组成,74LS47D集电极开路输出,输出低电平有效。也可以使用74LS48D,二者功能差异如下表。

74LS47D只提供解码和驱动功能,没有锁存器功能,仅能显示0-9的数字。
74LS48D集成译码器和锁存器功能,能够直接驱动七段数码管并显示0-9的数字以及特殊字符(如A-F)

4、控制电路

完成倒计时器的开始/预置计时、暂停/继续计时、声光报警等功能。控制电路由U9组成。

1)S1:时间设置拨码开关,99秒内均可预先设置。

2)S2:启动/预置按键。

(1)按动S2,倒计时开始。当计时器递减到0时,控制电路发出声光报警,计时器恢复到预置状态。

(2)当计时器未递减到0时,按动S2,计时器恢复到预置状态。

3)S3:暂停/继续按键。按动S3计时器暂停计时,显示器保持不变;当再次按动S3,计时器继续累计计时。

5、电路的变体

也可以将74LS47D更改为4511,此时数码管更改为七段共阴数码管,部分电路如下图所示。

三、元件功能

四、掌握数字电路的意义

学习数字电路对于理解和掌握FPGA(Field Programmable Gate Array现场可编程门阵列)设计至关重要。

基础理解数字电路是构成FPGA设计的基础。用于了解逻辑门、触发器、译码器等基础元件的工作原理,这些元件在FPGA中以可编程逻辑单元的形式实现。
设计思路数字电路设计培养了一种系统化的思维方式,对于设计FPGA电路非常有用。
时序分析对数字电路时序的深入理解将帮助你优化FPGA设计,避免时序违规。
硬件描述语言数字电路的知识将使你能够更有效地编写和理解解硬件描述语言。
故障排除和调试在调试FPGA设计时将能够更快地识别和解决问题。

应用场景列举:比如伺服驱动器,有关内容移步:高创伺服驱动器故障维修(8.闪烁)。


世上无难事,只要肯登攀。觉得不错,动动发财的小手点个赞哦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/579957.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vscode配置C/C++编程环境@配置C和CPP的运行和调试环境@配置过程的相关问题@中文文件名乱码@build和debug方案组合配置

文章目录 abstractgcc/g文档和用法常见用例设置源文件编码和调试信息选型示例 目录.vscode中的相关文件说明tasks.jsonlaunch.jsonc_cpp_properties.json IDE或编辑器配置vscode配置相关指令和快捷键默认task配置和取消默认 配置文件使用vscode预置变量和环境变量环境变量的使用…

【树莓派】树莓派4B配置环境

当你在配置你的系统时,这些指令将会非常有用。首先,你可能需要设置代理,特别是当你在一个受限的网络环境下工作时。以下是一些指令的详细说明: 设置代理 export http_proxyhttp://192.168.3.2:10811 export https_proxyhttp://1…

冰箱主控 32位MCU,多通道、高精度的AD采样配合温度传感器,实现冰箱各温室的精确控温;低功耗设计

概览 小华高性价比32位MCU,多通道、高精度的AD采样配合温度传感器,实现冰箱各温室的精确控温;低功耗设计,绿色低碳、节能环保;模块化设计,充分利用丰富的通讯接口,使主控板、显示板和驱动板灵活…

贝叶斯(Bayes)法则

1.生活中的贝叶斯 学概论统计或者机器学习经常都会提到贝叶斯法则,它到底是个啥,让我们一起看看。在生活中我们都会对人或者事物有一个非常主观的判断,这个主观的判断的基础是我们的生活经历总结出来的经验。先来两个例子: One&a…

加速博客体验:静态资源优化技巧大揭秘!

如今有许多人涉足博客写作,其中大多数正处于博客创作的旅程中。每位程序员都梦想拥有自己的服务器,理想情况下,服务器配置越高越好,价格越实惠越好。购买一台基础款服务器用于建立博客是一个不错的选择,因为并不需要处…

Date类.Java

目录 1.1Date概述 1.2Date常用方法 1.2.1 日期比较 2.1SimpleDateFormat类 1. 基本概念 2.构造方法 2.1格式规则: 3.成员方法 3.1格式化日期和时间 3.2解析日期和时间 4.练习1(出生日期) 5.练习2(秒杀活动) 1.1Date概述 util里面的Data类…

K8s 使用 CephFS 作为后端存储(静态供给、动态供给)

一、K8s 使用 CephFS CephFS是 Ceph 中基于RADOS(可扩展分布式对象存储)构建,通过将文件数据划分为对象并分布到集群中的多个存储节点上来实现高可用性和可扩展性。 首先所有 k8s 节点都需要安装 ceph-common 工具: yum -y ins…

项目进度规划全攻略,助你成为项目管理高手

项目进度管理作为项目管理中的核心环节,对于确保项目按时交付、控制成本和提高质量至关重要。本文将详细介绍项目进度管理的基本步骤,帮助项目经理和团队成员更好地理解和执行进度管理工作。 项目进度管理的基本步骤主要包括以下几个方面: …

236基于matlab的三维比例导引法仿真

基于matlab的三维比例导引法仿真,可以攻击静止/机动目标。1.三维空间内的比例导引程序,采用龙哥库塔积分法;2.文件名为bili3dnew的.m文件是主函数,执行时需调用目标机动子函数、导引律子函数、数值积分法子函数;3.文件…

微服务之并行与分布式计算

一、概述 1.1集中式系统vs分布式系统 集中式系统 集中式系统完全依赖于一台大型的中心计算机的处理能力,这台中心计算机称为主机(Host 或 mainframe ),与中心计算机相连的终端设备具有各不相同非常低的计算能力。实际上大多数终…

《ESP8266通信指南》8-连接WIFI(Arduino开发)(非常简单)

往期 《ESP8266通信指南》7-Arduino 开发8266的环境配置与示例代码烧录-CSDN博客 《ESP8266通信指南》6-创建TCP服务器(AT指令)-CSDN博客 《ESP8266通信指南》5-TCP通信透传模式(AT指令)-CSDN博客 《ESP8266通信指南》4-以Client进行TCP通信&#xf…

弹性盒之主轴侧轴对齐方式

弹性盒设置主侧轴对齐方式 1.默认 justify-content: flex-start 2.justify-content: flex-end 3.justify-content: center 4.justify-content: space-between; 两端对齐 5.justify-content: space-around; 距离环绕 调整侧轴上中下 1.默认align-items: flex-start; …

论机器学习(ML)在网络安全中的重要性

机器学习是什么? 机器学习(ML)是人工智能的一个分支,它使用算法来使计算机系统能够自动地从数据和经验中进行学习,并改进其性能,而无需进行明确的编程。机器学习涉及对大量数据的分析,通过识别数据中的模式来做出预测…

在MySQL中isnull()函数不能作为替代null值!

在MySQL中isnull()函数不能作为替代null值! 如下: 首先有个名字为business的表: SELECT ISNULL(business_name,no business_name) AS bus_isnull FROM business WHERE id2 直接运行就会报错: 错误代码: 1582 Incor…

5本On Hold,6本预警被踢,学术诚信高风险期刊被踢9本,还剩1本你还敢投吗?

本周投稿推荐 SSCI • 2/4区经管类,2.5-3.0(录用率99%) SCIE(CCF推荐) • 计算机类,2.0-3.0(最快18天录用) SCIE(CCF-C类) • IEEE旗下,1/2…

禅道项目管理系统身份认证绕过漏洞

禅道项目管理系统身份认证绕过漏洞 1.漏洞描述 禅道项目管理软件是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,完整覆盖了研发项目管理的核心流程。 禅道项目管理系统…

如何使用 Internet Download Manager (IDM) 来加速和优化你的下载体验 IDM 6.41下载神器

在当今信息爆炸的时代,下载文件和媒体内容已成为我们日常生活的一部分。无论是工作学习还是娱乐休闲,我们都需要从互联网上下载各种资源。为了提高下载效率和确保文件完整性,选择一款优秀的下载管理软件至关重要。Internet Download Manager …

PotatoPie 4.0 实验教程(21) —— FPGA实现摄像头图像二值化(RGB2Gray2Bin)

PotatoPie 4.0开发板教程目录(2024/04/21) 为什么要进行图像的二值化? 当我们处理图像时,常常需要将其转换为二值图像。这是因为在很多应用中,我们只对图像中的某些特定部分感兴趣,而不需要考虑所有像素的…

JavaScript 中的IF判断竟然可以这样写,效率更高

当然,它们是创建控制流的一种简单而方便的方式,但你可以写下数十亿行条件性的 JavaScript 代码,而不需要一个 if 语句。 而且有很多情况下,使用不同的结构会更清晰地展示你想要做的事情 —— 只要我们还在为人类编写代码&#xf…

深度学习系列65:数字人openHeygen详解

1. 主流程分析 从inference.py函数进入,主要流程包括: 1) 使用cv2获取视频中所有帧的列表,如下: 2)定义Croper。核心代码为69行:full_frames_RGB, crop, quad croper.crop(full_frames_RGB)。…