基于vhdl电子时钟设计说明书

基于vhdl电子时钟设计说明书

ID:29472337

大小:569.04 KB

页数:37页

时间:2018-12-20

基于vhdl电子时钟设计说明书_第1页
基于vhdl电子时钟设计说明书_第2页
基于vhdl电子时钟设计说明书_第3页
基于vhdl电子时钟设计说明书_第4页
基于vhdl电子时钟设计说明书_第5页
资源描述:

《基于vhdl电子时钟设计说明书》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、二、试验项目名称:基于vhdl语言的数码管时钟设计三、实验目的:利用FPGA开发板上的数码管,晶振等资源设计出能够显示时、分、秒的时钟。四、实验内容及原理:(一)、综述本实验目标是利用FPGA逻辑资源,编程设计实现一个数字电子时钟。实验环境为fpga开发板。电路设计采用VHDL硬件描述语言编程实现,开发软件为ise7.1i。(二)、模块框架设计计数时钟由模为60的秒计数器模块、模为60的分计数模块、模为24的小时计数器模块、此外还有最后的数码管显示模块。1.综合计时模块包括计时及进位两个进程,实现时钟逻辑功能。

2、2.显示模块将时钟的每次变化所对应的时间及时输出到数码管上。实质为数码管译码器。(三)、VHDL编程与仿真:1、各个进程模块以下三个process分别为分频,进位以及计时进程。分频进程用于统计CLK输入信号输出完整的1秒。进位进程控制60进制,60进制和24进制的进位关系。计时进程用于实现电子时钟的基本计时功能,即每秒均变化。---------------------分频部分-----------------process(clk,reset)beginif(reset='0')thencnt<=0;elsif

3、(clk'eventandclk='1')thencnt<=cnt+1;if(cnt=50000000)then----开发板晶振50M,统计到此时为1Scnt<=0;endif;endif;endprocess;------------------------------------------------进位共包括秒个位向秒十位进位,秒十位向分个位进位,分个位向分十位进位,分十位向时个位进位,时个位向时十位进位。根据进位规则则可以实现从0时0分0秒到23时59分59秒之间任意时刻的显示。----------

4、---各位的进位标志--------------------------process(clk,reset)beginifreset='0'thenjinwei<="000000";16elsifclk'eventandclk='1'thenifdataout_buf(0)=9thenjinwei(0)<='1';-----9S时向秒十位进位------elsejinwei(0)<='0';endif;if(jinwei(0)='1'anddataout_buf(1)=5)thenjinwei(1)<='1';

5、------59S时向分个位进位-------elsejinwei(1)<='0';endif;if(jinwei(1)='1'anddataout_buf(3)=9)thenjinwei(2)<='1';-----9分且秒十位进位时向分十位进位elsejinwei(2)<='0';endif;if(jinwei(2)='1'anddataout_buf(4)=5)thenjinwei(3)<='1';-----分十位为5且分个位进位时向时个位进位elsejinwei(3)<='0';endif;if(jinw

6、ei(3)='1'anddataout_buf(6)=9)thenjinwei(4)<='1';----时个位为9且分十位进位时向时十位进位elsejinwei(4)<='0';endif;if(jinwei(4)='1'anddataout_buf(6)=2anddataout_buf(7)=1)thenjinwei(5)<='1';----到12时且时个位进位时标记最高标记位elsejinwei(5)<='0';endif;endif;endprocess;-------------------------

7、--------------------------计数进程,其进程逻辑上受分频输出与进位控制,当分频输出变化(即每秒),秒个位自加,当满足进位条件时,调用进位规则,进行时间的跳转。16--------------------计数---------------------process(cnt,reset,dataout_buf,jinwei)beginif(reset='0')thendataout_buf(0)<=0;dataout_buf(1)<=0;dataout_buf(2)<=10;dataout_

8、buf(3)<=0;dataout_buf(4)<=0;dataout_buf(5)<=10;dataout_buf(6)<=2;dataout_buf(7)<=1;elsif(clk'eventandclk='1')thenifcnt=50000000thenif(jinwei(0)='0')thendataout_buf(0)<=dataout_buf(0)+1;elsedatao

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

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

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