- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VHDL的多功能数字钟的设计
电子钟设计
1.摘要
本实验是设计一个多功能数字钟,具有计时、校时、清零等简单功能,在计算机上运用 Quartus II软件进行仿真调试,并下载到下载板上(ALTEA EPM7064SLI44-7)实现,通过开关来控制其主要的功能。
关键字:Quartus II,电子钟, ALTEA EPM7064SLI44-7。
2.实验设计要求与目的
设计制作一个0秒0分—59秒59分的多功能计时器,设计要求如下:
1.计时功能:完成0秒0分—59秒59分的计时功能。
2.清零功能:在板上设置一个手动清零开关,通过它可以对电路实现实时的手动清零。
3.校时功能:可随时对电路进行校时功能,并设置两个开关(a/b)控制。按下a开关时(手不松开),数字时钟的秒钟数迅速增加(4HZ的时钟频率来驱动),并按60循环,计满60后再回00。按下b开关时(手不松开),数字时钟的分钟数迅速增加(4HZ的时钟频率来驱动),并按60循环,计满60后再回00。
目的:掌握各类计数器;掌握多个数码管显示的原理与方法;掌握使用VHDL语言的设计思想;对整个系统的设计有一个了解。
3.实验环境
1.软件环境:QuartusII 7.2
2.硬件环境:ALTEA EPM7064SLI44-7
4.设计原理框图
译码显示
译码显示
清零电路计数电路
清零电路
计数电路
校时电路
校时电路
5 各功能实现原理
整个数字钟的设计包括七个模块,分别为分频、清零、计时、校时、BCD编码、扫描、译码,各模块的设计解决方案具体如下。
5.1 分频功能实现
因为我们需要1HZ的频率来用来驱动秒计时器,而硬件提供的时钟频率是4HZ,所以我们要进行分频。分频的程序如下:
process(clk4hz ) ----clk4hz为硬件提供的时钟频率4hz
begin
if clk4hzevent and clk4hz=1then
if count=3 then
count:=0;clk1hz=1;point=clk1hz; ---clk4hz分频后1hz
else count:=count+1;clk1hz=0;point=clk1hz;-----时钟频率“clk4hz”跳变四次,clk1hz时钟频率跳一次,实现分频。
end if;
end if;
end process;
5.2 清零功能实现
硬件上一共有四个开关,设置硬件上的一个开关为清零开关。当按下该开关时,时钟的显示全部为零。清零的程序如下:
process (rst)
begin
if rst=0 then----这里我们设置了一个清零键“rst”当清零键为0状态时(即按下该清零键时),小时和分钟全部清零
sec1=0;----秒清零
min1=0;----分钟清零
5.3 计时功能实现
计时功能可分为两部分来实现,依次设计分位、秒位的计数单元。计时程序如下:
process (clk1hz, clear,sec,min)
begin
if clk1hzevent and clk1hz=1 then--分频后的时钟频率来驱动
if clear=1 then------当清零键状态为“1”
if sec=59 then sec=0; -----当数字时钟的秒钟为59时,即刻置为零
if min=59 then min=0;-----当数字时钟的分钟为59时,即刻置为零
else min=min+1; -----当数字时钟的分钟没到59时,加1
end if;
else miao1=miao1+1; 当数字时钟的秒钟没到59时,加1
end if;
end if;
end if;
5.4 校时功能实现
对电路进行校时功能,设置两个开关(a/b)控制。按下a开关时(手不松开),数字时钟的秒钟数迅速增加(4HZ的时钟频率来驱动),并按60循环,计满60后再回00。按下b开关时(手不松开),数字时钟的分钟数迅速增加(4HZ的时钟频率来驱动),并按60循环,计满60后再回00。校时程序如下:
if a=0 then-----设置调秒钟的开关a
if sec=59 then sec=0;
else sec=sec+1;
end if;
end if;
if b=0 then -----设置调分钟的开关b
if min=59 then min =0;
else min = min +1;
end if;
这里要说明下,调时间是用4HZ的时钟频率来驱动,目的是为了调得更快些,但也不会因为过快而调不准。
5.5 BCD编码功能实现
这里我们将十进制转化为二进制,因为时钟计的数是十进制,所以我们要将十进制转成二进制。编码功能程序如下:
proces
您可能关注的文档
最近下载
- (12页PPT)美的集团QMS系统培训ROHS试验V10.pptx VIP
- 慢性阻塞性肺疾病健康教育培训课件.pptx VIP
- 工业机器人系统运维员实操试卷(技师)(试卷三).docx VIP
- (23页PPT)美的集团QMS系统培训成品抽检V11.pptx VIP
- 新教材北师大版高中数学选择性必修第一册第一章直线与圆知识点考点重点难点解题规律归纳总结.pdf VIP
- 美的集团QMS系统培训-成品巡检V1.1.ppt VIP
- 第四版(2025)国际压力性损伤溃疡预防和治疗临床指南解读.docx VIP
- 小学信息技术教案制作贺卡.doc VIP
- 《光伏渔业池塘建设通用技术规范》.pdf VIP
- 2025年供应链管理部年终总结.docx
原创力文档


文档评论(0)