基于VHDL的电子闹钟设计

基于VHDL的电子闹钟设计

ID:39474388

大小:158.00 KB

页数:11页

时间:2019-07-04

基于VHDL的电子闹钟设计_第1页
基于VHDL的电子闹钟设计_第2页
基于VHDL的电子闹钟设计_第3页
基于VHDL的电子闹钟设计_第4页
基于VHDL的电子闹钟设计_第5页
资源描述:

《基于VHDL的电子闹钟设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于VHDL的数字闹钟设计基于VHDL设计的数字闹钟设计报告院系:电子信息与电气工程学部专业:电子信息工程姓名:陈康睿班级:电子0801学号:200881063-11-基于VHDL的数字闹钟设计一、电子钟相关功能描述如下:(1)计时功能:这是本计时器设计的基本功能,可进行时、分、秒计时,并显示。(2)闹钟功能:如果当前时间与设置的闹钟时间相同,则扬声器发出一段提示声音。(3)调时调分调闹钟功能:当需要校时或者要重新设置闹钟的时间时,可通过实验箱上的按键控制。二、设计原理:数字闹钟电路的基本结构由两个60进制计数器和一个24进制计数器组成,分别对秒、

2、分、小时进行计时,当计时到23时59分59秒时,再来一个计数脉冲,则计数器清零,重新开始计时。秒计数器的计数时钟CLK为1Hz的标准信号。当数字闹钟处于计时状态时,秒计数器的进位输出信号作为分钟计数器的计数信号,分钟计数器的进位输出信号又作为小时计数器的计数信号时、分、秒的计时结果通过6个数码管来动态显示。数字闹钟除了能够正常计时外,还应能够对时间进行调整。因此,通过模式选择信号md1、md2控制数字钟的工作状态,即控制数字钟,使其分别工作于正常计时,调整分、时和设定闹钟分、时5个状态。当数字闹钟处于计时状态时,3个计数器允许计数,且秒、分、时计数

3、器的计数时钟信号分别为CLK,秒的进位,分的进位;当数字闹钟处于调整时间状态时,被调的分或时会一秒一秒地增加;当数字钟处于闹钟定时状态时,可以设定小时和分;当计时到所设定的时刻时,speak将会被赋予时钟信号,持续1分钟。-11-基于VHDL的数字闹钟设计三、实验代码:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityshizhongisport(clk:instd_logic;md1:instd_logic;md2:instd_logic_vec

4、tor(1downto0);clken:outstd_logic;h1,h2,m1,m2,s1,s2:outstd_logic_vector(3downto0));endshizhong;architectureregofshizhongissignalhou1:std_logic_vector(3downto0);signalhou2:std_logic_vector(3downto0);signalmin1:std_logic_vector(3downto0);signalmin2:std_logic_vector(3downto0);sign

5、alsec1:std_logic_vector(3downto0);signalsec2:std_logic_vector(3downto0);signalseth1:std_logic_vector(3downto0);signalseth2:std_logic_vector(3downto0);signalsetm1:std_logic_vector(3downto0);signalsetm2:std_logic_vector(3downto0);begin--小时-11-基于VHDL的数字闹钟设计h110:process(clk,hou2,m

6、in1,min2,sec1,sec2,md1,md2)beginifclk'eventandclk='1'thenif(hou1="0010"andhou2="0011")and(min1="0101"andmin2="1001")and(sec1="0101"andsec2="1001")thenhou1<="0000";------------当时间为23点59分59秒时清0elsifhou1="0010"andhou2="0011"andmd1='0'andmd2="10"then--当时间为23点且处于校时状态时hou1<="0000";e

7、lsif(hou2="1001"and(min1="0101"andmin2="1001")and(sec1="0101"andsec2="1001"))or(hou2="1001"andmd1='0'andmd2="10")then--当时间为X9:59:59时小时十位加一hou1<=hou1+1;endif;endif;endprocessh110;h220:process(clk,min1,min2,sec1,sec2,md1,md2,hou1)beginifclk'eventandclk='1'thenif(hou1="0010"andho

8、u2="0011")and(min1="0101"andmin2="1001")and(sec1="0101"andsec

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。