《EDA技术应用》课程设计报告-基于FPGA的数字钟设计.docVIP

《EDA技术应用》课程设计报告-基于FPGA的数字钟设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《EDA技术应用》 课程设计报告 基于FPGA的数字钟设计 专 业: 通信工程 班 级: 10311 姓 名: 指导教师: 2012.1.6 目录 1.设计任务及要求 1 1.1设计任务 1 1.2设计要求 1 2.设计方案以及流程 2 2.1设计原理图 2 2.2工程流程图 2 3.程序设计 3 3.1 秒钟模块 3 3.2分钟模块 4 3.3时钟模块 6 3.4分频模块 7 3.5数码管控制模块 9 3.6七段译码显示模块 11 3.7顶层模块 12 4.硬件测试 14 4.1管脚的分配 14 4.2调试 15 4.3实验现象 16 5.总结 16 6.老师点评 16 参考书目 17 基于FPGA的数字钟的设计 1.设计任务及要求 1.1设计任务 设计并实现具有一定功能的数字钟。包括清零、置数、计数、报时等 功能。 具有时、分、秒计数显示功能,且以24小时循环计时。 具有清零的功能,且能够对计时系统的小时、分钟进行调整。 具有整点报时功能。 1.2设计要求 (1) 采用VHDL语言编写程序,并在QuartusII工具平台中进行开发,下载到EDA实验箱进行验证。 (2) 编写设计报告,要求包括方案选择、程序清单、调试过程、测试结果及心得体会。 2.设计方案以及流程 本设计由振荡器、分频器、计数器、译码器显示器和校时电路组成。振荡器提供稳定的6M脉冲信号,作为数字钟的时钟,然后经过分频器分频后输出标准1HZ脉冲。中间变量计数十次后,生成秒信号,秒计数器满60后向分计数器进位,分计数器满60后向时钟进位,时计数器满24后全部清零。 此次设计的多功能数字钟主要有四部分组成: 分频器部分:主要产生6MHZ的CLK的输入脉冲信号。 开关控制部分:主要实现数字钟的复位。 EPM7064芯片部分:是整个数字钟的核心部分。是程序写入以及对输 入脉冲的接收与转换控制。 数码管显示部分:6位数码管动态(2000HZ)显示时、分、秒。 2.1设计原理图: 图1.数字钟原理图 2.2工程流程图 ↓ ↓ ↓ ↓ ↓ ↓ 执行 ↓ 图2工程流程图创建步骤 3.程序设计 3.1 秒钟模块 此模块主要由输入端口clk=1HZ的频率源作为计数器的时钟,当计数到59归零并且时产生进位carry=1作为分钟的时钟源。 miao_60的源代码: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity miao_60 is port(clk :in std_logic; --输入1HZ的频率 rst :in std_logic; --rst 复位 shi: out std_logic_vector(3 downto 0); --秒的十位、个位 ge: out std_logic_vector(3 downto 0); carry :out std_logic ); --满59s进位给分钟作频率 end entity miao_60; architecture art1 of miao_60 is signal tem1: std_logic_vector(3 downto 0); --定义与端口等宽的信号 signal tem2: std_logic_vector(3 downto 0); --位矢量 begin process(clk,rst) begin if(rst=0 ) then tem1=0000; --复位时十、个位归零 tem2=0000; elsif clkevent and clk=1 then if tem1=1001 then --个位计到9时归零 tem1=0000;

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档