欢迎来到天天文库
浏览记录
ID:55690719
大小:713.00 KB
页数:14页
时间:2020-05-25
《基于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=
此文档下载收益归作者所有