欢迎来到天天文库
浏览记录
ID:3143046
大小:487.00 KB
页数:17页
时间:2017-11-19
《基于cpld的vhdl时钟设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、摘要:数字钟学习的目的是掌握各类计数器及它们相连的设计方法;掌握多个数码管显示的原理与方法;掌握模块化设计方式;掌握用VHDL语言的设计思想以及整个数字系统的设计。此数字钟具有时,分,秒计数显示功能,以24小时为计数循环;能实现清零,调时,调分以及整点报时等功能。本设计是一个显示时(2位)分(2位)秒(2位)共六个数字的多功能电子钟。信号发生器输出的40Mhz作为系统频率(时钟),因此将其分频得1Hz的秒钟信号,秒计满60即得1分钟,分满60即得1小时信号,小时满24即得一天。关键词:数字钟,计数器,数码管,模块化设计,VHDL。一、设计分析1.1设计要求1)
2、具有时、分、秒计数显示功能,以24小时循环计时。2)时钟计数显示时有LED灯的花样显示。3)具有调节小时、分钟及清零的功能。4)具有整点报时功能。1.2性能指标及功能设计1)时钟计数:完成时、分、秒的正确计时并且显示所计的数字;对秒、分60进制计数,即从0到59循环计数,时钟——24进制计数,即从0到23循环计数,并且在数码管上显示数值。2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间,这样使数字钟真正具有使用功能。我们可以通过实验板上的键7和键4进行任意的调整,因为我们用的时钟信号均是1HZ的,所以每LED灯变化一次就来一个脉冲,即计数一次。3
3、)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。可以根据我们自己任意时间的复位。4)蜂鸣器在整点时有报时信号产生,蜂鸣器报警。产生“滴答.滴答”的报警声音。5)LED灯在时钟显示时有花样显示信号产生。即根据进位情况,LED不停的闪烁,从而产生“花样”信号。1.3系统方框图数字时钟控制单元时调整分调整使能端信号CLK信号时显示分显示秒显示24进制60进制60进制LED显示整点报时花样显示二、设计方案本设计采用自顶向下的设计方法和模块化设计方式,它由秒计数模块,分计数模块,小时计数模块,报警模块,秒分时设置模块和译码模块,程序包,entit
4、y模块(顶层模块)八部分组成。优点:设计简单方便,层次清晰,工程的建立方便,无需单独设计各个组件模块产生原理图文件后再进行电路连接设计。三、设计原理和过程3.1硬件设计本设计使用VHDL硬件开发板,可编程逻辑器件EMP1270T144C5系列。设计过程中用到的外围电路的设计如下:3.1.1电源部分3.1.2可编程器件EMP1270T144C53.1.3 CPLD–JTAG接口3.1.4晶振和蜂鸣器3.1.4LED数码管显示3.1.5DIP开关与按键输入(具体电路见附录)3.2软件设计3.2..1程序包my_pkg的设计说明为了简化程序设计增加可读性,系统采用模
5、块化的设计方法,重复使用的组件以元件(component)的形式存在,以便相关块的调用。主程序内用不同的功能模块构成一完整的结构。下面列出my_pkg组件包的代码。------------------------------自定义的包集合(用到的几个模块元件声明)------------------------------libraryieee;useieee.std_logic_1164.all;packagemy_pkgiscomponentdiv40M----------------------------------------------------
6、-----------------元器件1Port(clk:instd_logic;f1hz:outstd_logic);endcomponent;componentcount60---------------------------------------------------------------------元器件2Port(clr,clk:instd_logic;one:bufferstd_logic_vector(3downto0);ten:bufferstd_logic_vector(3downto0);full:outstd_logic;dou
7、t:bufferstd_logic_vector(7downto0));endcomponent;componentcount24--------------------------------------------------------------------元器件3Port(clr,clk:instd_logic;one:bufferstd_logic_vector(3downto0);ten:bufferstd_logic_vector(3downto0);full:outstd_logic);endcomponent;componentscan6-
8、-------------------
此文档下载收益归作者所有