当前位置:文档之家› 多功能数字钟-实验报告

多功能数字钟-实验报告

多功能数字钟-实验报告
多功能数字钟-实验报告

数字电子技术实验课程FPGA创新实验设计报告

设计名称多功能数字钟

姓名杜往泽李可

学号 3090102676 3090101340

专业班级控制系0903班

光电系0904班

指导教师樊伟敏

日期 2010年12月28日

浙江大学电工电子基础实验中心

多功能数字钟设计实验报告

设计背景:数字钟是一种应用很广泛的电子产品。相比于机械表,它无需机械传动,计时更精确,显示更便捷,而且无需经常调整,所以在很多公共场合都可以看到它的身影,同时,数字钟可以实现的功能很多,有利于今后扩展这款产品的功能,使其更具有市场竞争力,故决定设计一个多功能数字钟作为创新实验的内容。

摘要:设计这款多功能数字钟是为了在掌握各类计数器以及它们的连接方法,深入理解FPGA技术的层次化设计方法和VHDL语言的设计思想的同时,能开发出一款有实际应用价值的产品。这款数字钟是使用VHDL语言,在Quartus2平台下开发的。具有显示时分秒,整点报时和手动拨时的功能,并且具有彩灯效果,美观大方,很好的方便和改善人们的生活,适合在生活中使用。

关键字:数字钟,VHDL,Quartus2

目录

一、方案征讨 (5)

1.数字钟功能 (6)

2.可行性分析 (7)

3.关键模块方案比较 (8)

4.工作过程 (9)

a)正常计数 (9)

b)手动拨时 (9)

c)整点报时及彩灯效果 (10)

d)显示模块 (10)

二、单元电路设计 (11)

1.软件设计平台 (11)

2.软件设计语言 (11)

3.单元电路工作原理介绍及分析 (12)

a)消抖电路 (12)

b)四秒低电平电路 (12)

c)综合延时 (14)

d)整点报时和彩灯效果 (15)

e)手动拨时 (17)

f)二十四进制电路 (19)

g)六十进制电路 (21)

h)移位单元 (23)

i)闪烁电路 (24)

j)显示电路 (26)

k)分频器 (30)

l)综合 (31)

三、系统测试 (32)

四、总结 (33)

1.作品优点 (33)

2.设计收获体会 (33)

3.有待改进之处 (33)

4.QuartusⅡ软件学习的收获 (34)

五、参考文献 (35)

六、附录 (36)

(一)方案论证:程序总体图:

(1)数字钟功能:

a)正确显示时、分、秒。因为实验仪器限制,只有4个数码管,因此,本实验采用后

两个数码管共同承担显示分和显示秒的任务,通过一个单独的状态开关控制;

b)设定时间。在具体的实现时,仅仅采用两个逻辑开关,以下记为A,B。

i.A键有两个功能:

1.负责控制是否需要改变时间,若按下,则某一位闪烁4秒。

2.控制具体哪一位进行调整时间,在1的基础上,再次按下A键,则闪烁

的位自动向左移动一位,表示对左边一位进行数值调整。

ii.B键实现加1调整时间。在有数码管闪烁的前提下(即要调整时间),每次按下B键,闪烁的数码管的数值加1,并且可以重新再闪烁4秒。

iii.另外,为了增强人机关系,采用了当按下A时,某一位闪烁,然后进行对该位的数值调整,若在4秒内没有对A和B进行操作,则数字钟自动回到正常

计时状态,若在4秒内按键按下A或B,则可以再闪烁4秒。

c)整点报时,当到达整点的时候,LED灯会同时亮灭表示到达整点,并且可以取消

整点报时功能。另外,通过亮灭的次数表示当前的时间,如上午9点,则LED灯

将同时亮灭9次。

d)彩灯效果,在1秒内,LED灯交替间隔亮灭,增强数字钟的美观,并且可以取消

该功能。

e)暂停功能,可以暂停计时功能。

(2)可行性分析:

a)本设计的最大亮点和难点在于4秒的时间长度的获得,经小组讨论、分析,想到以

下解决方案:当输入状态量发生改变时,改变输出量,使符合预期要求,同时在程

序内部进行计数,当计数达到4秒时,再次改变输出量,最终可以获得,每改变一

次,输出4秒的低电平;

b)LED灯闪烁的实现:通过输入CP脉冲控制,在CLK的前半段时间,即CLK='1'

的时候,令LED灯亮,而当CLK=’0’的时候,令LEN灯暗,从而达到在1秒内让

LED亮灭的效果;

c)LED灯亮灭的次数通过将输入信号的小时数存储到一个tmp中,递减tmp,直至

为0,则可以实现到点报时当前时间次数

d)暂停功能:在设计正常计数功能的时候,将时分秒分别设计为60进制和24进制,

在具体的模块内部,通过增加一位控制位,如低电平有效的时候,实现加1计时

e)按一次调时按键,选择位左移一格:通过6进制加法器和3-8译码器实现该功能

(3)关键模块的方案比较与选择:

a)基本计数功能的实现:

i.做成多个模块,即一个24进制,两个60进制,共同实现正常计数功能

优点:稳定性强,抗干扰能力好

缺点:导线连接比较混乱

ii.做出一个模块,直接输出时分秒

优点:做成一个模块后,使得在总体布线的时候,导线不会显得很凌乱

缺点:结合程序具体展开(详见附录)

经仿真,该程序确实可以实现预期的功能,但是完整运行后,程序报出大量的warning,而且是关于loop的错误,即循环的警告,但是我的程序并没

有使用循环。小组讨论后忽视了这个问题,觉得既然仿真结果是正确的,而且

将程序烧到实验电路板上的时候显示也是正确的,应该是没有问题的。但是当

加上了其他的模块后,片间关联出现明显的问题,调试了很久都没有发现具体

的问题出处,在询问了樊老师之后,采取了用一片24进制和和两片60进制共

同实现正常计数功能,并最终实验通过。

b)CP脉冲的选择:最初方案中,CP脉冲都是直接假定从秒脉冲的分频器中获取,但

是通过具体的实验后发现,采用秒脉冲难以在上升沿的时候捕获有效信息,即信息

容易作为毛刺而略去,之后就选择采用50M高频脉冲,再结合老师给的消抖程序

很好的实现了稳定输出一个周期有效信号的作用,但是在综合各个模块于一个总体

的时候,发现读入数据总是很不稳定,在小组讨论与不断的尝试后,采用了将50M

高频脉冲做多次分频,将分得的较低的频率的脉冲输出作为主要脉冲,最终解决了

这个问题

c)输入输出端口个数的选择,我们小组在这个问题上讨论了很多次,一方认为为了体

现程序的优良品质,应该减少输入输出,而增加程序的复杂性,而另一方认为,现

阶段这个程序的关键不在于减少输入输出端口的个数,而在于各个模块的衔接是否

自然。如整点报时功能的实现,从理论上讲,只要输入小时数就可以获得当前是否

恰好是整点的信息(当小时数发生变化,并且当前不是正在调整时间),但是这个

在具体的编程的时候,困难却比较大,而另一方面,可以简单的将时分秒的信息都

加载作为输入端,那么若当前的分秒都是59时,则下一个脉冲到来的时候就是到

达整点。

(4)工作过程

a)正常计数

一共三个模块,分别实现小时计数,分计数,秒计数功能,

b)手动拨时:

右上角为主要的程序(该模块进行了180°转体),右端为输入,左端为输出,右端输出为第一个模块的6个输入,左端的输出结果输入到第一个模块的置数端。

控制该模块的是两个按键,为button【1】和button【0】,其中button【1】控制是否打开手动拨时功能并且选择需要调整的数位,button【0】负责加一操作。上图左侧为一些辅助模块,有消抖程序,延时程序,增强延时效果的程序,移位程序,综合控制了手动拨时的打开或关闭以及第一个模块的是否置数功能。

c)整点报时和彩灯效果

经研讨,仅做成一个模块,因为当要关闭整点报时功能的时候,认为是为了一个比较安静的环境,则同时默认关闭彩灯效果。输入为第一个模块输出的时分秒,输出到LED灯象征性的表示整点。由KEY和EN共同控制是否开启该功能,即当EN=1,表示当前在调整时间,暂时关闭该功能,EN与第二个模块的控制位是同一个信号

d)显示模块:

共三个,第一个为判断是否闪烁的模块,第二个为六四转换模块,第三个为输出模块第一个模块由EN控制是否开启该功能,由A TO[2..0]控制需要闪烁的数据位置,SW[0]控制显示分还是显示秒。

(二)单元电路设计

1)软件设计平台:QuartusⅡ

2)设计语言:VHDL语言

3)开发工具具体信息如下图:

4)单元电路工作原理介绍及分析:

a)消抖电路

在借鉴了樊老师程序基础上进行了一定的改编而成

改编后的程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

--输入一个信号,输出这个一个脉冲宽度的信号;

--本程序由樊老师的程序改编而成,是捕获一个下降沿,输出一个脉冲宽度的低电平

ENTITY XD IS

PORT( CLK:IN STD_LOGIC; --高频脉冲信号

KEY_IN:IN STD_LOGIC;--输入的需要捕获下降沿的信号

KEY_OUT: OUT STD_LOGIC); --输出信号

END XD;

ARCHITECTURE FWM OF XD IS

SIGNAL TMPA,TMPB:STD_LOGIC; --用于纪录信号的变化

SIGNAL TMPO:STD_LOGIC;

BEGIN

XDQ:PROCESS(CLK,TMPA,TMPB)

BEGIN

IF (CLK'EVENT AND CLK='1') THEN

TMPA<=KEY_IN; TMPB<=TMPA;

END IF;

TMPO<= NOT(((NOT TMPA )AND TMPB));

END PROCESS XDQ;

KEY_OUT<=TMPO;

END FWM;

程序仿真运行结果如下:

如图可得,在CP脉冲的上升沿到来的时候,如果此时输入信号为低电平,则马上输出一个脉冲宽度的低电平,并且不论之后输入信号持续多久为零,输出经过一个脉冲宽度后都恢复高电平,这有效的使输出信号稳定,防止抖动。

b)四秒低电平电路

本程序需结合消抖单元共同使用,在经过消抖电路后,该程序的输入必然为一个脉冲宽度的低电平,在进行对该输入的判断,当输入信号变为

0,则标记量cout变为1,进行计数,每一个CO脉冲到来的时候加一,直

至预定值M,从而达到延时的效果。

程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY XD4S IS

PORT (CLK : IN STD_LOGIC ;

KEY : IN STD_LOGIC;

KEY_OUT : OUT STD_LOGIC);

END XD4S;

ARCHITECTURE DWZ OF XD4S IS

SIGNAL TMP:STD_LOGIC;

CONSTANT M: INTEGER:=20;

BEGIN

SEC : PROCESS (CLK,KEY)

V ARIABLE cout : INTEGER:=0;

BEGIN

IF clk'EVENT AND clk='1' THEN

IF(COUT/=0) THEN

cout:=cout+1;

IF cout<=M THEN tmp<='0';

ELSIF COUT>M THEN cout:=0;TMP<='1';

END IF;

IF(KEY='0') THEN

TMP<='0';COUT:=1;

END IF;

ELSIF(KEY='0') THEN

TMP<='0';COUT:=1;

ELSE TMP<='1';COUT:=0;

END IF;

END IF;

END PROCESS SEC;

KEY_OUT<=TMP;

END DWZ;

经仿真后的波形如图:

这个程序仍然有美中不足的地方,即4秒低电平的输出有一个脉

冲的滞后性,人为产生了延时效应,但是因为我们采用的是高频输入

信号作为脉冲,时间的差距微乎其微,近似忽略不计,另外,设计这

个四秒低电平的输出电路仅仅是为了给调整时间一个大概的时间范围,

并不是用来作为精确定量的时间长度,所以这么做是可行的。

如上,在低电平的时候,如果再次有脉冲加入,可以重新计时,形成了可重触发的单稳电路。设计理念的关键在于纪录变化,以此作为状态改变的前提。

c)综合延时

实现的效果为:在调整时间的状态下,若不进行任何操作,则在4秒的时间过去后自动回到正常计数的状态,倘若4秒中有对时间进行调整,

如加1操作或者选择另一位数据进行操作,则重新再次闪烁4秒,等待调

整。但是,若当前不处于调整时间状态,则加1操作位不论是否变化,输

出都不变。

程序为:

ENTITY DELAYAGAIN IS

PORT(CLK : IN STD_LOGIC;

EN : IN STD_LOGIC;

UP : IN STD_LOGIC;

KEY_OUT : OUT STD_LOGIC);

END ENTITY DELAY AGAIN;

ARCHITECTURE DWZ OF DELAY AGAIN IS

SIGNAL TMP: STD_LOGIC;

begin

PROCESS (CLK,EN,UP)

BEGIN

IF (CLK'EVENT AND CLK='1') THEN

TMP<=EN;

IF UP='0'THEN

IF (EN='0' OR TMP=UP) THEN

TMP<=UP;

ELSE TMP<=EN;

END IF;

ELSE TMP<=EN;

END IF;

END IF;

END PROCESS;

设计理念是通过一个中间信号tmp纪录当前的状态,若当前的状态是处于调整时间,则触发该程序,使时间再次重新装配。

仿真结果如下:

符合实验要求。

d)整点报时和彩灯效果:

共两个控制位,共同控制是否打开整点报时程序和彩灯效果,这两个控制,分别是手动开关SW[8]和调整时间的控制信号,即,若当前正在调整时间,则

不进行整点报时功能和彩灯效果。输入程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

--输出到LED灯,以当前整点示数为基准tmp,亮灭tmp次

--在正常状态,LED灯交替亮灭,显示彩灯效果

ENTITY MYRING IS

PORT( CLK:IN STD_LOGIC; --秒脉冲

key : IN STD_LOGIC; --手动控制位,0则继续报时

en: in std_logic; --外加判断是否是在调整时间,1表示可以报时和彩灯效果,0表示在进行其他操作,停止当前

S_LO,S_HI,M_LO,M_HI,h_LO,H_HI: IN STD_LOGIC_VECTOR (3 DOWNTO 0);

--输入当前时间

LED: OUT STD_LOGIC_VECTOR(9 DOWNTO 0)); --输出LED灯的亮灭状态END ENTITY MYRING;

ARCHITECTURE DWZ OF MYRING IS

SIGNAL M: STD_LOGIC_VECTOR (5 DOWNTO 0); --闹钟时间SIGNAL LED_TMP:STD_LOGIC_VECTOR(9 DOWNTO 0);

SIGNAL TMP :STD_LOGIC;

CONSTANT CO_0 : STD_LOGIC_VECTOR(9 DOWNTO 0):="0000000000";

CONSTANT CO_1 : STD_LOGIC_VECTOR(9 DOWNTO 0):="1111111111";

CONSTANT CO_2 : STD_LOGIC_VECTOR(9 DOWNTO 0):="1010101010";

CONSTANT CO_3 : STD_LOGIC_VECTOR(9 DOWNTO 0):="010*******";

BEGIN

TIM : PROCESS(CLK,H_HI,H_LO)

BEGIN

IF H_HI="0000" THEN M<="00" & H_LO;

elsif h_hi="0001" THEN M<=("00" & H_LO) +10;

ELSIF H_HI="0010" THEN M<=("00" & H_LO) +20;

ELSE M<="000000";

end if;

end process tim;

SEC : PROCESS (clk,key, EN,S_LO,S_HI,M_LO,M_HI,H_LO,H_HI)

V ARIABLE cout : INTEGER:=0;

BEGIN

IF clk'EVENT AND clk='1' THEN

IF(COUT/=0) THEN

cout:=cout+1;

IF cout<=M THEN tmp<='0';

ELSIF COUT>M THEN cout:=0;TMP<='1';

END IF;

IF(S_LO="1001" AND S_HI="0101" AND M_LO="1001" AND M_HI="0101") THEN TMP<='0';COUT:=1;

END IF;

ELSIF(S_LO="1001" AND S_HI="0101" AND M_LO="1001" AND M_HI="0101") THEN

TMP<='0';COUT:=1;

ELSE TMP<='1';COUT:=0;

END IF;

END IF;

END PROCESS SEC;

RIN: PROCESS (TMP,EN,CLK,KEY)

BEGIN

IF( EN='1' AND KEY='0') THEN

IF TMP='0' THEN

IF CLK='1' THEN LED_TMP<=CO_0;

ELSE LED_TMP<=CO_1;

END IF;

ELSE

IF CLK='1' THEN LED_TMP<=CO_2;

ELSE LED_TMP<=CO_3;

END IF;

END IF;

ELSE LED_TMP<=CO_0;

END IF;

END PROCESS RIN;

LED<=LED_TMP;

END DWZ;

经过仿真后,显示图形如下:

在第一条时间刻度线时,为上升沿脉冲,分秒显示恰为59,则根据程序,此时开始整点报时,效果为LED灯同时亮灭,若当前时间为12点,则同时亮灭12次后恢复为彩灯效果,而彩灯效果为LED灯交替间隔亮灭,也可从程序的仿真波形中看出。

e)手动拨时

通过两个控制开关,实现调整时间的功能

程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

--当EN=0时,开始设置时间

--UP=0时候所选位加1

ENTITY SETTIME IS

PORT(CLK :IN STD_LOGIC;

--采用高频脉冲

H_HI_IN , H_LO_IN , M_HI_IN , M_LO_IN, S_HI_IN,S_LO_IN: IN STD_LOGIC_VECTOR(3 DOWNTO 0);--输入当前时间

EN : IN STD_LOGIC;

--当EN=0时,开始设置时间

UP :IN STD_LOGIC;

--UP=0时候所选位加1

ATO : in STD_LOGIC_VECTOR (2 DOWNTO 0);

--数据选择位,控制对哪一位进行加1操作

H_HI , H_LO , M_HI , M_LO,S_HI,S_LO: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); --输出改变后的时间

END ENTITY SETTIME;

ARCHITECTURE DWZ OF SETTIME IS

SIGNAL

H_HI_TMP,H_LO_TMP,M_HI_TMP,M_LO_TMP,S_LO_TMP,S_HI_TMP: STD_LOGIC_VECTOR(3 DOWNTO 0):="0000";

BEGIN

T_TIME : PROCESS(EN,H_HI_IN,H_LO_IN,M_HI_IN,M_LO_IN,ATO ,CLK,S_HI_IN, S_LO_IN)

BEGIN

IF (CLK'EVENT AND CLK='1') THEN

IF UP='0' AND EN='0' THEN

CASE ATO IS

WHEN "000" =>S_LO_TMP<=S_LO_IN+1;

M_LO_TMP<=M_LO_IN;H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN ;M_HI_TMP<=M_HI_IN;S_HI_TMP<=S_HI_IN;

WHEN "001" =>S_HI_TMP<=S_HI_IN+1;

M_LO_TMP<=M_LO_IN;H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN ;M_HI_TMP<=M_HI_IN;S_LO_TMP<=S_LO_IN;

WHEN "010" =>M_LO_TMP<=M_LO_IN+1;

H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN;M_HI_TMP<=M_HI_IN; S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

WHEN "011" =>M_HI_TMP<=M_HI_IN+1;

M_LO_TMP<=M_LO_IN;H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN ;S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

WHEN "100" =>H_LO_TMP<=H_LO_IN+1;

M_LO_TMP<=M_LO_IN;H_HI_TMP<=H_HI_IN;M_HI_TMP<=M_HI_IN; S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

WHEN "101" =>H_HI_TMP<=H_HI_IN+1;

M_LO_TMP<=M_LO_IN;H_LO_TMP<=H_LO_IN;M_HI_TMP<=M_HI_I N;S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

WHEN "110" =>M_LO_TMP<=M_LO_IN;

H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN;M_HI_TMP<=M_HI_IN; S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

WHEN "111" =>M_LO_TMP<=M_LO_IN;

H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN;M_HI_TMP<=M_HI_IN;

S_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

END CASE;

else M_LO_TMP<=M_LO_IN;

H_HI_TMP<=H_HI_IN;H_LO_TMP<=H_LO_IN;M_HI_TMP<=M_HI_IN;S

_LO_TMP<=S_LO_IN;S_HI_TMP<=S_HI_IN;

END IF;

END IF;

END PROCESS T_TIME;

H_HI<=H_HI_TMP ;

H_LO<=H_LO_TMP ;

M_HI<=M_HI_TMP ;

M_LO<=M_LO_TMP ;

S_HI<=S_HI_TMP ;

S_LO<=S_LO_TMP ;

END DWZ;

该程序设置了较多的中间信号,在读程序上增加了难度,为此,我们在设计信号的代号的时候,为了便于理解和记忆,采用了诸如

H_HI.H+LO_IN等方式帮助记忆和理解。

以下是仿真波形:

如图,可以实现读入数据并根据当前选择位,通过控制位,选择是否加1操作,系统内部设置为BUTTON[1]为控制是否进行调整操作,

BUTTON[0]控制加1操作。

f)二十四进制电路:

24位循环加法器。可以实现异步置数,异步清零,同步保持低位进位功能。

程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

--CLR=0则清零异步清零

--load=0则制数异步制数

--输入EN定时间的按钮,置位端load,清零端CLR

--实现功能:

--低位位进位LO=0时,表示进位;

ENTITY ERSHISI IS

PORT(CLK :IN STD_LOGIC; --采用秒脉冲

CLR: IN STD_LOGIC; --异步清零,低电平有效

LOAD : IN STD_LOGIC; --异步制数,低电平有效

H_HI_IN , H_LO_IN :IN STD_LOGIC_VECTOR(3 DOWNTO 0); --预置数

LO : IN STD_LOGIC; --低位位进位,低电平有效,即当lo为低电平的时候,才进行加1操作

LO_OUT :OUT STD_LOGIC; --进位位,有进位的时候,输出一个低电平

H_HI , H_LO :OUT STD_LOGIC_VECTOR(3 DOWNTO 0));

END ENTITY ERSHISI;

ARCHITECTURE DWZ OF ERSHISI IS

CONSTANT COA_0 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0000";

CONSTANT COA_1 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0001";

CONSTANT COA_2 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0010";

CONSTANT COA_3 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0011";

CONSTANT COA_4 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0100";

CONSTANT COA_5 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0101";

CONSTANT COA_6 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0110";

CONSTANT COA_7 : STD_LOGIC_VECTOR(3 DOWNTO 0):="0111";

CONSTANT COA_8 : STD_LOGIC_VECTOR(3 DOWNTO 0):="1000";

CONSTANT COA_9 : STD_LOGIC_VECTOR(3 DOWNTO 0):="1001";

CONSTANT COA_A : STD_LOGIC_VECTOR(3 DOWNTO 0):="1010";

CONSTANT COA_B : STD_LOGIC_VECTOR(3 DOWNTO 0):="1011";

CONSTANT COA_C : STD_LOGIC_VECTOR(3 DOWNTO 0):="1100";

CONSTANT COA_D : STD_LOGIC_VECTOR(3 DOWNTO 0):="1101";

CONSTANT COA_E : STD_LOGIC_VECTOR(3 DOWNTO 0):="1110";

CONSTANT COA_F : STD_LOGIC_VECTOR(3 DOWNTO 0):="1111";

SIGNAL H_HI_TMP,H_LO_TMP : STD_LOGIC_VECTOR(3 DOWNTO 0);

SIGNAL LO_TMP :STD_LOGIC;

BEGIN

PROCESS(CLK,LOAD,CLR,H_HI_IN,H_LO_IN,H_HI_TMP,H_LO_TMP,LO,LO_TMP) BEGIN

IF CLR='0' THEN H_HI_TMP<=COA_0;H_LO_TMP<=COA_0;

使用Quartus进行多功能数字钟设计

EDA设计 使用Quartus II进行多功能数字钟设计 院系:机械工程 专业:车辆工程 姓名:张小辉 学号: 指导老师:蒋立平、花汉兵 时间: 2016年5月25日

摘要 本实验是电类综合实验课程作业,需要使用到QuartusⅡ软件,(Quartus II 是Altera公司的综合性PLD/FPGA开发软件,原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware 支持Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程)。本实验需要完成一个数字钟的设计,进行试验设计和仿真调试,实验目标是实现计时、校时、校分、清零、保持和整点报时等多种基本功能,并下载到SmartSOPC实验系统中进行调试和验证。 关键字:电类综合实验 QuartusⅡ数字钟设计仿真

Abstract This experiment is electric comprehensive experimental course work and need to use the Quartus II software, Quartus II is Altera integrated PLD / FPGA development software, schematic and VHDL, Verilog HDL and AHDL (Altera hardware description language support) etc. a variety of design input form, embedded in its own synthesizer and simulator can complete hardware configuration complete PLD design process from design entry to). The need to complete the design of a digital clock, and debug the design of experiment and simulation, the experimental goal is to achieve timing, school, reset, keep and the whole point timekeeping and other basic functions, and then download to the smartsopc experimental system debugging and validation. Key words: Electric power integrated experiment Quartus II Digital clock design Simulation

eda课程设计报告多功能数字钟设计大学论文

湖北大学物电学院EDA课程设计报告(论文) 题目:多功能数字钟设计 专业班级: 14微电子科学与工程 姓名:黄山 时间:2016年12月20日 指导教师:万美琳卢仕 完成日期:2015年12月20日

多功能数字钟设计任务书 1.设计目的与要求 了解多功能数字钟的工作原理,加深利用EDA技术实现数字系统的理解 2.设计内容 1,能正常走时,时分秒各占2个数码管,时分秒之间用小时个位和分钟个位所在数码管的小数点隔开; 2,能用按键调时调分; 3,能整点报时,到达整点时,蜂鸣器响一秒; 4,拓展功能:秒表,闹钟,闹钟可调 3.编写设计报告 写出设计的全过程,附上有关资料和图纸,有心得体会。 4.答辩 在规定时间内,完成叙述并回答问题。

目录(四号仿宋_GB2312加粗居中) (空一行) 1 引言 (1) 2 总体设计方案 (1) 2.1 设计思路 (1) 2.2总体设计框图 (2) 3设计原理分析 (3) 3.1分频器 (4) 3.2计时器和时间调节 (4) 3.3秒表模块 (5) 3.4状态机模块 (6) 3.5数码管显示模块 (7) 3.6顶层模块 (8) 3.7管脚绑定和顶层原理图 (9) 4 总结与体会 (11)

多功能电子表 摘要:本EDA课程主要利用QuartusII软件Verilog语言的基本运用设计一个多功能数字钟,进行试验设计和软件仿真调试,分别实现时分秒计时,闹钟闹铃,时分手动较时,时分秒清零,时间保持和整点报时等多种基本功能 关键词:Verilog语言,多功能数字钟,数码管显示; 1 引言 QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL 以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程,解决了传统硬件电路连线麻烦,出错率高且不易修改,很难控制成本的缺点。利用软件电路设计连线方便,修改容易;电路结构清楚,功能一目了然 2 总体设计方案 2.1 设计思路 根据系统设计的要求,系统设计采用自顶层向下的设计方法,由时钟分频部分,计时部分,按键调时部分,数码管显示部分,蜂鸣器四部分组成。这些模块在顶层原理图中相互连接作用 3 设计原理分析 3.1 分频器 分频模块:将20Mhz晶振分频为1hz,100hz,1000hz分别用于计数模块,秒表模块,状态机模块 module oclk(CLK,oclk,rst,clk_10,clk_100); input CLK,rst; output oclk,clk_10,clk_100;

数字钟设计报告——数字电路实验报告

数字钟设计实验报告 专业:通信工程 姓名:王婧 班级:111041B 学号:111041226

数字钟的设计 目录 一、前言 (3) 二、设计目的 (3) 三、设计任务 (3) 四、设计方案 (3) 五、数字钟电路设计原理 (4) (一)设计步骤 (4) (二)数字钟的构成 (4) (三)数字钟的工作原理 (5) 六、总结 (9) 1

一、前言 此次实验是第一次做EDA实验,在学习使用软硬件的过程中,自然遇到很多不懂的问题,在老师的指导和同学们的相互帮助下,我终于解决了实验过程遇到的很多难题,成功的完成了实验,实验结果和预期的结果也是一致的,在这次实验中,我学会了如何使用Quartus II软件,如何分层设计点路,如何对实验程序进行编译和仿真和对程序进行硬件测试。明白了一定要学会看开发板资料以清楚如何给程序的输入输出信号配置管脚。这次实验为我今后对 EDA的进一步学习奠定了更好的理论基础和应用基础。 通过本次实验对数电知识有了更深入的了解,将其运用到了实际中来,明白了学习电子技术基础的意义,也达到了其培养的目的。也明白了一个道理:成功就是在不断摸索中前进实现的,遇到问题我们不能灰心、烦躁,甚至放弃,而要静下心来仔细思考,分部检查,找出最终的原因进行改正,这样才会有进步,才会一步步向自己的目标靠近,才会取得自己所要追求的成功。 2

二、设计目的 1.掌握数字钟的设计方法。 2熟悉集成电路的使用方法。 3通过实训学会数字系统的设计方法; 4通过实训学习元器件的选择及集成电路手册查询方法; 5通过实训掌握电子电路调试及故障排除方法; 6熟悉数字实验箱的使用方法。 三、设计任务 设计一个可以显示星期、时、分、秒的数字钟。 要求: 1、24小时为一个计数周期; 2、具有整点报时功能; 3、定时闹铃(未完成) 四、设计方案 一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”计数器和定时器组成。干电路系统由秒信号发生 3

数字钟课程设计实验报告

《电子技术课程设计报告》 教学院:电气与电子信息工程学院 专业班级:xx级电子信息工程(x)班 学号:xxxxxxxxxxxx 学生:坏水 指导教师:xxxxxxxxxxxx 时间:2011.10.10~10.23 地点:电子技术实验室

课程设计成绩评定表

电子技术课程设计任务书 2011~2012学年第一学期 学生:坏水专业班级:xx电信本x班 指导教师:xxxxxxxxx 工作部门:电气与电子信息工程学院 一、课程设计题目:多功能数字钟电路的设计/直流稳压电源的设计 二、课程设计容(含技术指标): ①拟定多功能数字钟和直流稳压电源的组成框图,要现电路的基本功能,使用 的器件少,成本低; ②画出数字钟和直流稳压电源的主体电路逻辑图; ③测试多功能数字钟的逻辑功能,同时满足基本功能与扩展功能的要求; ④设计并安装各单元电路,要求布线整齐、美观,便于级联与调试;

四、基本要求 1.基本功能:要求设计出+5V的直流稳压电源。数字钟要求以数字形式显示时、分、秒的时间。小时计数器的计时要求为“12翻1”,要求具有手动校时功能。 2.扩展功能:定时控制,其时间自定;仿广播电台正点报时,自动报整点时数或触摸报整点时数(主要体现在理论知识上进行电路设计)。 (一)实训题目:直流稳压电源和多功能数字钟。 (二)实训目的: 1、巩固和加深学生对模拟电子技术,数字逻辑电路等课程基本知识的理解,综 合运用课程中所学到的理论知识去独立完成一个实际课题。 2、根据课程需要,通过查阅手册和文献资料,培养学生独立分析和解决实际问 题的能力。 3、通过电路方案的分析、论证和比较,设计计算和选用元气件,通过电路组装, 调试和检测环节,掌握电路的分析方法和设计方法。 4、熟用常用电子元气件的类型和特性,并掌握合理选用原则。 5、掌握电路图、PCB图的设计方法,学会电路的安装与调试。 6、掌握常用仪器、仪表的正确使用方法,学会电路整机指标的测试方法。(三)实训要求

多功能数字钟电路设计

多功能数字钟电路设计 一、数字电子钟设计摘要 (2) 二、数字电子钟方案框图 (2) 三、单元电路设计及相关元器件的选择 (3) 1.6进制计数器电路的设计 (3) 2.10进制计数器电路的设计 (4) 3.60进制计数器电路的设计 (4) 4.时间计数器电路的设计 (5) 5.校正电路的设计 (6) 6.时钟电路的设计 (7) 7.整点报时电路设计 (8) 8. 译码驱动及单元显示电路 (9) 四、系统电路总图及原理 (9) 五、经验体会 (10) 六、参考文献 (10) 附录A:系统电路原理图 附录B:元器件清单

一、数字电子钟设计摘要 数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。 此次设计数字钟就是为了了解数字钟的原理,从而学会制作数字钟。而且通过数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法。且由于数字钟包括组合逻辑电路和时叙电路。通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法。 二、数字电子钟方案框图 图1 数字电子钟方案框图

三、单元电路设计和元器件的选择 1. 6进制计数器电路的设计 现要设计一个6进制的计数器,采用一片中规模集成电路74LS90N芯片,先接成十进制,再转换成6进制,利用“反馈清零”的方法即可实现6进制计数,如图2所示。 图2

2. 10进制电路设计 图3 3. 60 进数器电路的设计 “秒”计数器与“分”计数器都是六十进制,它由一级十进制计数器和一级六进制计数器连接而成,如图4所示,采用两片中规模集成电路74LS90N串接起来构成“秒”“分”计数器。

EDA课程设计——多功能数字钟

哈尔滨工业大学(威海) 电子学课程设计报告带有整点报时的数字钟设计与制作 姓名: 蒋栋栋 班级: 0802503 学号: 080250331 指导教师: 井岩

目录 一、课程设计的性质、目的和任务 (3) 二、课程设计基本要求 (3) 三、设计课题要求 (3) 四、课程设计所需要仪器 (4) 五、设计步骤 (4) 1、整体设计框图 (4) 2、各个模块的设计与仿真 (4) 2.1分频模块 (4) 2.2计数器模块 (6) 2.3控制模块 (10) 2.4数码管分配 (13) 2.5显示模块 (14) 2.6报时模块 (16) 六、调试中遇到的问题及解决的方法 (18) 七、心得体会 (18)

一、课程设计的性质、目的和任务 创新精神和实践能力二者之中,实践能力是基础和根本。这是由于创新基于实践、源于实践,实践出真知,实践检验真理。实践活动是创新的源泉,也是人才成长的必由之路。 通过课程设计的锻炼,要求学生掌握电路的一般设计方法,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,培养学生的创新精神。 二、课程设计基本要求 掌握现代大规模集成数字逻辑电路的应用设计方法,进一步掌握电子仪器的正确使用方法,以及掌握利用计算机进行电子设计自动化(EDA)的基本方法。 三、设计课题要求 (1)构造一个24小时制的数字钟。要求能显示时、分、秒。 (2)要求时、分、秒能各自独立的进行调整。 (3)能利用喇叭作整点报时。从59分50秒时开始报时,每隔一秒报时一秒,到达00分00秒时,整点报时。整点报时声的频率应与其它的报时声频有明显区别。 #设计提示(仅供参考): (1)对频率输入的考虑 数字钟内所需的时钟频率有:基准时钟应为周期一秒的标准信号。报时频率可选用1KHz和2KHz左右(两种频率相差八度音,即频率相差一倍)。另外,为防止按键反跳、抖动,微动开关输入应采用寄存器输入形式,其时钟应为几十赫兹。 (2)计时部分计数器设计的考虑 分、秒计数器均为模60计数器。 小时计数为模24计数器,同理可建一个24进制计数器的模块。 (3)校时设计的考虑 数字钟校准有3个控制键:时校准、分校准和秒校准。 微动开关不工作,计数器正常工作。按下微动开关后,计数器以8Hz频率连续计数(若只按一下,则计数器增加一位),可调用元件库中的逻辑门建一个控制按键的模块,即建立开关去抖动电路(见书70页)。 (4)报时设计的考虑

Verilog数字钟数电实验报告

专业:电子信息工程班级:电信1305班日期:2015.5.5 第3次实验 姓名:康健组别: 6 指导教师:成绩: 实验课题:EDA多功能数字钟 1、已知条件 Quartus II软件、FPGA实验开发装置。 2、主要技术指标 以数字形式显示时、分、秒的时间;小时计数器为同步24进制;要求手动校时、校分。 3、实验用仪器 PC、FPGA开发板、示波器、稳压电源等 4、电路工作原理 所谓的时钟,其实本质上就是计数器。以开发板上的晶振时钟作为时间基准。 然后通过分频模块(计数器)进行分频,得到1Hz的脉冲信号作为秒的信号脉冲,然后用模60的计数器构成秒的计数单元。每记60下就自动清零且产生进位信号。将这个进位信号作为分的计数器的使能信号,其中,分计数器也是模为60的计数器。这里的计数器都是由模10和模6 组成的BCD码的计数器。个位和十位分别是一个四位的数字。同理,每记满60,分计数器就会产生一个进位信号,这个进位信号作为小时的使能信号。小时的计数器就是模24的BCD计数器。注意,这里的整个电路都是用1HZ的频率作为时间脉冲的,也就是说,这个电路是同步时序的电路。通过使能,来控制各个部分的时序逻辑。将小时和分的使能信号在总是为有效电平和下一级进位信号做选择,就是时钟调时状态和正常计时状态的切换。当在调时状态的时候,时钟每完成一个周期,无论是分钟还是小时,就向前加1,。最后,将分钟和小时通过译码器连接到数码管。将秒直接连接到LED灯,完成整个工程的基本功能(扩展功能见选作的实验报告)。 5、电路设计与调试 1、模10计数器的设计

2、模6计数器的设计 3、模60计数器设计(分、秒计数) 4、模24计数器设计(小时计数)

多功能数字钟电路设计

课程设计任务书 学生姓名: XXX 专业班级: 指导教师:工作单位: 题目: 多功能数字钟电路设计 初始条件:74LS390,74LS48,数码显示器BS202各6片,74LS00 3片,74LS04,74LS08各 1片,电阻若干,电容,开关各2个,蜂鸣器1个,导线若干。 要求完成的主要任务: 用中、小规模集成电路设计一台能显示日、时、分秒的数字电子钟,要求如下: 1.由晶振电路产生1HZ标准秒信号。 2.秒、分为00-59六十进制计数器。 3.时为00-23二十四进制计数器。 4.可手动校正:能分别进行秒、分、时的校正。只要将开关置于手动位置。可分别对秒、分、时进行连续脉冲输入调整。 5.整点报时。整点报时电路要求在每个整点前鸣叫五次低音(500HZ),整点时再鸣叫一次高音(1000HZ)。 时间安排: 第20周理论设计、实验室安装调试,地点:鉴主15楼通信实验室一 指导教师签名:年月日 系主任(或责任教师)签名:年月日

多功能数字钟电路设计 摘要 (1) Abstract (2) 1系统原理框图 (3) 2方案设计与论证 (4) 2.1时间脉冲产生电路 (4) 2.2分频器电路 (6) 2.3时间计数器电路 (7) 2.4译码驱动及显示单元电路 (8) 2.5校时电路 (8) 2.6报时电路 (10) 3单元电路的设计 (12) 3.1时间脉冲产生电路的设计 (12) 3.2计数电路的设计 (12) 3.2.1 60进制计数器的设计 (12) 3.2.2 24进制计数器的设计 (13) 3.3译码及驱动显示电路 (14) 3.4 校时电路的设计 (14) 3.5 报时电路 (16) 3.6电路总图 (17) 4仿真结果及分析 (18) 4.1时钟结果仿真 (18) 4.2 秒钟个位时序图 (18) 4.3报时电路时序图 (19) 4.4测试结果分析 (19) 5心得与体会 (20) 6参考文献 (21) 附录1原件清单 (22) 附录2部分芯片引脚图与功能表 (23) 74HC390引脚图与功能表 (23)

基于VHDL的多功能数字钟设计报告

基于VHDL的多功能数字钟 设计报告 021215班 卫时章 02121451

一、设计要求 1、具有以二十四小时制计时、显示、整点报时、时间设置和闹钟的功能。 2、设计精度要求为1秒。 二、设计环境:Quartus II 三、系统功能描述 1、系统输入:时钟信号clk采用50MHz;系统状态及较时、定时转换的控制信号为k、set,校时复位信号为reset,均由按键信号产生。 2、系统输出:LED显示输出;蜂鸣器声音信号输出。 3、多功能数字电子钟系统功能的具体描述如下: (一)计时:正常工作状态下,每日按24h计时制计时并显示,蜂鸣器无声,逢整点报时。 (二)校时:在计时显示状态下,按下“k”键,进入“小时”待校准状态,若此时按下“set”键,小时开始校准;之后按下“k”键则进入“分”待校准状态;继续按下“k”键则进入“秒”待复零状态;再次按下“k”键数码管显示闹钟时间,并进入闹钟“小时”待校准状态;再次按下“k”键则进入闹钟“分”待校准状态;若再按下“k”键恢复到正常计时显示状态。若校时过程中按下“reset”键,则系统恢复到正常计数状态。 (1)“小时”校准状态:在“小时”校准状态下,显示“小时”的数码管以2Hz 闪烁,并按下“set”键时以2Hz的频率递增计数。 (2)“分”校准状态:在“分”校准状态下,显示“分”的数码管以2Hz闪烁,并按下“set”键时以2Hz的频率递增计数。 (3)“秒”校准状态:在“秒复零”状态下,显示“秒”的数码管以2Hz闪烁,并以1Hz的频率递增计数。 (4)闹钟“小时”校准状态:在闹钟“小时”校准状态下,显示“小时”的数码管以2Hz闪烁,并按下“set”键时以2Hz的频率递增计数。 (5)闹钟“分”校准状态:在闹钟“分”校准状态下,显示“分”的数码管以2Hz闪烁,并按下“set”键时以2Hz的频率递增计数。 (三)整点报时:蜂鸣器在“59”分钟的第“51”、“53”、“55”、“57”秒发频率为500Hz的低音,在“59”分钟的第“59”秒发频率为1000Hz的高音,结束时为整点。 (四)显示:采用扫描显示方式驱动4个LED数码管显示小时、分,秒由两组led灯以4位BCD 码显示。 (五)闹钟:闹钟定时时间到,蜂鸣器发出频率为1000Hz的高音,持续时间为60秒。 四、各个模块分析说明 1、分频器模块(freq.vhd) (1)模块说明:输入一个频率为50MHz的CLK,利用计数器分出 1KHz的q1KHz,500Hz的q500Hz,2Hz的q2Hz和1Hz的q1Hz。 (2)源程序: library ieee;

单片机电子时钟课程设计实验报告

单片机电子时钟课程设 计实验报告 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

《单片机原理与应用》课程设计 总结报告 题目:单片机电子时钟(带秒表)的设计 设计人员:张保江江润洲 学号: 班级:自动化1211 指导老师:阮海容 目录 1.题目与主要功能要求 (2) 2.整体设计框图及整机概述 (3) 3.各硬件单元电路的设计、参数分析及原理说明 (3) 4.软件流程图和流程说明 (4) 5.总结设计及调试的体会 (10) 附录 1.图一:系统电路原理图 (11) 2.图二:系统电路 PCB (12) 3.表一:元器件清单 (13) 4.时钟程序源码 (14)

题目:单片机电子时钟的设计与实现 课程设计的目的和意义 课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。 课程设计的基本任务 利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。 主要功能要求 最基本要求 1)使用MCS-51单片机设计一个时钟。要求具有6位LED显示、3个按键输入。 2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。 3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。开始计时时为000000,到235959后又变成000000。 4)使用3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便加1。分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。 5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。 6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。 8)完成系统硬件电路的设计和制作。 9)完成系统程序的设计。 10)完成整个系统的设计、调试和制作。

多功能数字钟实验报告

《多功能数字钟电路的设计、制作》 课程设计报告 班级:(兴) 2008级自动化 姓名:胡荣 学号:2008960623 指导教师:刘勇 2010年11月13日

目录 一、设计目的.................................1 二、设计内容及要求...........................1 三、总设计原理...............................1 四、主要元件及设备...........................2 五、单元电路的设计...........................5 1、数字电子计时器组成原理.................5 2、用74LS160实现12进制计数器..............6 3、校时电路...............................7 4、时基电路设计...........................8 六、设计总电路图.............................8 七、设计结果及其分析.........................8 八、设计过程中的问题及解决方案...............9 九、心得体会.................................9 十、附录.....................................10

多功能数字钟电路设计 一、设计目的 通过课程设计要实现以下两个目标:一、初步掌握电子线路的设计、组装及调试方法。即根据设计要求,查阅文献资料,收集、分析类似电路的性能,并通过组装调试等实践活动,使电路达到性能要求;二、课程设计为后续的毕业设计打好基础。毕业设计是系统的工程设计实践,而课程设计的着眼点是让我们开始从理论学习的轨道上逐渐引向实际方面,运用已学过的分析和设计电路的理论知识,逐步掌握工程设计的步骤和方法,同时,课程设计报告的书写,为今后从事技术工作撰写科技报告和技术资料打下基础。 二、设计内容及要求 1、功能要求: ①基本功能: 以数字形式显示时、分、秒的时间,小时计数器的计时要求为“12翻1”,并要求能手动快校时、快校分或慢校时、慢校分。 ②扩展功能: 定时控制,其时间自定;仿广播电台正点报时—自动报正点时数。 2、设计步骤与要求: ①拟定数字钟电路的组成框图,要求先实现电路的基本功能,后扩展功能,使用的器件少,成本低; ②设计各单元电路,并用Multisim软件仿真; ③在通用电路板上安装电路,只要求显示时分; ④测试数字钟系统的逻辑功能; ⑤写出设计报告。设计报告要求:写出详细地设计过程(含数字钟系统的整机逻辑电路图)、调试步骤、测试结果及心得体会。 三、总设计原理 数字电子钟原理是一个具有计时、校时、报时、显示等基本功能的数字钟主要由振荡器、分频器、计数器、译码器、显示器、校时电路、报时电路等七部分组成。石英晶体振荡器产生的信号经过分频器得到秒脉冲,秒脉冲送入计数器计数,计数结果通过“时”、“分”、“秒”译码器译码,并通过显示器显示时间。 四、主要元件及设备 1、给定的主要器件: 74LS00(4片),74LS160(4片)或74LS161(4片),74LS04(2片),74LS20(2片),74LS48(4片),数码管BS202(4只),555(1片),开关(1个),电阻47k(2个)电容10uF(1个)10nF(1个) 各元件引脚图如下图:

推荐-基于多功能数字钟的课程设计报告 精品

EDA技术课程设计 多功能数字钟 学院:城市学院 专业、班级: 姓名: 指导老师: 20XX年12月

目录 1、设计任务与要求 (2) 2、总体框图 (2) 3、选择器件 (2) 4、功能模块 (3) (1)时钟记数模块 (3) (2)整点报时驱动信号产生模块 (6) (3)八段共阴扫描数码管的片选驱动信号输出模块 (7) (4)驱动八段字形译码输出模块 (8) (5)高3位数和低4位数并置输出模块 (9) 5、总体设计电路图 (10) (1)仿真图 (10) (2)电路图 (10) 6、设计心得体会 (11)

一、设计任务与要求 1、具有时、分、秒记数显示功能,以24小时循环计时。 2、要求数字钟具有清零、调节小时、分钟功能。 3、具有整点报时,整点报时的同时输出喇叭有音乐响起。 二、总体框图 多功能数字钟总体框图如下图所示。它由时钟记数模块(包括hour、minute、second 三个小模块)、驱动8位八段共阴扫描数码管的片选驱动信号输出模块(seltime)、驱动八段字形译码输出模块(deled)、整点报时驱动信号产生模块(alart)。 系统总体框图 三、选择器件 网络线若干、共阴八段数码管4个、蜂鸣器、hour(24进制记数器)、minute(60进制记数器)、second(60进制记数器)、alert(整点报时驱动信号产生模块)、 seltime(驱动4位八段共阴扫描数码管的片选 驱动信号输出模块)、deled(驱动八段字形译 码输出模块)。

四、功能模块 多功能数字钟中的时钟记数模块、驱动8位八段共阴扫描数码管的片选驱动信号输出模块、驱动八段字形译码输出模块、整点报时驱动信号产生模块。 (1) 时钟记数模块: <1.1>该模块的功能是:在时钟信号(CLK)的作用下可以生成波形;在清零信号(RESET)作用下,即可清零。 VHDL程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity hour24 is port( clk: in std_logic; reset:instd_logic; qh:BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); ql:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); end hour24; architecture behav of hour24 is begin process(reset,clk) begin if reset='1' then qh<="000"; ql<="0000"; elsif(clk'event and clk='1') then if (qh<2) then if (ql=9) then ql<="0000"; qh<=qh + 1; else ql<=ql+1; end if; else if (ql=3) then ql<="0000"; qh<="000"; else ql<=ql+1; end if; end if; end if; end process; end behav; 仿真波形如下:

数字电子钟课程设计实验报告

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计任务书2016/2017 学年第一学期 学生姓名:张涛学号: 李子鹏学号: 课程设计题目:数字电子钟的设计 起迄日期:2017年1月4日~2017年7月10日 课程设计地点:科学楼 指导教师:姚爱琴 2017年月日 课程设计任务书

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计开题报告2016/2017 学年第一学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号:

指导教师:姚爱琴 2017 年 1 月 6 日 中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计说明书2016/2017 学年第二学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号: 指导教师:姚爱琴 2017 年月日

目录 1 引言 (6) 2 数字电子钟设计方案 (6) 2.1 数字计时器的设计思想 (6) 2.2数字电路设计及元器件参数选择 (6) 2.2.2 时、分、秒计数器 (7) 2.2.3 计数显示电路 (8) 2.2.5 整点报时电路 (10) 2.2.6 总体电路 (10) 2.3 安装与调试 (11) 2.3.1 数字电子钟PCB图 (11) 3 设计单元原理说明 (11) 3.1 555定时器原理 (12) 3.2 计数器原理 (12) 3.3 译码和数码显示电路原理 (12) 3.4 校时电路原理 (12) 4 心得与体会 (12) 1 引言 数字钟是一种用数字电子技术实现时,分,秒计时的装置,具有较高的准确性和直观性等各方面的优势,而得到广泛的应用。此次设计数字电子钟是为了了解数字钟的原理,在设计数字电子钟的过程中,用数字电子技术的理论和制作实践相结合,进一步加深数字电子技术课程知识的理解和应用,同时学会使用Multisim电子设计软件。 2数字电子钟设计方案 2.1 数字计时器的设计思想 要想构成数字钟,首先应选择一个脉冲源——能自动地产生稳定的标准时间脉冲信号。而脉冲源产生的脉冲信号地频率较高,因此,需要进行分频,使得高频脉冲信号变成适合于计时的低频脉冲信号,即“秒脉冲信号”(频率为1Hz)。经过分频器输出的秒脉冲信号到计数器中进行计数。由于计时的规律是:60秒=1分,60分=1小时,24小时=1天,就需要分别设计60进制,24进制计数器,并发出驱动信号。各计数器输出信号经译码器、驱动器到数字显示器,是“时”、“分”、“秒”得以数字显示出来。 值得注意的是:任何记时装置都有误差,因此应考虑校准时间电路。校时电路一般

南昌大学数字钟实验报告

数 字 钟 实 验 报 告 课 程: 专业班级: 学生姓名: 学 号: 2014年 12月 22 日

多功能数字钟设计 一、设计任务 设计一多功能数字钟并进行仿真以及PCB制版。 二、设计要求 基本功能:准确计时,以数字形式显示时、分、秒的时间。 扩展功能:校正时间 PCB制版要求:尽量单面板、尺寸为200mm*150mm、焊孔0.5mm等三、设计方案 数字钟设计方案基本框图如下: 时的设计: 时的计数以24小时为周期,按通常的习惯,24小时计数器的计数序列为00,01,…,22,23,00,…,即当计数到23小时59分59秒时,再来一个秒脉冲,计数器就进到00时00分00秒。这样,可利用反馈置数或反馈清零法进行二十四进制计数。 分、秒的设计: 分和秒计数器都是模M=60的计数器。计数规律为00,01,…,58,59,00,…。它们的个位都是十进制,而十位则是六进制。 译码显示: 将计数器输出的4位二进制代码,译码显示出相应的十进制数状态,可利用译码显示器和数码管实现。 校时电路: 校时可用1s脉冲快速校正,也可手动产生单次脉冲慢校正至时或者分计数器。可设置变量来控制实现校正或正常计数。 四、Multisim仿真与分析

1、设计方案与模块框图 2、各子模块电路设计及原理说明 (1)振荡器 石英晶体振荡器的特点是振荡频率准确、电路结构简单、频率易调整。它还具有压电效应,在晶体某一方向加一电场,则在与此垂直的方向产生机械振动,有了机械振动,就会在相应的垂直面上产生电场,从而机械振动和电场互为因果,这种循环过程一直持续到晶体的机械强度限止时,才达到最后稳定。这用压电谐振的频率即为晶体振荡器的固有频率。 一般来说,振荡器的频率越高,计时精度越高,但耗电量将增大。如果精度要求不高也可以采用由集成电路定时器555与RC组成的多谐振荡器。如图1所示。 图1 ②分频器 由于振荡器产生的频率很高,要得到秒脉冲,需要分屏电路。本实验由集成

多功能数字钟电路的设计与制作

多功能数字钟电路的设计与制作 一、设计任务与要求 设计和制作一个多功能数字钟,要求能准确计时并以数字形式显示时、分、秒的时间,能校正时间,准点报时。 二、方案设计与论证 1.数字钟设计原理 数字电子钟一般由振荡器、译码器、显示器等几部分电路组成,这些电路都是数字电路中应用最广的基本电路。振荡器产生的1Hz的方波,作为秒信号。秒信号送入计数器进行计数,并把累计的结果以“时”、“分”、“秒”的数字显示出来。“秒”的计数、显示由两级计数器和译码器组成的六十进制计数电路实现;“分”的计数、显示电路与“秒”的相同;“时”的计数、显示由两级计数器和译码器组成的二十四进制计数电路实现。所有计时结果由七段数码管显示器显示。用4个与非门构成调时电路,通过改变方波的频率,进行调时。最后用与非门和发光二极管构成整点显示部分。

2.总体结构框图如下: 图14 总体框图 三、单元电路设计与参数计算 1.脉冲产生电路 图15 晶振振荡器原理图 图16 555定时器脉冲产生电路原理图 振荡器可由晶振组成(如图15),也可以由555定时器组成。图16是由555定时器构成的1HZ 的自激振荡器,其原理是: 第一暂态2、6端电位为Vcc 3 1 ,则输出为高电平,三极管不导通,电容C 充电,此 时2、6端电位上升。当上升至大于Vcc 3 2 时,输出为低电平,三极管导通,电容C 放电, 11 21 C 1 R C 2 R O

此时2、6端电位下降,下降至Vcc 3 1 时,输出高电平,以此循环。根据公式C R R f )2(43.121+≈ 得,此时频率为0.991。 图17 555定时器波形关系 图18 555定时器产生1Hz 方波原理图 2.时间计数电路 图19 74LS161引脚图 74LS161功能表 v V 2 3 V 1 3 v U 1 74L S 161D Q A 14Q B 13Q C 12Q D 11R C O 15A 3B 4C 5D 6 E N P 7E N T 10 ~L O A D 9~C L R 1 C L K 2

南理工EDA2多功能数字钟设计实验报告(蒋立平)——优秀

EDAⅡ实验报告 --多功能数字钟 学院专业: 学生学号: 指导老师:蒋立平 交稿时间:2012年3月25日

摘要 本实验借助于quartusⅡ软件设计一个多功能的数字时钟,具有24小时计时、星期显示、保持、清零、校分校时校星期、整点报时等基本功能,并在此基础上添加了闹钟、音乐闹钟、秒表等附加功能。同时,留有万年历的接口可以方便的进行扩展。.利用quartusⅡ进行相应的设计、仿真、调试,最后下载到SmartSOPC实验系统上验证设计的正确性。 关键词:多功能数字时钟,quartusⅡ,计时,星期显示,整点报时,闹钟,秒表 ABSTRACT This experiment is to design a multifunctional digital clock with quartus Ⅱ.The multifunctional digital clock has varities of the functions like 24-hour timer,week,keeping,clearing zero,adjusting time and chime on integral hour .It also include additional functions such as alarm clock,stopwatch and so on.At the sametimes,it can be added calendar.we designed and simulated with quartusⅡ.Finally downloaded it to the experiment platform to test. Key words:multifunctional digital clock,quartusⅡ,time,week,chime on integral hour, alarm clock,stopwatch

数电课程设计多功能数字钟的设计与实现

课程设计任务书 题目: 多功能数字钟的设计与实现 初始条件: 本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。用数码管显示时间计数值。 要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求) 1、课程设计工作量:1周。 2、技术要求: 1)设计一个数字钟。要求用六位数码管显示时间,格式为00:00:00。 2)具有60进制和24进制(或12进制)计数功能,秒、分为60进制计数,时为24进制(或12进制)计数。 3)有译码、七段数码显示功能,能显示时、分、秒计时的结果。 4)设计提供连续触发脉冲的脉冲信号发生器, 5)具有校时单元、闹钟单元和整点报时单元。 6)确定设计方案,按功能模块的划分选择元、器件和中小规模集成电路,设计分电路,画出总体电路原理图,阐述基本原理。 3、查阅至少5篇参考文献。按《******大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。 时间安排: 1、2013年 3 月18 日,布置课设具体实施计划与课程设计报告格式的要求说明。 2、2013 年3 月22日至2013 年5 月10 日,方案选择和电路设计。 3、2013 年5 月25 日至2013 年7 月2 日,电路调试和设计说明书撰写。 4、2013 年7 月5 日,上交课程设计成果及报告,同时进行答辩。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 1 引言 (1) 1.1 数字钟简介 (1) 1.2 EWB简介 (1) 2 方案选择 (3) 3 系统框图 (4) 4 分电路设计 (5) 4.1 脉冲产生电路 (5) 4.1.1设计要求 (5) 4.1.2所需元件 (6) 4.1.3元件介绍 (6) 4.1.4参数计算 (7) 4.1.5电路设计 (8) 4.2计数电路 (9) 4.2.1秒电路 (9) 4.2.2分电路 (11) 4.2.3时电路 (13) 4.3显示电路 (14) 4.3.1所需元件 (14) 4.3.2元件介绍 (14) 4.3.3原理说明 (14) 4.3.4电路设计 (15) 4.4整点报时电路 (15)

大连理工大学数字电路课程设计报告:多功能数字时钟设计

大连理工大学本科实验报告题目:多功能数字时钟设计 课程名称:数字电路与系统课程设计 学院(系):信息与通信工程学院 专业:电子信息工程 班级: 学生姓名: 学号: 完成日期:2014年7月16日 2014 年7 月16 日

题目:多功能数字时钟设计 1 设计要求 1) 具有“时”、“分”、“秒”及“模式”的十进制数字显示功能; 2) 具有手动校时、校分功能,并能快速调节、一键复位(复位时间12时00分00秒); 3) 具有整点报时功能,从00分00秒起,亮灯十秒钟; 4) 具有秒表功能(精确至百分之一秒),具有开关键,可暂停、可一键清零; 5) 具有闹钟功能,手动设置时间,并可快速调节,具有开关键,可一键复位(复位时间12时00分00秒),闹钟时间到亮灯十秒钟进行提醒; 6) 具有倒计时功能(精确至百分之一秒),可手动设置倒计时时间,若无输入,系统默认60秒倒计时,且具有开关键,计时时间到亮灯十秒钟进行提醒,可一键复位(复位时间默认60秒)。 2 设计分析及系统方案设计 2.1 模式选择模块:按键一进行模式选择,并利用数码管显示出当前模式。模式一:时钟显示功能;模式二:时钟调节功能;模式三:闹钟功能;模式四:秒表功能;模式五:倒计时功能。 2.2 数字钟的基本功能部分:包括时、分、秒的显示,手动调时,以及整点报时部分。基本模块是由振荡器、分频器、计数器、译码器、显示器等几部分组成。利用DE2硬件中提供的50MHZ晶振,经过分频得到周期为1s的时钟脉冲。将该信号送入计数器进行计算,并把累加结果以“时”“分”“秒”的形式通过译码器由数码管显示出来。 具有复位按键1,在时钟模式下按下复位键后对时钟进行复位,复位时间12时00分00秒。 进入手动调时功能时,通过按键调节时间,每按下依次按键2,时钟时针加一,按下按键2一秒内未松手,时钟时针每秒钟加十;按键1对分针进行控制,原理与时针相同并通过译码器由七位数码管显示。 从00分00秒开始,数字钟进入整点报时功能(本设计中以一个LED灯代替蜂鸣器,进行报时),亮灯10秒钟进行提示。 2.3多功能数字钟的秒表功能部分:计时范围从00分00.00秒至59分59.99秒。可由复位键0异步清零,并由开关1控制计时开始与停止。 将DE2硬件中的50MHZ晶振经过分频获得周期为0.01秒的时钟脉冲,将信号送入计数器进行计算,并把累计结果通过译码器由七位数码管显示 2.4多功能数字钟的闹钟功能部分:进入闹钟功能模式后,通过按键2(设定小时)和按键1(设定分钟)设定闹钟时间,当按下按键一秒内未松手时,可进行快速设定时间。当时钟进入闹钟设定的时间(判断时钟的时信号时针,分针分别与闹钟设定的时信号时针、分针是否相等),则以LED灯连续亮10秒钟进行提示,并由开关0控制闹钟的开和关。 2.5 多功能数字钟的倒计时功能部分:可通过按键3(设定分针)和按键2(设定秒针)设定倒计时开始,当按下按键一秒内未松手时,可进行快速设定时间。当没有手动时间设定时,系统默认为60秒倒计时。倒计时的时钟与数字钟的时钟相同,每迎到一个1s时钟上升

相关主题
文本预览
相关文档 最新文档