数电实验(七)——简易频率计

2023-11-11 18:10
文章标签 实验 简易 频率计 数电

本文主要是介绍数电实验(七)——简易频率计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面的话

很开心大家能够持续关注我这个CSDN小透明,上一周比较忙,就少更了一期的数电实验,结果,好多小伙伴都私信问我,还有小伙伴跑去爬虫系列文章评论区去蹲第七次数电实验,感觉受宠若惊。哈哈哈哈哈,这不来了嘛,第七次数电实验来了~这就安排上
往期文章:
数电实验(四)——四位乘法器
数电实验(五)——ROM设计
数电实验(六)——信号发生器

简易频率计

本次实验依旧不会一步一步地展示怎么做,不会的小伙伴请自行参考往期文章(其实就是我懒~ 略略略)
以下是关键步骤:
一.明确本次实验的实验要求:
1.通过信号发生器产生信号
2.通过AD模块将信号转为数字信号传入FPGA
3.通过VHDL语言进行信号频率的判断,将结果输出到七段数码管

二.实验步骤
1.信号发生器的使用不多赘述(那不是有手就行嘛[坏笑ing]),记着CH1还是CH2,一定要Output
2.新建五个VHDL文件,要生成五个器件,分别是两个分频器,一个计数器,一个锁存器,一个译码器
两个分频器:

在这里插入图片描述
一共五个~
下面是代码部分:
分频器1:
在这里插入图片描述
分频器2:
在这里插入图片描述

计数器:
(真不忍心你们自己手敲了~,我直接贴源码吧)
(这还不来一波点赞评论?喜欢我就关注哦)
不过CSDN不支持VHDL代码格式好像,我给你们放Python代码模块里面,可以直接复制粘贴

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY jishuqi ISPORT (RST,clk:IN STD_LOGIC;DW:OUT STD_LOGIC_VECTOR(1 DOWNTO 0);D2,D1,D0:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));
END jishuqi;
ARCHITECTURE fwm OF jishuqi IS
BEGINPROCESS(RST,clk)VARIABLE T8,T7,T6,T5,T4,T3,T2,T1,T0:STD_LOGIC_VECTOR(3 DOWNTO 0):="0000";BEGINIF RST='0' THENT8:="0000";T7:="0000";T6:="0000";T5:="0000";T4:="0000";T3:="0000";T2:="0000";T1:="0000";T0:="0000";ELSIF clk' EVENT AND clk='1' THENIF T0<"1001" THEN T0:=T0+1;ELSIF T1<"1001" THEN T1:=T1+1;T0:="0000";ELSIF T2<"1001" THEN T2:=T2+1;T1:="0000";T0:="0000";ELSIF T3<"1001" THEN T3:=T3+1;T2:="0000";T1:="0000";T0:="0000";ELSIF T4<"1001" THEN T4:=T4+1;T3:="0000";T2:="0000";T1:="0000";T0:="0000";ELSIF T5<"1001" THEN T5:=T5+1;T4:="0000";T3:="0000";T2:="0000";T1:="0000";T0:="0000";ELSIF T6<"1001" THEN T6:=T6+1;T5:="0000";T4:="0000";T3:="0000";T2:="0000";T1:="0000";T0:="0000";ELSIF T7<"1001" THEN T7:=T7+1;T6:="0000";T5:="0000";T4:="0000";T3:="0000";T2:="0000";T1:="0000";T0:="0000";ELSIF T8<"1001" THEN T8:=T8+1;T7:="0000";T6:="0000";T5:="0000";T4:="0000";T3:="0000";T2:="0000";T1:="0000";T0:="0000";END IF;END IF;IF T8/="0000" OR T7/="0000" OR T6/="0000" THENDW<="10";D2<=T8;D1<=T7;D0<=T6;ELSIF T5/="0000" OR T4/="0000" OR T3/="0000" THENDW<="01";D2<=T5;D1<=T4;D0<=T3;ELSEDW<="00";D2<=T2;D1<=T1;D0<=T0;END IF;END PROCESS;END fwm;

锁存器:
在这里插入图片描述
译码器:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY yimaqi IS
PORT(QW:IN STD_LOGIC_VECTOR(1 DOWNTO 0);Q2,Q1,Q0:IN STD_LOGIC_VECTOR(3 DOWNTO 0);dis_out3,dis_out2,dis_out1,dis_out0:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));
END yimaqi;
ARCHITECTURE fwm OF yimaqi IS
BEGIN
PROCESS(QW,Q2,Q1,Q0)
BEGIN
CASE QW IS
WHEN "00"=>dis_out0<="0001001";
WHEN "01"=>dis_out0<="1000110";
WHEN "10"=>dis_out0<="1001000";
WHEN OTHERS=>dis_out0<="1111111";
END CASE;CASE Q2 IS
WHEN"0000"=>dis_out3<="1000000";
WHEN"0001"=>dis_out3<="1111001";
WHEN"0010"=>dis_out3<="0100100";
WHEN"0011"=>dis_out3<="0110000";
WHEN"0100"=>dis_out3<="0011001";
WHEN"0101"=>dis_out3<="0010010";
WHEN"0110"=>dis_out3<="0000010";
WHEN"0111"=>dis_out3<="1111000";
WHEN"1000"=>dis_out3<="0000000";
WHEN"1001"=>dis_out3<="0010000";
WHEN OTHERS=>dis_out3<="1111111";
END CASE;CASE Q1 IS
WHEN"0000"=>dis_out2<="1000000";
WHEN"0001"=>dis_out2<="1111001";
WHEN"0010"=>dis_out2<="0100100";
WHEN"0011"=>dis_out2<="0110000";
WHEN"0100"=>dis_out2<="0011001";
WHEN"0101"=>dis_out2<="0010010";
WHEN"0110"=>dis_out2<="0000010";
WHEN"0111"=>dis_out2<="1111000";
WHEN"1000"=>dis_out2<="0000000";
WHEN"1001"=>dis_out2<="0010000";
WHEN OTHERS=>dis_out2<="1111111";
END CASE;CASE Q0 IS
WHEN"0000"=>dis_out1<="1000000";
WHEN"0001"=>dis_out1<="1111001";
WHEN"0010"=>dis_out1<="0100100";
WHEN"0011"=>dis_out1<="0110000";
WHEN"0100"=>dis_out1<="0011001";
WHEN"0101"=>dis_out1<="0010010";
WHEN"0110"=>dis_out1<="0000010";
WHEN"0111"=>dis_out1<="1111000";
WHEN"1000"=>dis_out1<="0000000";
WHEN"1001"=>dis_out1<="0010000";
WHEN OTHERS=>dis_out1<="1111111";
END CASE;
END PROCESS;
END fwm;

五个VHDL文件,按照我的拼音命名法,不要命名错误
在这里插入图片描述
这样,然后对每一个的VHDL文件创建零器件。
放到原理图文件中,连线,如图
在这里插入图片描述
然后配置引脚,
两个input引脚,clk那个接G21,另一个接AB17
五个output引脚,与分频器连的那个接T16,最后四个分别与数码管相连,数码管引脚图如图:
在这里插入图片描述
在这里插入图片描述
需要注意的是,数码管配置引脚的时候,需要反着来
什么叫反着来,自己体会
在这里插入图片描述
配置完引脚就连线了~
这里给你们自己发挥,怎么连?提示一下,四根线就好了
去充分发挥自己的主观能动性[坏笑ing]
实在不会的私信或者评论区问我

写在后面的话

数电实验系列文章可能就此结束了,不太确定会不会更新前几次实验的,有时间再更吧
欢迎大家继续关注我!以后还会逐步更新其他的文章的!!!
附其他系列文章:
爬虫与数据分析系列:
爬虫与数据分析(一)
爬虫与数据分析(二)
爬虫与数据分析(三)
数据挖掘系列:
数据挖掘(一)——K-means均值聚类算法
数据挖掘(二)——K-medoids中心聚类算法
数据挖掘(三)——层次聚类
欢迎大家一起学习交流~

这篇关于数电实验(七)——简易频率计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

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绘制简易动态圣诞树

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

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

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

STM32(十一):ADC数模转换器实验

AD单通道: 1.RCC开启GPIO和ADC时钟。配置ADCCLK分频器。 2.配置GPIO,把GPIO配置成模拟输入的模式。 3.配置多路开关,把左面通道接入到右面规则组列表里。 4.配置ADC转换器, 包括AD转换器和AD数据寄存器。单次转换,连续转换;扫描、非扫描;有几个通道,触发源是什么,数据对齐是左对齐还是右对齐。 5.ADC_CMD 开启ADC。 void RCC_AD

HNU-2023电路与电子学-实验3

写在前面: 一、实验目的 1.了解简易模型机的内部结构和工作原理。 2.分析模型机的功能,设计 8 重 3-1 多路复用器。 3.分析模型机的功能,设计 8 重 2-1 多路复用器。 4.分析模型机的工作原理,设计模型机控制信号产生逻辑。 二、实验内容 1.用 VERILOG 语言设计模型机的 8 重 3-1 多路复用器; 2.用 VERILOG 语言设计模型机的 8 重 2-1 多

海龟绘图简易教程|Turtle for Python

turtle 是 python 内置的一个比较有趣味的模块,俗称 海龟绘图,它是基于 tkinter 模块打造,提供一些简单的绘图工具,海龟作图最初源自 20 世纪 60 年代的 Logo 编程语言,之后一些很酷的 Python 程序员构建了 turtle 库,让其他程序员只需要 import turtle,就可以在 Python 中使用海龟作图。 原文链接|海龟绘图简易教程 1. 基本

使用jetty和mongodb做个简易文件系统

使用jetty和mongodb做个简易文件系统 - ciaos 时间 2014-03-09 21:21:00   博客园-所有随笔区 原文   http://www.cnblogs.com/ciaos/p/3590662.html 主题  MongoDB  Jetty  文件系统 依赖库: 1,jetty(提供http方式接口) 2,mongodb的java驱动(访问mo