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

基于FPGA的定时器设计Verilog代码Quartus仿真

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

2-24011Q02649364.doc

共1个文件

名称:基于FPGA定时器设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

设计一个基于FPGA的定时器。

设计要求

1.系统主要外设:自恢复式按键4个(key1~key4)、LED灯1个、蜂鸣器1个、系统时钟(50MHz);

2.系统主要功能:能够通过按键改变定时的初始值,设置后进行自动倒计时,并通过数码管显示当前剩余时间。

备注:数码管上显示时、分、秒,并要求时、分、秒都可配置;倒计时结束,LED闪烁

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. testbench

6. 仿真图

部分代码展示:

module?timing(
input?clk_in,//50M
input?reset,//复位
input?start_key,//开始
input?hour_key,//小时按键
input?minute_key,//分钟按键
input?second_key,//秒钟按键
output?LED,
output?[7:0]?HEX0,//数码管-低亮
output?[7:0]?HEX1,//数码管-低亮
output?[7:0]?HEX2,//数码管-低亮
output?[7:0]?HEX3,//数码管-低亮
output?[7:0]?HEX4,//数码管-低亮
output?[7:0]?HEX5?//数码管-低亮
);
wire?clk_1Hz;//1Hz时钟
wire[7:0]hour_set;//小时
wire[7:0]minute_set;//分钟
wire[7:0]second_set;//秒钟
wire[7:0]hour_out;//小时
wire[7:0]minute_out;//分钟
wire[7:0]second_out;//秒钟
//分频模块,分频到1Hz
fenping?i_fenping(
.?clk_50M(clk_in),
.?clk_1Hz(clk_1Hz)
);
//时间设置
time_set?i_time_set(
.?clk_1Hz(clk_1Hz),//1Hz时钟
.?hour_key(hour_key),//小时按键
.?minute_key(minute_key),//分钟按键
.?second_key(second_key),//秒钟按键
.?hour_set(hour_set),//小时
.?minute_set(minute_set),//分钟
.?second_set(second_set)//秒钟
);
//时间倒计时
time_down?i_time_down(
.?clk_1Hz(clk_1Hz),//1Hz时钟
.?reset(reset),//复位
.?start_key(start_key),//开始
.?LED(LED),
.?hour_set(hour_set),//起始时间小时
.?minute_set(minute_set),//起始时间分钟
.?second_set(second_set),//起始时间秒钟
.?hour_out(hour_out),//小时
.?minute_out(minute_out),//分钟
.?second_out(second_out)//秒钟
);

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

  • 2-24011Q02649364.doc
    下载

相关推荐