当前位置: 首页 > news >正文

简单秒表设计仿真verilog跑表,源码/视频

名称:简单秒表设计仿真

软件:Quartus

语言:Verilog

代码功能:

秒表显示最低计时为10ms,最大为59:99,超出返回00:00

具有复位、启动、暂停三个按键

四个数码管分别显示4个时间数字。

演示视频:简单秒表设计仿真verilog跑表_Verilog/VHDL资源下载

FPGA代码资源下载网:hdlcode.com

代码下载:

简单秒表设计仿真verilog跑表_Verilog/VHDL资源下载名称:简单秒表设计仿真(代码在文末付费下载)软件:Quartus语言:Verilog代码功能:秒表显示最低计时为10ms,最大为59:99,超出返回00:00具有复位、启动、暂停三个按键四个数码管分别显示4个时间数字。演示视频:FPGA代码资源下载网:hdlcode.com部分代码展示module stopwatch(input clk,//100Hz--对应10msinput start_keyicon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=200

部分代码展示

module stopwatch(
input clk,//100Hz--对应10ms
input start_key,//启动
input stop_key,//暂停
input reset_key,//复位
output reg [7:0] display0,//输出数码管显示
output reg [7:0] display1,//输出数码管显示
output reg [7:0] display2,//输出数码管显示
output reg [7:0] display3//输出数码管显示
);
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)
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(stop_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;//秒
always@(posedge clk)
if(state==reset_time_state)//复位状态
second_cnt<=8'd0;
else
if(state==cnt_time_state)//计时状态
if(Millisecond_cnt==8'd99)//990ms时向前记1秒
if(second_cnt<8'd59)
second_cnt<=second_cnt+8'd1;//计时到990ms,下一次就到1秒了

设计文档:

1.工程文件

2.程序代码

3.程序运行

4.Testbench

5.仿真图

秒表显示最低计时为10ms,最大为59:99,超出返回00:00

具有复位、启动、暂停三个按键

四个数码管分别显示4个时间数字。

1、整体仿真图

2、复位功能

3、启动按键

4、暂停按键

5、10ms毫秒计时

6、秒计时

http://www.lryc.cn/news/199087.html

相关文章:

  • 【发布】Photoshop ICO 文件格式插件 3.0
  • 负载均衡、代理和动静分离的战略
  • Gitlab用户角色权限Guest、Reporter、Developer、Master、Owner
  • C#上位机序列9: 批量读写+事件广播+数据类型处理
  • 科技资讯|2023全球智能手表预估出货1.3亿块,智能穿戴提升AI功能
  • 技术架构之术
  • 【自用重要】概率论中θ和θ尖的区别【计算时的一般方法】
  • Redis设计与实现笔记 - 数据结构篇
  • 线性代数-Python-01:向量的基本运算 -手写Vector -学习numpy的基本用法
  • 数字图像处理实验记录二(直方图和直方图均衡化)
  • 大数据Flink(九十九):SQL 函数的解析顺序和系统内置函数
  • TODO Vue typescript forEach的bug,需要再核實
  • 简记一个错误
  • 第四次作业
  • 面试问题整理总结
  • 进阶JAVA篇- Collection 类的常用的API与 Collection 集合的遍历方式
  • CentOS | 添加普通用户并授权sudo
  • 【MyBatis】mybatis工具类迭代
  • MSQL系列(六) Mysql实战-SQL语句优化
  • kaggle新赛:UBC卵巢癌亚型分类和异常检测大赛【图像分类】
  • 基于nodejs+vue云旅青城系统
  • 《孙哥说Spring5》笔记汇总
  • 在使用了spring-cloud-starter-gateway后,为什么还会发生cors问题
  • CentOS7安装MySQL8.0.28
  • AutoSAR入门:应用背景及简介
  • C++初阶(三)
  • PHP的学习入门建议
  • 骰子涂色(Cube painting, UVa 253)rust解法
  • elasticsearch的docker安装与使用
  • ELK 单机安装