vivado数字秒表verilog代码ego1开发板电子秒表跑表

名称:vivado数字秒表verilog代码ego1开发板电子秒表跑表

软件:VIVADO

语言:Verilog

代码功能:

数字秒表设计

1、秒表的设计精确到10毫秒(0.01秒)

2、可通过按键控制秒表启动、暂停、复位

3、数码管显示分、秒、毫秒

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

ego1开发板.png

代码下载:vivado数字秒表verilog代码ego1开发板电子秒表跑表名称:vivado数字秒表verilog代码ego1开发板电子秒表跑表(代码在文末下载)软件:VIVADO语言:Verilog代码功能:数字秒表设计1、秒表的设计精确到10毫秒(0.01秒)2、可通过按键控制秒表启动、暂停、复位3、数码管显示分、秒、毫秒FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com本代码已在ego1开发板验证,开发板如下,其他开发板可以修改管脚适icon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=309

1. 工程文件

2. 程序文件

3. 程序编译

4. 管脚分配

5. RTL图

6. 仿真

Testbench

整体仿真图

分频模块

按键消抖模块

秒表控制模块

显示译码模块

部分代码展示:

//跑表模块
module stopwatch(
input clk_in,
input clk_100Hz,//100Hz--对应10ms
input start_key,//启动//暂停
input reset_key,//复位
output [7:0] stopwatch_Millisecond,//10毫秒
output [7:0] stopwatch_second,//秒
output [7:0] stopwatch_minute//分
);
parameter idle_state=3'd0;
parameter cnt_time_state=3'd1;
parameter hold_time_state=3'd2;
parameter reset_time_state=3'd3;
reg [2:0] state=3'd0;
//计时状态机
always@(posedge clk_in)
if(reset_key)
state<=reset_time_state;//复位状态
else
case(state)
reset_time_state://复位状态
state<=idle_state;
idle_state://空闲状态
if(start_key)
state<=cnt_time_state;
else
state<=idle_state;
cnt_time_state://计时状态
if(start_key)
state<=hold_time_state;
else
state<=cnt_time_state;
hold_time_state://暂停状态
if(start_key)
state<=cnt_time_state;
else
state<=hold_time_state;
default:;
endcase
reg [7:0] Millisecond_cnt=8'd0;//10毫秒
reg [7:0] second_cnt=8'd0;//秒
reg [7:0] minute_cnt=8'd0;//分
always@(posedge clk_in)
if(state==reset_time_state)//复位状态
minute_cnt<=8'd0;
else
if(state==cnt_time_state && clk_100Hz==1)//计时状态
if(Millisecond_cnt==8'd99 && second_cnt==8'd59)//59秒99'时向前记1分
if(minute_cnt<8'd59)
minute_cnt<=minute_cnt+8'd1;//计时到990ms,下一次就到1秒了
else
minute_cnt<=8'd0;
else
minute_cnt<=minute_cnt;
else;
always@(posedge clk_in)
if(state==reset_time_state)//复位状态
second_cnt<=8'd0;
else
if(state==cnt_time_state && clk_100Hz==1)//计时状态
if(Millisecond_cnt==8'd99)//990ms时向前记1秒
if(second_cnt<8'd59)
second_cnt<=second_cnt+8'd1;//计时到990ms,下一次就到1秒了
else
second_cnt<=8'd0;
else
second_cnt<=second_cnt;
else;
always@(posedge clk_in)
if(state==reset_time_state)//复位状态
Millisecond_cnt<=8'd0;
else
if(state==cnt_time_state && clk_100Hz==1)//计时状态
if(Millisecond_cnt<8'd99)//计时到990ms,下一次就到1秒了
Millisecond_cnt<=Millisecond_cnt+8'd1;
else
Millisecond_cnt<=8'd0;//计时到990ms,下一次就到1秒了
else;
assign stopwatch_Millisecond=Millisecond_cnt;
assign stopwatch_second=second_cnt;
assign stopwatch_minute=minute_cnt;
endmodule

  • 21
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用、引用[2]和引用中提到了ego1开发板vivado以及Verilog代码。这些是用于实现数电大作业中的各种功能和设计的工具和语言。ego1开发板是一款硬件开发板vivado是一款用于FPGA设计开发的集成开发环境,而Verilog是一种硬件描述语言,常用于FPGA设计。根据引用和引用的描述,这些大作业使用ego1开发板vivado软件来设计多功能的售货机和蓝牙密码锁。具体的设计内容和功能可以参考引用、引用和引用中提供的链接和说明。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [数电满分大作业,数电满分大作业。数字电路——FPGA自动售货机 EGO1开发板 Vivado工程 Verilog代码.rar](https://download.csdn.net/download/yytju123/61110039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [数字逻辑设计大作业-乒乓球游戏模拟器](https://blog.csdn.net/weixin_50952205/article/details/121720196)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [FPGA-基于EGO1开发板的蓝牙密码锁 无线控制 开锁 修改密码 防盗保护](https://blog.csdn.net/sirlhh/article/details/125598103)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值