从59分50秒开始,数字钟进入整点报时功能。每隔两秒提示一次。(本设计中以两个led灯代替蜂鸣器,进行报时)
2. 多功能数字钟的闹钟功能部分,通过按键(key1,key2,key3)设定闹钟时间,当时钟进入闹钟设定的时间(判断时钟的时信号,与分信号,分别与闹钟设定的时信号r6,r5与分信号r4,43是否相等),则以led灯连续提示一分钟。
本设计通过数据选择器控制译码器,使数码管独立显示,各功能之间互不影响。当load4为低电平,load5为高电平,则对闹钟信号进行译码,数码管显示闹钟数据;当load4,load5,为低电平,则对正常时钟信号进行译码,数码管显示时钟信号数据。
附图1:系统总体结构框图。
3.系统以及模块硬件电路设计。
硬件模块包含与,或,非多个基本逻辑单元,由硬件芯片内部提供,软件编程是为了目的性的操作硬件。
50mhz的晶振进行分频操作:
根据上式得到周期分别为1s,0.5s的时钟。
**时选择的开发系统模式以及管脚定义。
表1 gw48-ck开发系统工作模式:
四系统的vhdl设计。
1hz分频模块。
libraryieee;
entityfenpin1hzis
port(clk:instd_logic;
clk1hz:outstd_logic
end;architectureprtoffenpin1hzis
signaltem_clk1:std_logic_vector(24downto0);
signaldiv1:std_logic;
beginprocess(clk)
constantbb:std_logic_vector(24downto0):=1011111010111100000111111";
beginifclk'eventandclk='1'then
iftem_clk1=bbthen
tem_clk1<=(others=>'0'))
div1<=notdiv1;
elsetem_clk1<=tem_clk1+1;
endif;
endif;
endprocess;
clk1hz<=div1;
endprt;
4hz分频模块。
libraryieee;
entityfenpin4hzis
port(clk:instd_logic;
clk4hz:outstd_logic
end;architectureprtoffenpin4hzis
signaltem_clk2:std_logic_vector(22downto0);
signaldiv2:std_logic;
begin
process(clk)
constantbb:std_logic_vector(22downto0):=10111110101111000001111";
beginifclk'eventandclk='1'then
iftem_clk2=bbthen
tem_clk2<=(others=>'0'))
div2<=notdiv2;
elsetem_clk2<=tem_clk2+1;
endif;
endif;
endprocess;
clk4hz<=div2;
endprt;
秒计时模块。
libraryieee;
entitysecondis
port(clk:instd_logic;
setmin:instd_logic;
reset:instd_logic;
enmin:outstd_logic;
sh:bufferstd_logic_vector(3downto0);
sl:bufferstd_logic_vector(3downto0)
endsecond;
architectureprtofsecondis
beginprocess(clk,reset,setmin)
beginif(setmin='1')then
enmin<=clk;
elsif(reset='1') then
sh<="0000";
sl<="0000";
elseif(clk'eventandclk='1') then
ifsh="0101"andsl="1001"then
enmin<='1';
sh<="0000";
sl<="0000";
elseenmin<='0';
endif;
ifsl=9then
sl<="0000";
sh<=sh+1;
elsesl<=sl+1;
endif;
endif;
endif;
endprocess;
end;分计时模块。
libraryieee;
entityminuteis
port(clk:instd_logic;
seth:instd_logic;
reset:instd_logic;
enh:outstd_logic;
mh:bufferstd_logic_vector(3downto0);
ml:bufferstd_logic_vector(3downto0)
endminute;
architectureprtofminuteis
beginprocess(clk,reset,seth)
beginif(seth='1')then
enh<=clk;
elsif(reset='1')then
mh<="0000";
ml<="0000";
elseif(clk'eventandclk='1')then
ifmh="0101"andml="1001"then
enh<='1';
mh<="0000";
ml<="0000";
elseenh<='0';
endif;
ifml=9then
ml<="0000";
mh<=mh+1;
elseml<=ml+1;
endif;
endif;
endif;
endprocess;
end;时计时模块。
libraryieee;
entityhouris
port(clk:instd_logic;
reset:instd_logic;
hh:bufferstd_logic_vector(3downto0);
hl:bufferstd_logic_vector(3downto0)
endhour;
architectureprtofhouris
beginprocess(clk,reset)
beginif(reset='1')then
hh<="0000";
hl<="0000";
elseif(clk'eventandclk='1')then
ifhh="0010"andhl="0011"then
hh<="0000";
hl<="0000";
elsifhl=9then
hl<="0000";
hh<=hh+1;
elsehl<=hl+1;
endif;
endif;
endif;
endprocess;
end;闹钟模块。
libraryieee;
entitynaozhongis
数电课程设计
两位十进制计数显示器。一 设计内容。本设计主要采用芯片有555定时器 74162计数器 7448七段字形译码器,以及七段led数码管。能过以上元器件的组合,构成一个两位十进制计数显示器,实现循环依序显示0 99的数字。要求每位同学独立设计电路原理图,制作pcb电路板并印制上自己的学号。二 电路原理。...
数电课程设计
数字电子技术基础 课程设计报告。数字万年历。班级 姓名 签字。学号 日期 目录。1.设计任务及要求3 2 设计思路与说明3 2.1电路图及原理说明3 2.1.1年部分计数器3 2.1.2月部分计数器5 2.1.3日期部分计数器6 2.1.4 星期部分计数器7 3 电路调试基本过程遇到的问题及调试结果...
数电课程设计
数字电子课程设计报告。题目 电子生日蜡烛。系班 电气0805 组员 焦雪菲08291140齐龙。杨超08291158 指导老师 王强。电路原理图。一 系统功能概述。如图1所示,这个电路产生了一套基于led的电子生日蜡烛。这种蜡烛与吹灭蜡制蜡烛一样具有相同的乐趣,并且它是可重复利用的,可改进的以及低碳...