网站大量收购独家精品文档,联系QQ:2885784924

stopwatchverilog秒表程序.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
stopwatchverilog秒表程序

实际要求: 设计二 0.01秒~1小时的秒表设计 1、设计一个能显示0.01秒~1小时的秒表。 2、具有启动/停止按键和清零按键。 3、利用GW48-PK2中提提供的3MHz信号做为时钟信号。 4、计数结果在GW48-PK2中提供的数码管中显示。 功能实现: 基本功能: 1、设计一个能显示0.01秒~1小时的秒表。 2、具有启动/停止按键和清零按键。 3、利用GW48-PK2中提提供的3MHz信号做为时钟信号。 4、计数结果在GW48-PK2中提供的数码管中显示。 提高功能: 5.计时时间在0.01秒~24小时范围内 6.增加了一个功能按键,可以在单道和双道模式之间切换 7.可以双道计时, 8.在双道模式显示时,可以切换两道的计时结果 程序思路: 本程序的输入为三个按键,分别为功能按键(SW1)、启动停止按键(SW2)和清零按键(SW3);输出为八位数码管的时间显示,分别显示小时、分钟、秒和百分秒。 本程序有两个模式:单道模式(mode0)和双道模式(mode1)。 单道模式(mode0):按SW2按键时,启动秒表计时,以后每按一次秒表就在启动和停止之间切换,同时数码管会显示计时器中的数值;当按下SW3键时,计数器和显示都清零,并且停止计数。 双道模式(mode1):在单道模式(mode0)下按一次SW1键就切换到双道模式(mode1)。在双道模式(mode1)下,第一次按SW2按键时,启动秒表计时;第二次按SW2按键时,其中一道结束计时,并把此时的时间按存储起来,同时秒表还在继续计时;第三次按SW2按键时,秒表停止计时,并把此时的时间存储起来,表示另一道结束;以后每按一次SW2按键数码管输出显示就在两道计时结果之间切换;按下SW3键时计数器清零,数码管显示清零;此时按下SW1键可以切换到单道模式(mode0)。 本程序将各个功能单元用不同的模块写出来,一共有个模块,分别是顶层模块、分频模块、模式转换模块、按键处理模块、时间计数主模块(包括小时计时模块、分钟计时模块、秒计时模块和百分秒计时模块)、单双道时间数据选择模块、时间显示数据选择模块和模式输出显示模块。 各个模块的详细功能已在程序中注释。 程序实现: //顶层模块 //用于连接各个底层模块 module stopwatch_mode2(clk_3M,SW1,SW2,SW3, disp_ms_l,disp_ms_h, disp_sec_l,disp_sec_h, disp_min_l,disp_min_h, disp_hour_l,disp_hour_h, mode_out); input clk_3M; //系统时钟 input SW1,SW2,SW3; //按键 output mode_out; //模式输出,用于模式显示 output [3:0] disp_ms_l,disp_ms_h; //输出至数码管显示 output [3:0] disp_sec_l,disp_sec_h; output [3:0] disp_min_l,disp_min_h; output [3:0] disp_hour_l,disp_hour_h; wire clk_3M; wire SW1,SW2,SW3; wire clk_100; wire time_EN; wire mode; wire [3:0] ms_l,ms_h,sec_l,sec_h, min_l,min_h,hour_l,hour_h; wire [3:0]ms_l_0,ms_h_0,sec_l_0,sec_h_0, min_l_0,min_h_0,hour_l_0,hour_h_0; wire [3:0]ms_l_1,ms_h_1,sec_l_1,sec_h_1, min_l_1,min_h_1,hour_l_1,hour_h_1; wire [3:0] disp_ms_l,disp_ms_h, disp_sec_l,disp_sec_h, disp_min_l,disp_min_h, disp_hour_l,disp_hour_h; wire flag_ds; wire flag_st0; wire flag_st1;

文档评论(0)

xjj2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档