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

Quartus循环彩灯设计VHDL代码

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

2-23122G546162O.doc

共1个文件

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

演示视频:

设计文档:

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;

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

  • 2-23122G546162O.doc
    下载

相关推荐