Quartus循环彩灯设计VHDL代码仿真

名称:Quartus循环彩灯设计VHDL代码仿真

软件:Quartus

语言:VHDL

代码功能:

循环彩灯控制

设备及软件:装有Quartus II软件完成设计数字系统的计算机

目的:1.了解系统相关功能电路图与印刷电路图的设计、绘制,并完成相关流程的设计以及硬件描述语言VHDL程序的编写、设计与综合和调试仿真工作;

      2.学会Quartus II软件完成设计系统的设计与综合;

      3.掌握该数字电路系统的仿真调试,分析系统功能实现的可行性等。

任务:用EDA技术设计一循环彩灯控制电路,具体要求如下:

1.共有红、绿、黄3色彩灯各9个, 

2.动作类型:1)先红灯,后绿灯,再黄灯,分别按0.5S的速度跑动一次;2)全部红灯亮5S;3)黄灯5S;4)绿灯5S;5)前四种类型连续运行 

3.要求使用7段数码管显示当前显示的类型;使用键盘电路选择类型。


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



演示视频:


设计文档:

设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. 总体框图

5. 仿真图

整体仿真图

分频模块

控制模块

数码管显示模块



部分代码展示:


LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
--分频模块
ENTITY clk_div IS
   PORT (
      clk_in   : IN STD_LOGIC;--输入时钟
      clk_2Hz  : OUT STD_LOGIC--输出2Hz
   );
END clk_div;
ARCHITECTURE behave OF clk_div IS
   SIGNAL clk : STD_LOGIC := '0';
   SIGNAL cnt : STD_LOGIC_VECTOR(7 DOWNTO 0) := "00000000";
BEGIN
   PROCESS (clk_in)
   BEGIN
      IF (clk_in'EVENT AND clk_in = '1') THEN
         IF (cnt >= "01100011") THEN--计数0~99
            cnt <= "00000000";
         ELSE
            cnt <= cnt + "00000001";--计数
         END IF;
      END IF;
   END PROCESS;
   
   
   PROCESS (clk_in)
   BEGIN
      IF (clk_in'EVENT AND clk_in = '1') THEN
         IF (cnt >= "00110001") THEN--大于49
            clk <= '1';--高电平
         ELSE
            clk <= '0';--低电平
         END IF;
      END IF;
   END PROCESS;
   
   
   clk_2Hz <= clk;--输出2Hz(0.5s)
   
END behave;




代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » Quartus循环彩灯设计VHDL代码仿真

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员