下载此文档

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


文档分类:通信/电子 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
精品资料
《EDA技术应用》
课程设计报告
基于FPGA的数字钟设计
专业: 通信工程
班级: 10311
姓名:
指导教师:



目录
1
1
1
2
2
2
3
秒钟模块 3
4
6
7
9
11
12
14
14
15
16
16
16
参考书目 17
基于FPGA的数字钟的设计


设计并实现具有一定功能的数字钟。包括清零、置数、计数、报时等功能。
具有时、分、秒计数显示功能,且以24小时循环计时。
具有清零的功能,且能够对计时系统的小时、分钟进行调整。
具有整点报时功能。

(1) 采用VHDL语言编写程序,并在QuartusII工具平台中进行开发,下载到EDA实验箱进行验证。
(2) 编写设计报告,要求包括方案选择、程序清单、调试过程、测试结果及心得体会。

本设计由振荡器、分频器、计数器、译码器显示器和校时电路组成。振荡器提供稳定的6M脉冲信号,作为数字钟的时钟,然后经过分频器分频后输出标准1HZ脉冲。中间变量计数十次后,生成秒信号,秒计数器满60后向分计数器进位,分计数器满60后向时钟进位,时计数器满24后全部清零。
此次设计的多功能数字钟主要有四部分组成:
分频器部分:主要产生6MHZ的CLK的输入脉冲信号。
开关控制部分:主要实现数字钟的复位。
EPM7064芯片部分:是整个数字钟的核心部分。是程序写入以及对输入脉冲的接收与转换控制。
数码管显示部分:6位数码管动态(2000HZ)显示时、分、秒。
:


开始
新建VHDL源程序
创建工程


编译程序

生成模块符号文件


设置顶层实体
下载到硬件电路


执行程序命令
执行

结束
图2工程流程图创建步骤

秒钟模块
此模块主要由输入端口clk=1HZ的频率源作为计数器的时钟,当计数到59归零并且时产生进位carry=1作为分钟的时钟源。

miao_60的源代码:
library ieee;
use ;
use ;
use ;
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 clk'event and clk='1' then
if tem1="1001" then --个位计到9时归零
tem1<="0000";
if tem2="0101" then --十位到5时归零
tem2<="0000";
carry<='1'; --给分钟进位作为分钟的时钟频率
else
tem2<=tem2+1; carry<='0';
end if;
else
tem1<=tem1+1;
end if;
end if;
shi<=tem2;ge<=tem1;
end process;

《EDA技术应用》课程设计报告-基于FPGA的数字钟设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人3346389411
  • 文件大小0 KB
  • 时间2014-02-14