VHDL数字时钟实验报告

VHDL数字时钟实验报告

ID:46460728

大小:175.00 KB

页数:24页

时间:2019-11-24

VHDL数字时钟实验报告_第1页
VHDL数字时钟实验报告_第2页
VHDL数字时钟实验报告_第3页
VHDL数字时钟实验报告_第4页
VHDL数字时钟实验报告_第5页
资源描述:

《VHDL数字时钟实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、vm数字时钟设计一、实验目的:进一步练习VHDL语言设计工程的建立与仿真的步骤和方法、熟悉VHDL语言基本设计实休的编写方法。同时,在已右知识的基础上,简单综合编写程序,仿制简单器械。二、实验环境:PC个人计算机、WindowsXP操作系统、QuartusII集成开发环境软件。三、设计要求:运用VHDL语言编写一个数字钟,具体耍求:1.具有时、分、秒计数的十进制数字显示功能,以24小时循环计时。2.具有手动调节小时,分钟的功能。3.具有闹钟的功能,能够在设定的闹钟时间发出闹铃声。四、实验步骤:1.定义输入输出信号量port(clk:instd_logic

2、;一・时钟speak:outstdjogic;一-铃dout:outstd_logic_vector(7downto0);…晶体管显示setclk:instd_logic_vector(2downto0);…操作按钮dl,d2,d3,d4,d5,d6:outstd_logic);---六个晶体管2.定义结构体中的信号量signalsekstd_logic_vector(2downto0);signalhou1:std_logic_vector(3downto0);一时分秒的个位和I彳立signalhou2:std_logic_vector(3downto

3、0);signalminkstd_logic_vector(3downto0);signalmin2:std_logic_vector(3downto0);signalsethl:std_logic_vector(3downto0);signalseth2:std_logic_vector(3downto0);signalsetmkstd_logic_vector(3downto0);signalsetm2:std_logic_vector(3downto0);signalsecl:std」ogic_vector(3downto0);signalsec2

4、:std_logic_vector(3downto0);signalhl:std_logic_vector(3downto0);signalh2:std_logic_vector(3downto0);signalml:std_logic_vector(3downto0);signalm2:std_logic_vector(3downto0);signalsl:std_logic_vector(3downto0);signals2:std_logic_vector(3downto0);signalsph1,sph2,spm1,spm2,sps1,sps2:

5、std」ogic_vector(3downto0);signalcount_sec:std_logic_vector(9downto0);signalsec_co:std_logic;signalco1,co2,co3,co4:std_logic;一进位signalswitch:s(d」ogic_vector(ldownto0);一表示状态1.分频模块用来定义秒count_sec用来计时钟个数,当count_sec=l111111111W,及得到1Hz信号。代码如F:process(elk)is--defineasecondbeginif(clk*eve

6、ntandelk二T)thenif(count_sec="l1111111ir*)thencount_sec<="0000000000";sec_co<='l';elsecount_sec<=count_sec+'1scc_co<='0,;endif;endif;endprocess;4•时钟正常走时模块该模块使用6个进程实现,分别为秒个位计时、秒十位计时、分个位计时、分十位计时、时个位计时、时十位计时。process(sec_co)is秒个位begin讦switch二”00“then一正常状态ifsec_co='l'thenifsec2="1001"t

7、hensec2<=H0000M;coK^P;elsescc2v=scc2+T;col<='0';endif;endif;elsifswitch="01"then■■调时状态sec2<=n0000M;endif;endprocess;process(col)isbegin秒十位ifswitch="OO"thenifco1'eventandcol-Tthenif(secl="010r')thensecl<=,,0000n;co2v二T;elsesecl<=secl+'r;co2<=,0,;endif;endif;clsifswitch二"01"thensec

8、lv二”0000";endif;endprocess;process(co1,c

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

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

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