• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

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

07/14 15:33
310
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24020116214S58.doc

共1个文件

名称:基于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

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在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"?=>

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=658

  • 2-24020116214S58.doc
    下载

相关推荐