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

24led流水灯程序设计VHDL代码Quartus仿真

08/15 08:06
270
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240RQR103c6.doc

共1个文件

名称:24led流水灯程序设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

24led流水灯程序设计

一共24个led灯,流水灯流水模块分为5种,每种模式下灯变化方式不同。其中流水灯的变化快慢可以通过按键控制,按下按键速度变快。模块分为分频模块和流水灯控制模块,再通过顶层模块将两个模块连接起来。

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

演示视频:

设计文档:

1. 功能描述

流水灯程序设计,一共24个led灯,流水灯流水模块分为5种,每种模式下灯变化方式不同。其中流水灯的变化快慢可以通过按键控制,按下按键速度变快。模块分为分频模块和流水灯控制模块,再通过顶层模块将两个模块连接起来。

2. 工程文件

3. 程序文件

4. 程序编译

5. RTL图

6. 仿真文件

Testbench

7. 仿真图

一共5种不同的流水灯变化模块式

控制模块仿真

分频模块

部分代码展示:

LIBRARY?ieee;
???USE?ieee.std_logic_1164.all;
--流水灯控制
ENTITY?caideng?IS
???PORT?(
??????clk??????:?IN?STD_LOGIC;--输入时钟
??????reset_p??:?IN?STD_LOGIC;--复位信号高电平复位
??????key??????:?IN?STD_LOGIC;--speed
??????led??????:?OUT?STD_LOGIC_VECTOR(23?DOWNTO?0)--输出24个灯
???);
END?caideng;
ARCHITECTURE?top_module?OF?caideng?IS
--例化控制模块
component?caideng_ctrl?IS
???PORT?(
??????clk_div??:?IN?STD_LOGIC;
??????reset_p??:?IN?STD_LOGIC;
??????led??????:?OUT?STD_LOGIC_VECTOR(23?DOWNTO?0)
???);
END?component;
--例化分频模块
component?div_2Hz?IS
???PORT?(
??????clk??????:?IN?STD_LOGIC;
??????key??????:?IN?STD_LOGIC;--speed
??????reset_p??:?IN?STD_LOGIC;
??????clk_div??:?OUT?STD_LOGIC
???);
END?component;
???--定义中间中间信号
???SIGNAL?clk_div???:?STD_LOGIC;
BEGIN
???
???--调用分频模块
???i_div_2Hz?:?div_2Hz
??????PORT?MAP?(
?????????clk??????=>?clk,
?????????reset_p??=>?reset_p,
?????????key??????=>?key,
?????????clk_div??=>?clk_div
??????);
???
???
???--调用控制模块
???i_caideng_ctrl?:?caideng_ctrl
??????PORT?MAP?(
?????????clk_div??=>?clk_div,
?????????reset_p??=>?reset_p,
?????????led??????=>?led
??????);
???
END?top_module;

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

  • 2-240RQR103c6.doc
    下载

相关推荐