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

LED长按点亮控制设计Verilog代码Quartus DE1-SOC开发板

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

2-2410101R34MH.doc

共1个文件

名称:LED长按点亮控制设计Verilog代码Quartus? DE1-SOC开发板

软件:Quartus

语言:Verilog

代码功能:

LED长按点亮控制

长按一秒按钮第一个led亮,再按一下(无论按多久)熄灭,再按一下第二个亮起,再按一下第三个亮,再按一下复原

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

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

DE1-SOC开发板.png

演示视频:

设计文档:

1.?工程文件

2.?程序文件

3.?程序编译

4.?管脚分配

5.?Testbench

6.?仿真图

部分代码展示:

//长按一秒按钮第一个led亮,再按一下(无论按多久)熄灭,
//再按一下第二个亮起,再按一下第三个亮,再按一下复原
module?key_led(
input?clk,//时钟
input?key_in,//按键
output?[2:0]?led//输出led
);
parameter?second_1=32'd50000000;//1秒计数参数(下载到板子上用该句)
//parameter?second_1=32'd500;//1秒计数参数(减小计数值,加快仿真时间,软件仿真用该句)
reg?[3:0]?cur_state,next_state;
//状态定义
parameter?s_idle=4'd0;
parameter?s_wait=4'd1;
parameter?s_led1_on=4'd2;
parameter?s_led1_off=4'd3;
parameter?s_led2_off=4'd4;
parameter?s_led2_on=4'd5;
parameter?s_led3_off=4'd6;
parameter?s_led3_on=4'd7;
parameter?s_led1_wait=4'd8;
parameter?s_end=4'd9;
reg?[31:0]?count=32'd0;
//状态机第一段
always@(posedge?clk)
cur_state<=next_state;
always@(*)
case(cur_state)
s_idle:
if(key_in==0)//按键按下
next_state=s_wait;
else
next_state=s_idle;
s_wait://等待1秒
if(count>=second_1)//1秒
next_state=s_led1_on;
else?if(key_in==1)//按键释放
next_state=s_idle;//回到初始状态
else
next_state=s_wait;
s_led1_on://第一个led亮
if(key_in==1)//按键释放
next_state=s_led1_wait;
else?
next_state=s_led1_on;
s_led1_wait:
if(key_in==0)//按键按下
next_state=s_led1_off;
else
next_state=s_led1_wait;
s_led1_off:
if(key_in==1)//按键释放
next_state=s_led2_off;
else?
next_state=s_led1_off;
s_led2_off:
if(key_in==0)//按键按下
next_state=s_led2_on;
else
next_state=s_led2_off;
s_led2_on://第2个led亮
if(key_in==1)//按键释放
next_state=s_led3_off;
else
next_state=s_led2_on;
s_led3_off:
if(key_in==0)//按键按下
next_state=s_led3_on;
else
next_state=s_led3_off;
s_led3_on://第3个led亮
if(key_in==1)//按键释放
next_state=s_end;
else
next_state=s_led3_on;
s_end:
if(key_in==0)//按键按下
next_state=s_idle;
else
next_state=s_end;
default:next_state=s_idle;
endcase

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

  • 2-2410101R34MH.doc
    下载

相关推荐