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

跑马灯控制器设计Verilog代码Quartus DE2开发板

1小时前
80
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24101G91430B7.doc

共1个文件

名称:跑马灯控制器设计Verilog代码Quartus? DE2开发板

软件:Quartus

语言:Verilog

代码功能:

研究目标:采用EDA技术,以硬件描述语言 Verilog HDL为系统逻辑描述语言,在QUARTUSIT具软件环境下,采用自顶向下的设计方法,由各个基本模块共同构建一个基于FPGA的跑马灯控制器。该控制器能控制跑马灯的变化花样、变化速度和亮度,具有暂停等功能。

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

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

DE2开发板.png

演示视频:

设计文档:

1.?工程文件

2.?程序文件

3.?程序编译

4.?RTL图

5.?仿真图

整体仿真图

亮度控制模块

花样控制模块

4种花样

速度控制模块

部分代码展示:

//亮度控制模块
module?light_ctrl(
input?clk_in,//50MHz
input?rst_n,//reset
input?[1:0]?led_light,//亮度
output?led_pwm//输出不同占空比信号,对应不同亮度
);
//亮度分20%,50%,80%,100%
reg?[7:0]?duty_para=8'd0;
always@(posedge?clk_in?or?negedge?rst_n)
if(!rst_n)
duty_para<=8'd0;
else
case(led_light)//亮度
2'b00:duty_para<=8'd20;//20%
2'b01:duty_para<=8'd50;//50%
2'b10:duty_para<=8'd80;//80%
2'b11:duty_para<=8'd100;//100%
default:duty_para<=8'd20;//20%
endcase
reg?[31:0]?div_cnt=32'd0;
reg?div_clk=0;
always@(posedge?clk_in?or?negedge?rst_n)
if(!rst_n)begin
div_cnt<=32'd0;//复位
div_clk<=0;
end
else
if(div_cnt>=32'd50000)begin//分频50000---250
div_cnt<=0;
div_clk<=~div_clk;
end
else?begin
div_cnt<=div_cnt+1;//计数
end

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

  • 2-24101G91430B7.doc
    下载

相关推荐