数电课程设计 数字钟

发布 2022-10-04 04:51:28 阅读 8062

数字电子技术课程设计。

数字钟的设计。

数字电路课程设计。

设计简述 电子技术是一门实践性很强的课程。在学完基本单元的内容和实验后,进行综合设计实验,是对所学知识综合全面的运用,其目的是锻炼运用知识的能力,增强实践技能。 电子电路部分设计实验,要求利用所掌握的知识和实验技能,在实验室环境下,创造性的解决问题,它不要求解决方案的统一,而着重问题的解决。

本部分设计实验是根据预先设计的内容,到实验室进行设计方案的验证,然后修改并完善设计,并写出最终的设计报告。

数字电子钟的设计。

一. 设计题目:数字电子钟。

二. 设计要求:

任务:用文本法或图形法设计一个能显示时、分、秒的数字电子钟。

要求:1 设计由晶振电路产生1hz标准秒信号的单元电路。

2时为00~23六十进制计数器,分、秒为00~59六十进制计数器;

3 能够显示出时、分、秒;

4 具有清零,调节分钟的功能;

5 具有整点报时功能,整点报时的同时led灯花样显示、声响电路发出叫声。

6 对时、分、秒单元电路进行**并纪录;

7 选作部分:具有定时闹钟功能,可在任意设定一时间,到时自动提醒,通过声响电路发出叫声。

三、设计思路:

根据以上要求做出如下框图:

四、数字钟的实现:

数字钟是通过用vhdl语言编程来实现的。

程序共分为分频、秒计数器、分计数器、小时计数器、声响和定时六个小部分。分频是用来将输入频率为20mhz的信号转变为1hz的可用信号,并将转换后的信号传输给秒计数器使秒计数器能够正常计数。同时,秒计数器将产生分的进位信号并传到分计数器,分计数器在得到秒的进位信号后开始计数,同时产生时的进位信号。

小时计数器在得到分计数器传过来的信号后开始计数。

程序如下:1、 分频程序1(将20mhz分为1hz):

library ieee;

use use

entity fenpin1 is

port(clk:in std_logic;

cof1hz:out std_logic);

end entity fenpin1;

architecture one of fenpin1 is

signal counter:integer range 0 to 20000000;

beginprocess(clk)

beginif(clk'event and clk='1')then

if(counter=20000000)then

counter<=1;

cof1hz<='1';

elsecounter<=counter+1;

cof1hz<='0';

end if;

end if;

end process;

end architecture one;

分频程序2(将20mhz分为2khz):

library ieee;

use use

entity fenpin2 is

port(clk:in std_logic;

cof2khz:out std_logic);

end entity fenpin2;

architecture one of fenpin2 is

signal counter:integer range 0 to 10000;

beginprocess(clk)

beginif(clk'event and clk='1')then

if(counter=10000)then

counter<=1;

cof2khz<='1';

elsecounter<=counter+1;

cof2khz<='0';

end if;

end if;

end process;

end architecture one;

2、 秒计数器:

library ieee;

use use

entity second is

port( clk:in std_logic输入脉冲信号;

reset:in std_logic; -清零键;

setmin:in std_logic; -分设定键;

enmin:out std_logic; -分进位信号;

daoutsg:out std_logic_vector(3 downto 0);-秒的十位输出(8421bcd码);

daoutss:out std_logic_vector(3 downto 0));秒的个位输出(8421bcd码);

end entity second;

architecture one of second is

signal countg:std_logic_vector(3 downto 0);

signal counts:std_logic_vector(3 downto 0);

signal enmin_1,enmin_2:std_logic;

begindaoutsg<=countg;

daoutss<=counts;

enmin_2<=(setmin and clk);

enmin<=(enmin_1 or enmin_2);

process(clk,reset,setmin)

beginif(reset='0')then countg<="0000";counts<="0000";-当reset为0是清零;

elsif (clk'event and clk='1')then

if(countg="1001")then

if(counts<0101)then

counts<=counts + 1;

countg<="0000";

elsif(counts="0101")then

enmin_1<='1';counts<="0000";countg<="0000";

end if;

elsif(countg<"1001")then

countg<=countg + 1';

enmin_1<='0' ;

end if;

end if;

end process;

end one;

波形**:3、 分计数器:

library ieee;

use use

entity minute is

port(clk:in std_logic输入信号与秒计数器的enmin连接;

reset:in std_logic清零键;

sethour:in std_logic时设定键;

enhour:out std_logic时进位信号;

daoutmg:out std_logic_vector(3 downto 0); 分的个位输出(8421bcd码)

daoutms:out std_logic_vector(3 downto 0));分的十位输出(8421bcd码);

end entity minute;

architecture one of minute is

signal countg:std_logic_vector(3 downto 0);

signal counts:std_logic_vector(3 downto 0);

signal enhour_1,enhour_2:std_logic;

begindaoutmg<=countg;

daoutms<=counts;

enhour_2<=(sethour and clk);

enhour<=(enhour_1 or enhour_2);

process(clk,reset,sethour)

beginif(reset='0')then countg<="0000";counts<="0000";-当reset为0是清零;

elsif (clk'event and clk='1')then

if(countg="1001")then

if(counts<0101)then

counts<=counts + 1;

countg<="0000";

elsif(counts="0101")then

enhour_1<='1';counts<="0000";countg<="0000";

end if;

elsif(countg<"1001")then

countg<=countg + 1';

enhour_1<='0';

end if;

end if;

end process;

end one;

波形**:4、 小时计数器:

library ieee;

use use

entity hour is

port(clk:in std_logic;

reset:in std_logic;

daouthg:out std_logic_vector(3 downto 0); 小时的个位输出(8421bcd码)

daouths:out std_logic_vector(3 downto 0));小时的十位输出(8421bcd码);

end entity hour;

数电课程设计数字钟

p4 数字钟电路的制作与调试。数字钟以其显示的直观性 走时准确稳定而受到人们的欢迎,广泛应用于家庭 车站 码头 剧场等场合,给人们的生活 学习 工作 娱乐带来了极大的方便。该电路基本组成包含了数字电路的主要组成部分,能帮助同学们将以前所做项目有机的 系统地联系起来,培养综合分析 设计 制作和调试数字...

数电课程设计数字钟设计

目录。设计目的 3 设计任务 4 设计指标 4 多功能数字钟设计原理 5 时钟信号振荡电路 6 秒脉冲产生信号 7 计数电路 8 小时计数电路 8 分钟计时电路 9 秒钟计数电路 10 校时信号 11 整点报时电路 13 译码驱动及显示电路 14 数字钟整体电路的实现 15 多功能数字钟设计方案二 ...

数字钟数电课程设计

数字电子技术课程设计。题目名称。班级。姓名。学号。指导老师。引言。数字钟实际上是一个对标准频率 1hz 进行计数的计数电路。振荡器产生的时钟信号经过分频器形成秒脉冲信号,秒脉冲信号输入计数器进行计数,并把累计结果以 时 分 秒 的数字显示出来。秒计数器电路计满60后触发分计数器电路,分计数器电路计满...