利用VHDL语言进行数字钟的设计

上传人:我*** 文档编号:136015389 上传时间:2020-06-22 格式:DOC 页数:17 大小:380.50KB
返回 下载 相关 举报
利用VHDL语言进行数字钟的设计_第1页
第1页 / 共17页
利用VHDL语言进行数字钟的设计_第2页
第2页 / 共17页
利用VHDL语言进行数字钟的设计_第3页
第3页 / 共17页
利用VHDL语言进行数字钟的设计_第4页
第4页 / 共17页
利用VHDL语言进行数字钟的设计_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《利用VHDL语言进行数字钟的设计》由会员分享,可在线阅读,更多相关《利用VHDL语言进行数字钟的设计(17页珍藏版)》请在金锄头文库上搜索。

1、 北 华 航 天 工 业 学 院EDA技术综合设计课程设计报告报告题目: 利用VHDL语 言 进行数字钟的设计 作者所在系部: 电子工程系 作者所在专业: 自动化 作者所在班级: B08221班 作 者 姓 名 : 杨怀勇 指导教师姓名: 崔瑞雪 完 成 时 间 : 2010-12-2 内 容 摘 要在现今社会,动手能力的要求越来越高。而作为在校的学生,更要把握机会提高自己的动手能力。而这次的课设更是给了我们这样的一个机会,。本次EDA实验课设的题目是利用VHDL语言进行数字钟的设计。其要求设计的数字钟去有如下功能:其一,具有时,分,秒计数显示功能,其中,要求以二十四小时循环及时;其二,具有清

2、零,调节小时,分钟功能;其三,具有整点报时功能,而且在整点报时的同时LED灯花样显示。为了达到上述功能的实现,就要求我们对可编程逻辑器件,计数器,显示器有一个初步的了解,并且,能掌握它们的工作原理。另外,更是要理解和掌握EDA的VHDL语言的编程方法,否则,编程将无法进行。目 录一, 内容摘要 。1二, 课程设计任务书 。 2三,设计目的及该设计的硬件要求 。3四,根据设计要求决定的电路原理 。 4五,数字钟各模块的设计 。 5 (1)顶层文本的设计 。 6(2)秒计数器的设计 。 7(3)分计数器的设计 。 8(4)小时计数器的设计 。 9(5)报警文本的设计 。10(6)时间数据扫描分时选

3、择模块文本的设计 。11(7)译码器文本的设计 。12六,数字钟各模块连接示意图 。13七,课设心得体会 。 14课程设计任务书课题名称利用VHDL语言进行数字钟的设计完成时间12-2指导教师崔瑞雪职称教授学生姓名杨怀勇班 级B08221总体设计要求和技术要点其一,具有时,分,秒计数显示功能,其中,要求以二十四小时循环及时;其二,具有清零,调节小时,分钟功能;其三,具有整点报时功能,而且在整点报时的同时LED灯花样显示。工作内容及时间进度安排 首先,对各模块编程,并且对VHDL语言编写的程序进行编译; 其次,对各模块进行打包,封装; 最后,将各模块连接,生成数字钟示意图,并编译,仿真,进行电路

4、板连接及观察电路板的显示。课程设计成果1与设计内容对应的软件程序2课程设计报告书3成果使用说明书4设计工作量要求 设计目的及该设计硬件要求1, 设计目的(1),掌握多位计数器相连的方法;(2),掌握十进制,六进制,二十四进制计数器的设计方法;(3),巩固多位共阴极扫描显示数码管的驱动及编码;(4 ),掌握扬声器的驱动;(5 ),掌握LED灯的花样显示;(6),掌握CPLD技术的层次化结构化设计。2, 设计硬件要求主芯片EPF10K10LC84-3;8个LED显示灯;蜂蜜器;8位8段扫描共阴极数码显示管;3个按键开关(清零,调小时,调分钟)。 根据设计要求决定电路原理 在单一CPLD芯片EPF1

5、0K10上集成如下电路模块。1) 时钟计数:秒六十进制码计数;分六十进制码计数;时二十四进制码计数;同时整个计数器有清零,调分,调时功能。在接近整数时间能提供报时信号。2) 具有驱动位段共阴极扫描数码管的片选驱动信号输出和段字型译码输出。3) 蜂鸣器在整点时有报时驱动信号产生。4) 灯在整点时有花样显示信号产生。数字钟各模块设计(1)顶层文本设计程序library ieee;use ieee.std_logic_1164.all;entity chock_top isport(clk,reset,setmin,sethour,clkdsp:in std_logic; speaker :out

6、std_logic; lamp :out std_logic_vector(2 downto 0); sel :out std_logic_vector(2 downto 0); a,b,c,d,e,f,g,dpout :out std_logic);end chock_top;architecture a of chock_top isCOMPONENT second port(clk,reset,setmin:IN STD_LOGIC; daout :out std_logic_vector(6 downto 0); enmin :OUT STD_LOGIC);END COMPONENT;

7、COMPONENT minute port(clk,clk1,reset,sethour:IN STD_LOGIC; enhour :OUT STD_LOGIC; daout :out std_logic_vector(6 downto 0);END COMPONENT;COMPONENT hour port(clk,reset :IN STD_LOGIC; daout :out std_logic_vector(5 downto 0);END COMPONENT;COMPONENT alert port(clk :IN STD_LOGIC; dain :in std_logic_vector

8、(6 downto 0); lamp :out std_logic_vector(2 downto 0); speak:OUT STD_LOGIC);END COMPONENT;COMPONENT seltime port(clk1,reset:IN STD_LOGIC; sec,min :in std_logic_vector(6 downto 0); hour :in std_logic_vector(5 downto 0); dp :out std_logic; daout :out std_logic_vector(3 downto 0); sel :OUT STD_LOGIC_vec

9、tor(2 downto 0);END COMPONENT;COMPONENT deled port(num :IN STD_LOGIC_vector(3 downto 0); led :out std_logic_vector(6 downto 0);END COMPONENT;signal enmin_re,enhour_re:std_logic;signal second_daout,minute_daout:std_logic_vector(6 downto 0);signal hour_daout:std_logic_vector(5 downto 0);signal seltime

10、_daout:std_logic_vector(3 downto 0);signal ledout:std_logic_vector(6 downto 0);begina=ledout(6);b=ledout(5);c=ledout(4);d=ledout(3);e=ledout(2);f=ledout(1);greset, clk=clk, setmin=setmin, enmin=enmin_re, daout=second_daout);u2:minute port map(clk=enmin_re, clk1=clk, reset=reset, sethour=sethour, enhour=enhour_re, daout=minute_daout);u3:hour port map(clk=enhour_re, reset=reset, daout=hour_daout);u4:alert port map(clk=clk, dain=minute_daout,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号