- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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;
您可能关注的文档
- ITO数控滚刀磨床详细介绍.doc
- IPO绿鞋机制(图文详解).doc
- J507气孔产生原因.doc
- jason小技巧1.doc
- java1-3章答案.doc
- IS--LM曲线财政政策货币政策.doc
- JASON软件介绍.doc
- JAVA操作图片裁切与缩放的一个工具类(个人收藏).docx
- java项目部署指南.doc
- java调用ftp常用操作.docx
- 人教版英语5年级下册全册教学课件.pptx
- 部编人教版2年级上册语文全册教学课件含单元及专项复习.pptx
- 人教版8年级上册英语全册教学课件(2021年8月修订).pptx
- 教科版(2017版)6年级上册科学全册课件+课时练.pptx
- 人教版PEP版6年级英语下册全册教学课件(2022年12月修订).pptx
- 部编人教版2年级下册语文全册课件(2021年春修订).pptx
- 人教版数学6年级下册全册教学课件(2023年教材).pptx
- 湘少版5年级下册英语全册教学课件(2021年春修订).pptx
- 人教PEP4年级下册英语全册教学课件 [2}.pptx
- 人教版6年级上册英语全册教学课件.pptx
文档评论(0)