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

基于FPGA的彩灯控制器设计Verilog代码VIVADO仿真

08/03 10:43
332
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24060G254329B.doc

共1个文件

名称:基于FPGA的彩灯控制器设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:

彩灯控制器

设计要求:有八只LED彩灯,L0....L7,按下述方式显示:全亮→奇数灯依次灭→偶数灯依次灭→由L0到L7依次亮,循环进行,显示时间间隔0.5S,1S可调。

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

部分代码展示:

//彩灯控制器
module?caideng(
input?clk_in,//输入时钟1KHz,周期1ms
input?rst,//复位,低电平复位
input?speed,//速度档位,0时选择0.5s间隔,1时选择1s间隔
output?reg?[7:0]?LED//输出8路彩灯
);
//信号定义
reg?[15:0]?cnt_05=16'd0;
reg?[15:0]?cnt_1=16'd0;
reg?clk_05=0;
reg?clk_1=0;
//产生周期为0.5s的时钟clk_05
always@(posedge?clk_in)
if(cnt_05>=16'd499)begin//1KHz计数500为0.5s
cnt_05<=16'd0;
clk_05<=1;//产生周期为0.5s的时钟clk_05
end
else?begin
cnt_05<=cnt_05+16'd1;//计数
clk_05<=0;
end
//产生周期为1s的时钟clk_1
always@(posedge?clk_in)
if(cnt_1>=16'd999)begin//1KHz计数1000为1s
cnt_1<=16'd0;
clk_1<=1;//产生周期为1s的时钟clk_1
end
else?begin
cnt_1<=cnt_1+16'd1;//计数
clk_1<=0;
end

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

  • 2-24060G254329B.doc
    下载

相关推荐