- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一部分 设计任务-.doc
第一部分 设计任务
设计一个可以顺计时和倒计时的秒表。要求计时的范围为00.0S~99.9S,用三位数码管显示。
基本要求:(80分)
倒计时:通过小键盘可以实现设定计时时间(以秒为单位,最大计时时间为99.9秒)。通过键盘实现计时开始、计时结束。当所设定的倒计时间到达00.0S后,自动停止倒计时,同时响铃。
顺计时:初始值为00.0S,通过键盘实现开始计时和结束计时功能。计时结束后,显示记录的时间。
用三个发光二极管正确显示以下状态:倒计时状态、顺计时状态、待机状态。
每当接收到有效按键时,蜂鸣器发出提示声。
第二部分 设计方案
本方案分为六大模块
分别是:
(1)分频模块,
(2)键盘扫描模块
(3)计数器模块
(4)显示模块
(5)蜂鸣器模块
(6)LED灯控制模块
各模块连接整机图如下:
以下详细描述各模块的具体功能:
分频模块:
该分频器采用200分频,输入是clk,输出是clk_out,因为晶振是2.048MHz,硬件本身有2的10次方即1024分频得到的是2KHz 的频率,然后经过软件设计的分频器得到10Hz 的频率,由clk_out端口供给计数器作为时钟信号。
模块连接图如下:
分频模块
计数器模块:
计数器的输入端口是a,b,c,clk_out,reset,change,start,输出端口是bell1,output,其中output是12线的端口,也即组成了三组BCD码。clk_out是时钟信号输入端,频率由分频器的10HZ频率提供;a,b,c是低电平有效,起到预置数的功能:当c,b,a分别有低电平有效信号时,output的高4位,中4位,低4位分别会加1,加到1001B即十进制的9时再加1则变为0;reset是低电平有效,复位使output全0;change高电平时顺计时,低电平时倒计;start=‘1’时开始计时,start=‘0’时停止计时;当倒计时计到output=“000000000000”时bell1持续高电平,使蜂鸣器发出响声。
模块连接图如下:
计数器模块
(3)显示模块:
输入端口是output(12 downto 0)和clk,输出端口是BCD(3 downto 0)和lsd(2 downto0),这里的output(12 downto 0)是计数器模块的output输出端口,clk是2KHz的时钟信号,BCD循环输出output(3 downto 0),output(7 downto 4)以及output(11 downto 8),而lsd(2 downto 0)则用来控制三个数码管的亮灭,这里采用了动态显示的方法,由于人的视觉滞留就觉得三个数码管是同时亮的。
模块连接图如下:
显示模块
(4)键盘扫描模块:
输入端口是keyin(3 downto 0),clk;输出端口是a,b,c,reset,change,start,bell2,keyout(3 downto 0);keyin是键盘扫描输出信号,keyout是键盘扫描模块的输出信号,clk是2KHz的时钟信号,a,b,c连接计数器的a,b,c;reset,change,start分别连接计数器的reset,change,start。这里用了7个按键,1键顺计时,2键倒计时,当按下1或2都会使reset产生低电平有效信号使计数器复位;3键开始,按下3会使start=‘1’,4键暂停,按下4使得start=‘0’,控制计数器开始计时和结束计时,5键控制c产生一个低电平,6控制b产生一个低电平,7键控制a产生一个低电平,用来给计数器预置数;按7个键中的任何一个都会使bell2产生高电平,蜂鸣器发出响声。
模块连接图如下:
键盘扫描模块
(5)蜂鸣器模块:
就是一个或门,输入端口是bell1,bell2,输出是bellout,当bell1,bell2其中有一个是高电平则输出bellout就是高电平;只有bell1,bell2同时为低电平时,输出才是低电平。
模块连接图如下:
(6)LED灯控制模块:
输入端口是change,start,输出是light(2 downto 0),change和start就是计数器模块的输入信号,这里用三个灯指示计数器的状态(等待,顺计时,倒计时),其真值表如下:
change Start Light(2 downto 0) × 0 “110” 1 1 “011” 0
文档评论(0)