基于VerilogHDL的数字秒表设计

一、实验准备

1.1 实验设计
在这里插入图片描述

二、项目开始

2.1 创建工程文件,新建一个verilog文件,名字自取
具体过程可以参考基于Quartus-II软件实现一个1位全加器的设计

2.2 源码:

module running_gly(clk,reset,pause,msh,msl,sh,sl,minh,minl);
input clk,reset,pause;
output [3:0] msh,msl,sh,sl,minh,minl;
reg [3:0] msh,msl,sh,sl,minh,minl;
reg count1,count2;
always @(posedge clk or posedge reset)
 begin
   if(reset)
	  begin
	    {msh,msl}<=0;
		 count1<=0;
	  end
   else if(!pause)
      begin
	     if(msl==9)
		     begin
			  msl<=0;
			    if(msh==9)
				  begin
				   msh<=0;
					count1<=1;
					end
					else
					 msh<=msh+1;
				end
   else
    begin
	 msl<=msl+1;
	 count1<=0;
	 end
	 end
end
always@(posedge count1 or posedge reset)
   begin
   if(reset)
     begin
	    {sh,sl}<=0;
		 count2<=0;
	  end
	 else if(sl==9)
	   begin
	     sl<=0;
		  if(sh==5)
		    begin
			  sh<=0;
			  count2<=1;
			  end
			else
			  sh<=sh+1;
			end
		else	
		     begin
			  sl<=sl+1;
			  count2<=0;
			  end
		end
always @(posedge count2 or posedge reset)
  begin
   if(reset)
     begin
      minh<=0;
      minl<=0;
      end
    else if(minl==9)
       begin 
         minl<=0;
       if(minh==5)
         minh<=0;
	    else
	     minh<=minh+1;
      end
      else
      minl<=minl+1;
		end
endmodule	

2.3 创建wvf波形文件
具体步骤也可以参考上面的连接
我在这里放结果图:
讲一下重点步骤,这里做的是数字秒表设计

  • 编辑仿真时间(我定的是1秒)
    在这里插入图片描述
    在这里插入图片描述

  • 编辑时钟(设置1ns为1拍)
    在这里插入图片描述

  • 调整信号
    在这里插入图片描述

  • 仿真实现
    Simulation出了点小问题,暂时无法仿真。
    在这里插入图片描述

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值