基于VHDL的数字时钟课程设计.doc

基于VHDL的数字时钟课程设计.doc

ID:55690719

大小:713.00 KB

页数:14页

时间:2020-05-25

基于VHDL的数字时钟课程设计.doc_第1页
基于VHDL的数字时钟课程设计.doc_第2页
基于VHDL的数字时钟课程设计.doc_第3页
基于VHDL的数字时钟课程设计.doc_第4页
基于VHDL的数字时钟课程设计.doc_第5页
资源描述:

《基于VHDL的数字时钟课程设计.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、数字时钟设计1.设计要求(1)能显示周、时、分、秒,精确到0.1秒(2)可自行设置时间(3)可设置闹铃,并且对闹铃时间长短可控制2.设计分析(1)根据题目要求可分解为正常计时、时间设置和闹铃设置三大模块(2)正常计时模块可分解为周、时、分、秒等子模块(3)时间设置模块分别进行秒置数、分置数、时置数和周置数(4)闹铃设置模块分解为闹钟判定和闹铃时长设定3.设计结构图时间重置闹钟设定数字钟正常计数数字显示4.设计流程图开始正常计时重置时间?否是时重置分重置秒重置正常计时时间重置?是否设置闹钟?时设定分设定时刻到达?是响铃时间显示--Second1(秒计数6进制和10进制)Library

2、ieee;Useieee.std_logic_1164.all;Useieee.std_logic_unsigned.all;Entitysecond1isPort(clks,set:instd_logic;s1,s0:instd_logic_vector(3downto0);Secs,Secg:bufferstd_logic_vector(3downto0);cout1:outstd_logic);Endsecond1;Architectureaofsecond1isBeginProcess(clks,set)variabless,sg:std_logic_vector(3dow

3、nto0);--(ss:秒十位;sg秒个位)variableco:std_logic;BeginIfset='1'thenss:=s1;sg:=s0;Elsifclks'eventandclks='1'thenifss="0101"andsg="1001"thenss:="0000";sg:="0000";co:='1';elsifsg<"1001"thensg:=sg+1;co:='0';elsifsg="1001"thensg:="0000";ss:=ss+1;co:='0';endif;endif;cout1<=co;--(进位信号)Secs<=ss;Secg<=sg;end

4、process;Enda;仿真波形图:--Min1(分计数器6进制和10进制alm实现整点报时)Libraryieee;Useieee.std_logic_1164.all;Useieee.std_logic_unsigned.all;Entitymin1isPort(clkm,set:instd_logic;m1:instd_logic_vector(3downto0);m0:instd_logic_vector(3downto0);mins,ming:outstd_logic_vector(3downto0);enmin,alarm:outstd_logic);End;Arch

5、itectureaofmin1isBeginProcess(clkm,set)variablems,mg:std_logic_vector(3downto0);variableso,alm:std_logic;Beginifset='0'thenms:=m1;mg:=m0;Elsifclkm'eventandclkm='1'thenifms="0101"andmg="1001"thenms:="0000";mg:="0000";so:='1';alm:='1';elsifmg<"1001"thenmg:=mg+1;so:='0';alm:='0';elsifmg="1001"the

6、nmg:="0000";ms:=ms+1;so:='0';alm:='0';endif;endif;alarm<=alm;enmin<=so;mins<=ms;ming<=mg;Endprocess;Enda;仿真波形图:--Hour1(时计数器4进制与2进制)Libraryieee;Useieee.std_logic_1164.all;Useieee.std_logic_unsigned.all;Entityhour1isPort(clkh,set:instd_logic;h1,h0:instd_logic_vector(3downto0);hours,hourg:buffers

7、td_logic_vector(3downto0);enhour:outstd_logic);End;Architectureaofhour1isBeginProcess(clkh,set)variablehs,hg:std_logic_vector(3downto0);variableho:std_logic;BeginIfset='1'thenhs:=h1;hg:=h0;Elsifclkh'eventandclkh='1'thenifhs="0010"andhg=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。