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

9999秒以内任意倒计时器,倒计完成有LED提示Verilog代码ISE basys2开发板

07/04 14:36
423
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24011Q01413250.doc

共1个文件

名称:9999秒以内任意倒计时器,倒计完成有LED提示Verilog代码ISE basys2开发板

软件:ISE

语言:Verilog

代码功能:9999秒以内任意倒计时器,倒计完成有LED提示

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

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

basys2开发板.png

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. testbench

6. 仿真图

整体仿真图

分频模块

起始时间设置模块

倒计时模块

显示模块

部分代码展示:

//时间设置
module time_set(
input clk_1Hz,//1Hz时钟
input s_key,//千位按键
input h_key,//百位按键
input t_key,//十位按键
input o_key,//个位按键
output [3:0]s_set,//千位
output [3:0]h_set,//百位
output [3:0]t_set,//十位
output [3:0]o_set //个位
);
reg [3:0]s_set_time=4'd0;//千位
reg [3:0]h_set_time=4'd0;//百位
reg [3:0]t_set_time=4'd0;//十位
reg [3:0]o_set_time=4'd0;//个位
always@(posedge clk_1Hz)
if(s_key==1)//按下按键设置千位
if(s_set_time==4'd9)//计数到9回0
s_set_time<=4'd0;
else
s_set_time<=s_set_time+4'd1;//计数
always@(posedge clk_1Hz)
if(h_key==1)//按下按键设置百位
if(h_set_time==4'd9)//计数到9回0
h_set_time<=4'd0;
else
h_set_time<=h_set_time+4'd1;//计数
always@(posedge clk_1Hz)
if(t_key==1)//按下按键设置十位
if(t_set_time==4'd9)//计数到9回0
t_set_time<=4'd0;
else
t_set_time<=t_set_time+4'd1;//计数
always@(posedge clk_1Hz)
if(o_key==1)//按下按键设置个位
if(o_set_time==4'd9)//计数到9回0
o_set_time<=4'd0;
else
o_set_time<=o_set_time+4'd1;//计数
//输出
assign s_set=s_set_time;//千位
assign h_set=h_set_time;//百位
assign t_set=t_set_time;//十位
assign o_set=o_set_time;//个位

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

  • 2-24011Q01413250.doc
    下载

相关推荐