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

这篇具有很好参考价值的文章主要介绍了实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

源文件的链接放在最后啦

  1. 实验目的:
    (1) 熟悉7段数码管显示译码电路的设计。
    (2) 掌握数码管显示原理及静态、动态扫描电路的设计。
  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模块
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

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

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

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

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

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

1、电路模块设计
(1)fre_div模块(如果不知道原理可以看我的上一篇文章实验二)
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

(2)基本任务一的decoder和dig_select模块(在上面,用那个补过段的)
(3)模六计数器cnt6(实验一里有)
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计
(4)整体设计
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

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

1、电路模块设计
(1)按键消抖key_debounce模块
(2)原理
利用D触发器的延时特性,将每一个D触发器(延时不同)的输出端相与,仅当所有D触发器都输出为1的时候,消抖模块才输出为1,这样就可以将按键抖动的部分(有1也有0的部分)跳过,达成消抖的目的。
后面还可以接更多的D触发器,如果效果不好的话。
clk端要接一个500Hz的时钟
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计
(3)整体设计
接下来就和上面的差不多了。
我这里接了两个消抖模块是因为一个好像效果不太好。
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

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

1、电路设计
(1)实验三就有一些复杂了。要实现模100计数结果,我们首先要有一个模100计数器。
cnt100
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

(2)第二个新模块是sec_select模块,之所以这么命名和设计是为了下面的数字电子钟做准备。
这个模块的主要作用是将每一个电子管显示不同的内容,根据基本任务二可知一次只能一个数码管显示一位数字,我们是通过加快频率使得人眼看起来是6个数码管一起显示。但是每一位都是显示的都是同一个内容,还没有分开,所以要用sec_select模块进行数据选择。我们可以看到现在有6组输入,以总线的形式输入到数选模块里来,这6组分别代表了六个数码管上显示的数字,
add端输入二进制BCD码与dig_select端保持同步,表示现在在显示的是哪一个电子管,那么code输出端就会选择相应的输入端输出。(比如add端是000,表示0号数码管显示,code端就会将D0对应的sec_ge秒的个位数字输出)

实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计
(3)整体电路连接
其他用到的还有fre_div模块、模六计数器cnt6、code_select/decoder、dig_select模块
这些在上面都已经实现了复制过来就好。
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

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

这一步就比较简单了,直接将前面已经封装好的模块生成相应的波形就行。

dig_select

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

decoder

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

sec_select

(最后的6个输入端的数字是自己输入的)
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计
以上三个任务的源文件的链接在这里。以后也会更新更多的实验的,这么好的up主还不赶紧关注之后白嫖。☺

源文件链接

链接:https://pan.baidu.com/s/1h-XcA9dNkaZXisXnOjWazg
提取码:2021文章来源地址https://www.toymoban.com/news/detail-466741.html

到了这里,关于实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA基本实验之数码管的动态显示

            关于数码管的基本知识大家可以参考我上一篇文章数码管的静态显示,         使用 1ms 的刷新时间让六个数码管轮 流显示:第 1ms 点亮第一个数码管,第 2ms 点亮第二个数码管,以此类推依次点亮六个数 码管,6ms 一个轮回,也就是说每个数码管每 6ms 点亮

    2024年02月08日
    浏览(38)
  • 基于Basys2的数码管动态扫描module(verilog)的模块化设计

        目录 一、数码管工作原理  二、Verilog模块设计 1、原理 (1)动态扫描的优点: (2)动态扫描原理简介: 2、Verilog模块的设计 (1)分频器:  2、译码器模块: 3、动态扫描模块: 4、顶层模块: 三、写在最后: 在大二下学期学习《Verilog与FPGA实现》的时候鲲鲲给我们布

    2024年02月09日
    浏览(62)
  • 实验八 键盘扫描及数码管显示实验

    1)学习了解键盘扫描的基本原理。 2)掌握通过并行接口芯片对键盘进行扫描并在多位数码管显示数字的方法。 编写程序,实现如下功能: 初始时数码管无显示; 第一次按下键盘时,在 最右侧数码管显示对应的十六进制数字 ; 以后每次按下键盘,则将 当前显示的数字全部

    2024年02月09日
    浏览(38)
  • FPGA实验笔记_Vivado:DDS信号发生器;数码管;基于DHT11的温湿度传感器

    目录 1、 FPGA的DDS信号发生器 1.1、DDS简介 1.2、ROM IP核的生成 1.3、波形数据的生成 1.4、 ROM的调用 1.5、 完整代码(包括拓展部分) 2、数码管显示 2.1、数码管简要说明 2.2、SM410564 3、基于DHT11的温湿度传感器 3.1、DHT11 3.2、基本思路 3.3、数据分离模块(BTD) 3.4、数据转换模块(

    2024年02月04日
    浏览(56)
  • 实验(四)数码管动态显示实验

    一.实验目的、内容、仪器 实验目的: 1.熟悉数码管的功能和使用 2.了解位选和段选,和动态显示的原理 了解74HC138的引脚功能。 实验内容:接共阴极数码管,要求动态显示(HELLOC51),动态扫描显示即轮流向各位数码管送出字形码和相应的位选。 实验仪器:7SEG-MPX8-CC:八位数码管共

    2024年02月08日
    浏览(38)
  • [FPGA 学习记录] 数码管动态显示

    数码管动态显示 在上一小节当中,我们对数码管的静态显示做了一个详细的讲解;但是如果单单只掌握数码管的静态显示这种显示方式是远远不够的,因为数码管的静态显示当中,被选中的数码位它们显示的内容都是相同的,这种显示方式在我们的实际应用当中显然是不合适

    2024年02月04日
    浏览(49)
  • 单片机实验六 动态数码管实验

    1.熟悉实验软件和硬件,进行正确的接线; 2.编程使得数码管排依次显示01234567 1.Keil uVision4 2.PZISP自动下载软件 3.HC6800S开发板 动态数码管实验整体图 通过P22、P23、P24控制3-8译码器来对数码管进行位选,通过P0口经过573的驱动控制数码管的段选,通过P13控制573的使能端,为低电

    2024年02月09日
    浏览(41)
  • FPGA基本实验之数码管的静态显示

    此实验基于FPGA征途pro开发板实现, 数码管是一种半导体发光器件,其基本单元是发光二极管。数码管按段数一般分为七 段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管(多一个小数点显 示)。当然也还有一些其他类型的数码管如“N”形管、“米”字管

    2024年02月03日
    浏览(48)
  • FPGA(5)数码管静态显示与动态显示

    目录 一、数码管静态显示 二、数码管动态显示 1、变量定义 2、定时(60us) 3、动态显示 代码 FPGA的数码管有4位,8段 。( 位和段都是共阳,即低电平有效 )     位选的4位(二进制):分别为第1、2、3、4位数码管。 段选的8位(二进制):分别为第h、g、f、e、d、c、b、a段

    2023年04月12日
    浏览(40)
  • FPGA项目(5)--FPGA控制数码管动态显示的原理

            数码管是现在电子产品上常用的显示器件,它有驱动简单、显示清晰、价格低廉等优势。数码管的实物图:          数码管的内部结构图如下所示:          从图中可以看出,它由八个段组成,即A B C D E F G DP(小数点),只要将这八个段按规律组合点亮,就

    2024年02月11日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包