实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(上)

简介: 实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(上)

实验三 基于FPGA的数码管动态扫描电路设计


源文件的链接放在最后啦


实验目的:

(1) 熟悉7段数码管显示译码电路的设计。

(2) 掌握数码管显示原理及静态、动态扫描电路的设计。

实验任务:

(1) 基本任务1:利用FPGA硬件平台上的4位数码管做静态显示,用SW0-3输入BCD码,用SW4-7控制数码管位选;

(2) 基本任务2:利用FPGA硬件平台上的4位数码管显示模10计数结果(以1S为节拍);

(3) 基本任务3:利用FPGA硬件平台上的6位数码管显示模100计数结果(以1S为节拍);

(4) 拓展任务1:对7448译码结果中的“6”和“9”进行补段;

(5) 拓展任务2:用按键控制计数器从0-9计数,4位数码管显示计数结果;(注意按键消抖)

(6) 拓展任务:3:dig_select、decoder和code_select三个模块做波形仿真。(注意输入设置)


基本任务一:利用FPGA硬件平台上的4位数码管做静态显示,用SW0-3输入BCD码,用SW4-7控制数码管位选;


1、实验原理

使用decoder模块控制数码管的显示功能,输入二进制码,输出对应的数码管显示数字。

dig_select模块负责选择哪一个数码管显示数字,add端输入二进制码,如果输入的频率特别高的话,人眼就分辨不出来一个个显示的过程了,看起来就是六个数码管都在亮。


2、电路模块设计

(1)decoder模块


3f47068c2cc64ed4991f150b3b83e4d5.png


(2)dig_select模块

6fc181ca4215498bbab0cce114f60425.png


拓展任务一:对7448译码结果中的“6”和“9”进行补段;


1、电路模块设计


(1)补段后的decoder模块,原本6和9显示的时候会少一段没有显示,加上外部与非门后就可以完整显示了。

df026fc5ca6d424aa41e8b11e18cd5f7.png


基本任务二:利用FPGA硬件平台上的4位数码管显示模10计数结果(以1S为节拍);


1、电路模块设计


(1)fre_div模块(如果不知道原理可以看我的上一篇文章实验二)

8ce57f574f4c42d0bb9ef6c82ae32b8d.png


(2)基本任务一的decoder和dig_select模块(在上面,用那个补过段的)

(3)模六计数器cnt6(实验一里有)

2ced9ef7edd9479686b7abff5d07784c.png


(4)整体设计

9a4a296d73f14d238cc24f560c8bb449.png


拓展任务二:用按键控制计数器从0-9计数,4位数码管显示计数结果;(注意按键消抖)


1、电路模块设计

(1)按键消抖key_debounce模块

(2)原理

利用D触发器的延时特性,将每一个D触发器(延时不同)的输出端相与,仅当所有D触发器都输出为1的时候,消抖模块才输出为1,这样就可以将按键抖动的部分(有1也有0的部分)跳过,达成消抖的目的。

后面还可以接更多的D触发器,如果效果不好的话。

clk端要接一个500Hz的时钟


394501da62af48cfbbab192e1cb65e69.png


(3)整体设计

接下来就和上面的差不多了。

我这里接了两个消抖模块是因为一个好像效果不太好。


db8b569a51ee49f1a9fbfc0eee12c4e8.png


相关文章
|
26天前
|
芯片 异构计算
【FPGA】高云FPGA之数字钟实验->HC595驱动数码管(三)
【FPGA】高云FPGA之数字钟实验->HC595驱动数码管
|
1月前
|
存储 编译器 开发工具
|
5月前
|
异构计算
【FPGA】基本实验步骤演示 | Verilog编码 | 运行合成 | 设备/引脚分配 | 综合/实施 | 设备配置 | 以最简单的逻辑非为例
【FPGA】基本实验步骤演示 | Verilog编码 | 运行合成 | 设备/引脚分配 | 综合/实施 | 设备配置 | 以最简单的逻辑非为例
49 0
|
7月前
|
异构计算
FPGA片内RAM读写测试实验 2
FPGA片内RAM读写测试实验
117 0
|
7月前
|
存储 异构计算
FPGA片内RAM读写测试实验 1
FPGA片内RAM读写测试实验
181 0
|
9月前
|
算法 异构计算
m基于FPGA的256QAM调制信号产生模块verilog实现,包含testbench
m基于FPGA的256QAM调制信号产生模块verilog实现,包含testbench
250 0
|
9月前
|
算法 异构计算
m基于FPGA的1024QAM调制信号产生模块verilog实现,包含testbench
m基于FPGA的1024QAM调制信号产生模块verilog实现,包含testbench
336 0
|
11月前
|
存储 芯片 异构计算
电子技术课程设计基于FPGA的音乐硬件演奏电路的设计与实现
设计一个乐曲演奏电路,能够自动播放编写好的音乐。要求将音乐通过实验箱上的喇叭播放出来,用发光二级管显示出乐曲的节拍。 (附加功能:本设计在题目所要求的功能全部实现的基础之上又添加了许多附加功能,所有的功能将在“工程设计总述”中阐明,特此声明。
162 0
|
算法 异构计算
基于FPGA的直接序列扩频通信verilog设计,包括汉明编译码,扩频解扩,同步模块以及testbench
基于FPGA的直接序列扩频通信verilog设计,包括汉明编译码,扩频解扩,同步模块以及testbench
267 0
基于FPGA的直接序列扩频通信verilog设计,包括汉明编译码,扩频解扩,同步模块以及testbench
|
算法 异构计算
m基于FPGA的NBDP系统ARQ单元模块的verilog实现
m基于FPGA的NBDP系统ARQ单元模块的verilog实现
165 0
m基于FPGA的NBDP系统ARQ单元模块的verilog实现

热门文章

最新文章