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

多路彩灯控制器设计VHDL代码Quartus DE2开发板

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

2-2410141S30H25.doc

共1个文件

名称:多路彩灯控制器设计VHDL代码Quartus  DE2开发板

软件:Quartus

语言:VHDL

代码功能:

基于FPGA的多路彩灯控制器

1.彩灯从左到右逐次闪亮,然后从右到左逐次熄灭

2.彩灯两边同时亮两个,然后逐次向中间点亮

3.彩灯从左到右两个两个点亮,然后从右到左两个两个逐次点亮。

4.彩灯中间两个点亮,然后同时向两边散开

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

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

DE2开发板.png

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

管脚分配

5. 仿真图

整体仿真图

分频模块

控制模块

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
--分频模块
ENTITY fenping IS
   PORT (
      clk      : IN STD_LOGIC;--时钟
      rst      : IN STD_LOGIC;--复位
      clk_1    : OUT STD_LOGIC;--输出时钟1,对应变化节奏1
  clk_2    : OUT STD_LOGIC --输出时钟2,对应变化节奏2
   );
END fenping;
ARCHITECTURE behave OF fenping IS   
   SIGNAL div_num   : STD_LOGIC_VECTOR(31 DOWNTO 0) := X"00000000";--计数寄存器
BEGIN
   --计数0~15
   PROCESS (clk)
   BEGIN
      IF (clk'EVENT AND clk = '1') THEN
         IF (rst = '0') THEN
            div_num <= X"00000000";--复位
         ELSIF (div_num = X"02FAF080") THEN--计数0~50000000
            div_num <= X"00000000";
         ELSE
            div_num <= div_num + X"00000001";--计数
         END IF;
      END IF;
   END PROCESS;

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

  • 2-2410141S30H25.doc
    下载

相关推荐