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

花样彩灯控制器设计VHDL代码Quartus DE2-115开发板

09/13 08:04
793
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2410141T346428.doc

共1个文件

名称:花样彩灯控制器设计VHDL代码Quartus  DE2-115开发板

软件:Quartus

语言:VHDL

代码功能:

1.第一种花样:彩灯按顺时针方向逐次点。

2.第二种花样:彩灯按逆时针方向逐次点亮,然后全灭全亮。

3.第三种花样:彩灯两边同时亮1、2、3、4、5、6个逐次向中间移动再散开

4.第三种花样:彩灯连续交叉闪烁。

控制电路采用VHDL语言设计。运用自顶而下的设计思想,按功能逐层分割实现层次化设计。

根据多路彩灯控制器的设计原理,分别对应彩灯的四种变化模式、利用VHDL语言实现该功能。

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

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

DE2-115开发板.png

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. 管脚分配

5. RTL图

6. 仿真图

整体仿真图

分频模块仿真图

流水灯控制模块仿真图

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
--分频模块
ENTITY div IS
   PORT (
      clk_in   : IN STD_LOGIC;--50M
      clk_div  : OUT STD_LOGIC--2Hz
   );
END div;
ARCHITECTURE behave OF div IS
   
   SIGNAL clk_2Hz : STD_LOGIC := '0';
   SIGNAL cnt_2Hz : integer := 0;
BEGIN
  --分频
   PROCESS (clk_in)
   BEGIN
IF (clk_in'EVENT AND clk_in = '1') THEN--仿真将12500000改为125 ,上板改为12500000
         IF (cnt_2Hz >= 12500000) THEN--50MHz分频到2Hz,计数12500_000为半个周期
            cnt_2Hz <= 0;
            clk_2Hz <= NOT(clk_2Hz);--计数到后翻转
         ELSE
            cnt_2Hz <= cnt_2Hz + 1;--计数
         END IF;
      END IF;
   END PROCESS;

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

  • 2-2410141T346428.doc
    下载

相关推荐