EDA课程设计报告--数字式秒表

EDA课程设计报告--数字式秒表

ID:35627184

大小:51.00 KB

页数:9页

时间:2019-04-03

EDA课程设计报告--数字式秒表_第1页
EDA课程设计报告--数字式秒表_第2页
EDA课程设计报告--数字式秒表_第3页
EDA课程设计报告--数字式秒表_第4页
EDA课程设计报告--数字式秒表_第5页
资源描述:

《EDA课程设计报告--数字式秒表》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、EDA课程设计报告设计名称:数字式秒表专业:08光信息科学与技术姓名:张XX学号:2008146144指导老师:吴正平设计时间:2011-4-10至2011-4-25一、设计任务与技术指标要求(输入频率为1.5MHz的脉冲信号)设计并制作一个用七段数码管显示的秒表,并具有如下指标:1.设计一个用七段数码管显示的秒表,它有“分”、“秒”、“百分之一秒”十进制显示,如图1所示:图1秒表表盘示意图2.开机显示00.00.00,最大显示23.59.99;3.能够准确地计时并正确显示时间,计时精度0.01秒;4.用户可以随时开始计时,也可随时结束计时。

2、二、设计原理该系统由时钟信号发生器、分频电路、计时电路、译码显示电路等模块组成。其总体框图如图2所示:数码管显示驱动电路计时电路分频电路时钟信号发生器图2系统总体框图三、组成VHDL程序模块如下:1.分频模块:利用计数器原理来分频,输入时钟脉冲clk0频率为1.5MHZ,分频系数为1/15000,输出时钟脉冲clk1频率为100HZ。VHDL程序如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityfenpinisport(clk0:ins

3、td_logic;clk1:outstd_logic);endfenpin;architecturemode1offenpinissignalf_temp:std_logic_vector(15downto0);beginprocess(clk0)beginifclk0'eventandclk0='1'thenif(f_temp=14999)thenf_temp<="0000000000000000";clk1<='1';elsef_temp<=f_temp+1;clk1<='0';endif;endif;endprocess;endmode

4、1;1.s/100计时模块:利用计数器原理来计时,对输入频率为100HZ时钟脉冲clk1上升沿进行计数,个位满十则向十位进一,十位满十则输出一个时钟脉冲clk2。VHDL程序如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityfisport(clk1,stop,ret:instd_logic;clk2:bufferstd_logic;dh:bufferstd_logic_vector(3downto0);dl:bufferstd_logi

5、c_vector(3downto0));endf;architecturemode2offisbeginprocess(clk1,stop,ret)beginif(ret='1')thendl<="0000";dh<="0000";elsif(stop='0')thenifclk1'eventandclk1='1'thenifdl=9thendl<="0000";ifdh=9thendh<="0000";clk2<='1';elsedh<=dh+1;clk2<='0';endif;elsedl<=dl+1;endif;endif;endif;

6、endprocess;endmode2;1.s计时模块:利用计数器原理来计时,对来自s/100进位的时钟脉冲clk2上升沿进行计数,个位满十则向十位进一,十位满六则输出一个时钟脉冲clk3。VHDL程序如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitysisport(clk2,stop,ret:instd_logic;clk3:bufferstd_logic;dh:bufferstd_logic_vector(3downto0);dl:

7、bufferstd_logic_vector(3downto0));ends;architecturemode3ofsisbeginprocess(clk2,stop,ret)beginif(ret='1')thendl<="0000";dh<="0000";elsif(stop='0')thenifclk2'eventandclk2='1'thenifdl=9thendl<="0000";ifdh=5thendh<="0000";clk3<=’1’;elsedh<=dh+1;clk3<=’0’;endif;elsedl<=dl+1;endi

8、f;endif;endif;endprocess;endmode3;1.分计时模块:利用计数器原理来计时,对来自s进位的时钟脉冲clk3上升沿进行计数。VHDL程序

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

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

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