基于FPGA的利用DE2-115实验平台上的5个7段的数码管循环显示英文“ HELLO”VHDL代码Quartus DE2-115开发板

本文详细描述了如何使用VHDL在Quartus环境下,通过DE2-115实验平台实现5个7段数码管循环显示英文单词HELLO的过程,包括计数器设计、多路选择器的选择以及管脚分配等步骤。
摘要由CSDN通过智能技术生成

名称:基于FPGA的利用DE2-115实验平台上的5个7段的数码管循环显示英文“ HELLO”VHDL代码Quartus   DE2-115开发板(文末获取)

软件:Quartus

语言:VHDL

代码功能:

利用DE2-115实验平台上的5个7段的数码管循环显示英文“ HELLO”。(提示:可以先考虑如何在1个7

段数码管上显示字母H、E、L、O,再利用5选1多路选择器来完成)

QQ图片20240201161847.png

本代码已在DE2-115开发板验证,DE2-115开发板如下,其他开发板可以修改管脚适配:

DE2-115开发板.png

1. 新建工程

2. 选择芯片型号

3. 工程文件

4. 程序文件

5. 程序编译

6. 管脚分配

7. RTL图

8. VWF文件

9. 仿真图

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
ENTITY HELLO IS
   PORT (
      clk   : IN STD_LOGIC;--时钟50MHz
      HEX0  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--7段数码管
      HEX1  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--7段数码管
      HEX2  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--7段数码管
      HEX3  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--7段数码管
      HEX4  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)--7段数码管
   );
END HELLO;
ARCHITECTURE behave OF HELLO IS
   
   SIGNAL count   : STD_LOGIC_VECTOR(31 DOWNTO 0) := "00000000000000000000000000000000";--计数器
   SIGNAL clk_1Hz : STD_LOGIC := '0';
   
   SIGNAL data    : STD_LOGIC_VECTOR(2 DOWNTO 0) := "000";
BEGIN
   PROCESS (clk)
   BEGIN
      IF (clk'EVENT AND clk = '1') THEN
       --IF (count >= "00000001011111010111100001000000") THEN--50M分频到1Hz,计数25000000翻转一次
 IF (count >= "00000000000000000000000001000000") THEN--仿真时减小计数器为00000000000000000000000001000000,实际上板时用上一句
            count <= "00000000000000000000000000000000";
            clk_1Hz <= NOT(clk_1Hz);--翻转
         ELSE
            count <= count + "00000000000000000000000000000001";--计数
            clk_1Hz <= clk_1Hz;--1Hz信号
         END IF;
      END IF;
   END PROCESS;
   
   --5进制计数
   PROCESS (clk_1Hz)
   BEGIN
      IF (clk_1Hz'EVENT AND clk_1Hz = '1') THEN
         IF (data >= "100") THEN--计数到4
            data <= "000";--计数回0
         ELSE
            data <= data + "001";--计数
         END IF;
      END IF;
   END PROCESS;
   
   --5选1,字母1秒移位一次
   PROCESS (data)
   BEGIN
      CASE data IS--7段数码管,低电平亮
         WHEN "000" =>
            HEX4 <= "0001001";--显示H
            HEX3 <= "0000110";--显示E
            HEX2 <= "1000111";--显示L
            HEX1 <= "1000111";--显示L
            HEX0 <= "1000000";--显示O
         WHEN "001" =>
            HEX0 <= "0001001";--显示H
            HEX4 <= "0000110";--显示E
            HEX3 <= "1000111";--显示L
            HEX2 <= "1000111";--显示L
            HEX1 <= "1000000";--显示O
         WHEN "010" =>
源代码

 扫描文章末尾的公众号二维码

  • 14
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为什么要学学习指导篇: 对于FPGA初学者来说,什么是FPGA?为什么要学习FPGA?怎么学习FPGA?这三个是我们最先会面对的大问题,我们只有搞明白、弄清楚了这三个问题,才能有目的、有计划的去掌握这门技术,否则,我们学习FPGA的愿望只是空中楼阁而已。学习指导篇包含哪些内容:该篇以什么是FPGA、为什么要学习FPGA、怎么学习FPGA为主线,详细的讲解了FPGA是什么、FPGA有什么用, FPGA发展前景,以及FPGA职业待遇,并且在该基础上,我们还进一步详细讲解了如何从一个什么都不会的FPGA初学者成长到无所不知、无所不能的一个FPGA工程师。 为什么要学数字电路篇: 数字电路是FPGA的敲门砖、垫脚石,为什么这样说呢,因为数字电路主要的内容就是逻辑和时序,而逻辑与时序就是FPGA设计的核心。逻辑无非就是与门、或门、非门 ,时序无非就是锁存器、触发器、寄存器等等,再复杂的设计也就是用这些基本电路搭起来的,那么我们只有知道了这些基本电路的功能才能搭建出想要的电路。数字电路篇包含了哪些内容:该篇是从数字逻辑最基础的0和1入手,以逻辑代数为基础详细来讲解与门、或门、非门等基本门电路的功能,又以基本的门电路为基础,进一步学习了组合逻辑电路,其中不同的与或非门组合,可构造出不同的组合逻辑电路,例如编码器、译码器、数据选择器等。接下来在组合逻辑电路的基础上,我们又进一步了解学习时序逻辑电路,时序逻辑电路不同于组合逻辑电路,时序逻辑电路能做到组合电路做不到的事情,那就是让电路具有“记忆”功能,如寄存器、计数器等。最后,我们深入探讨读者最为关心的可编程器件的内部结构和原理,为进一步学习FPGA原理打下了基础。 为什么要学硬件语法篇: 大家都知道软件设计使用软件编程语言,例如我们熟知的C、 Java等等,而FPGA设计使用的是HDL语言,例如VHDL和Verilog HDL,说的直白点, FPGA的设计就是逻辑电路的实现,就是把我们从数字电路中学到的逻辑电路功能,使用硬件描述语言Verilog/NHDL)描述出来,这需要设计人员能够用硬件编程思维来编写代码,以及拥有扎实的数字电路功底。硬件语法篇包含了哪些内容:该篇不仅仅是介绍了Verilog HDL基本概念和语法,更着重讲解了Verilog HDL的基本设计思想及优良的代码书写规范和风格。 为什么要学软件工具篇: Altera的开发环境为Quartus ll, xilinx的开发环境为ISE( IntegratedSoftware Environment ),这里我们选择的是Altera的器件,所以开发环境为Quartus ll, Quartus11开发软件是Altera公司为其FPGA芯片设计的集成化专用开发工具,是Altera最新一代功能更强的集成EDA开发软件,使用Quartus 1l可完成从设计输入,综合适配,仿真验证到下载调试的整个设计过程。Quartus 11集成了Modelsim-Altera, SignalTap工具,可以直接调用来完成设计任务的仿真及调试。软件工具篇包含了哪些内容:该篇不仅讲解了如何使用Quartus 1l软件、ModelSim和SignalTapll软件,还讲解了PLL. ROM,RAM,FIFO、 DDRIP核的使用。从第一个新工程建立,管脚分配,程序下载及工程仿真,工程调试等一系列图文操作手把手带领读者掌握软件的操作,更进一步铺开来详细讲解软件的操作界面及菜单说明,功能使用。解决读者在学习上遇到的最棘手的“软”问题,为进一步学习实战篇奠定了基础。 为什么要学项目实战篇: 前面的篇章多为理论知识,而这一篇是结合开发板实物,从理论上升到实践,将前面的基础知识运用到实际的工程项目当中。项目实战篇包含哪些内容:我们例举三人表决器、数字时钟、多终端点歌系统、数字示波器、数码相框、USB2.0摄像头和千兆网络摄像头这七个实际的工程项目,手把手带领大家从分析工程、分解工程、到最终实现工程。通过逐个解决工程中的实际问题,来学习原汁原味的FPGA设计。本篇一改传统教程里逐个讲解外设的方法,巧妙的将所有外设功能放在实际项目当中讲解,使读者1意X上做到了现现,活学活用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值