数电课程设计

发布 2022-10-04 02:08:28 阅读 1898

基于vhdl数字电子时钟。

华侨大学 2009级电子信息工程a班。

学生:刘飞学号:0916103045

1实验目的及要求。

a:锻炼自己的实际动手能力,学习如何编写相关程序,加强实践。

b:设计一个24进制电子时钟,并实现其基本校时功能。

2.时钟的功能。

a、按键消抖,整点报时,**闹钟,秒表,时分秒校时,秒的清零,达到23时59分59秒。

3.设计方案。

a它由分频器、计数器、译码器显示器和校时扫描,使能等电路组成。

b秒计数器满60后向分计数器进位,分计数器满60后向小时计数器进位,小时计数器按照24进制规律计数。计数器的输出分别经译码器送显示器按键切换显示。计时出现误差时,可以用校时电路校时、校分。

c可设置闹钟,当达到闹钟时间,蜂鸣器就会****。当到达整点时蜂鸣器会发出5秒钟的叫声,完成其整点报时功能。

d秒表部分由其单独模块构成。其设置与时钟类似,构成相对简单,可仿照时钟完成。

e总体讲它是由各模块分块构成,(自我感觉来说首先确定其功能想象出原理图,最后一步一步地添加各个功能,这对于我们初学者来说十分重要)。

f将各个模块首先一部分一部分进行**,不断改正,连接起来,想成一个整体。如果需要相关的门及触发器,可以通过软件平台中查找,尤其是消抖需要的触发器。

g最后进行硬件测试,并反复调时,观察其计时是否准确,各个模块的功能是否正确。如果出现错误,要进行自顶向下的查找,同时更要结合其功能模块,查错,最后完成时钟。

4.原理图为。

5.模块(各个模块**结果正常)

a.时分秒模块都相对简单,其介绍就不做多说。

b.校时功能是在分秒模块内添加一个控制键,让其进行调时分时,完成其功能。

c.闹钟模块设置,利用一个切换键让闹钟与其他显示进行切换显示,其设定功能与时分共用。即设置多功能按键。

d.秒表模块是单独设置的,它也利用相关的多功能按键。

e.切换显示模块稍微简单,只需添加控制开关即可,但要开关要与相关的功能键对应。

f.译码显示模块是对前面需要译码的信息进行译码显示,此模块设置为最后连接的模块,可节约资源,减少成本。

g.扫描模块主要是应对我们硬件不能同时显示而设置的,相对难度大一点,因为它要考虑到输出的数码显示使能端,和扫描频率大小的设定这这都需要自己亲自测试,毕竟自己第一次使用这种类型的fpga开发板。

h.分频模块,由于开发板里面只有一个时钟源50m,我们若要得到相关频率就必须对其进行分频,输出。

i.消抖主要通过d触发器完成其功能,并且接上一定的时钟信号。

5.具体程序如下。

1. 秒模块。

进位信号正常,为60进制,较分信号也正常,实现60进制带有进位和清零功能的秒计数模块second,输入为1hz脉冲和高电平有效的清零信号clr,输出秒个位、十位及进位信号co,。

library ieee;

use use

entity second is

port(mode1 :in std_logic;

clk,reset,semin:in std_logic;

sec1,sec0:out std_logic_vector(3 downto 0);

enmin:out std_logic);

end second;

architecture art of second is

signal enmin_2:std_logic;

signal co:std_logic;

beginprocess(clk,semin,mode1)

variable cnt1,cnt0:std_logic_vector(3 downto 0);

beginif mode1='0'then enmin_2<=(semin and clk); end if;

if reset='1' then

cnt1:="0000";

cnt0:="0000";

elsif clk'event and clk='1' then

if cnt1="0101" and cnt0="1001"then

co<='1';

cnt1:="0000";

cnt0:="0000";

elsif cnt0<"1001"then

cnt0:=cnt0+1;

co<='0';

elsecnt0:="0000";

if cnt1<"0101" then

cnt1:=cnt1+1;

co<='0';

elsecnt1:="0000";

co<='0';

end if;

end if;

end if;

sec1<=cnt1;

sec0<=cnt0;

enmin<=(co or enmin_2);

end process;

end art;

**结果正常。

2.分模块。

进位信号正常,为60进制,较时信号也正常。

library ieee;

use use

entity minute10 is

port(en1 : in std_logic;

min1,min0 :out std_logic_vector(3 downto 0);

enhour: out std_logic);

end minute10;

architecture art of minute10 is

signal enmin_2:std_logic;

signal bco:std_logic;

beginprocess (en1)

variable cnt1,cnt0:std_logic_vector(3 downto 0);

beginif en1'event and en1='1' then

if cnt1="0101"and cnt0="1001" then

bco<='1';

cnt1:="0000";

cnt0:="0000";

elsif cnt0<"1001"then

cnt0:=cnt0+1;

bco<='0';

elsecnt0:="0000";

if cnt1<"0101"then

cnt1:=cnt1+1;

bco<='0';

elsecnt1:="0000";

bco<='0';

end if;

end if;

end if;

min1<=cnt1;

min0<=cnt0;

enhour<=bco;

end process;

end art;

**结果正常。

3.时模块。

进位信号正常,为24进制。

library ieee;

use use

entity hour is

port( mode3 :in std_logic;

en2 :in std_logic;

h1,h0 :out std_logic_vector(3 downto 0));

end hour;

architecture hour_arc of hour is

beginprocess(en2)

variable cnt1,cnt0:std_logic_vector(3 downto 0);

begin

if en2'event and en2='1' then

if cnt1="0010"and cnt0="0011" then

cnt0:="0000";

cnt1:="0000";

elsif cnt0<"1001"then

cnt0:=cnt0+1;

elsecnt0:="0000";

cnt1:=cnt1+1;

end if;

end if;

h1<=cnt1;

h0<=cnt0;

end process;

end hour_arc;

**结果正常。

4.第一个切换模块(不同于第二个)

此模块主要用于闹钟显示与时间显示的切换。

library ieee;

use entity alarm is

port(amin1,amin0,ah1,ah0,min1,min0,h1,h0 :in std_logic_vector(3 downto 0);

clk:in std_logic;

mode6in std_logic;

a1,a0,b1,b0out std_logic_vector(3 downto 0));

end alarm;

architecture art of alarm is

beginprocess (mode6,min1,min0,h1,h0,amin1,amin0,ah1,ah0)

beginif mode6='0' then

a1<=min1;

a0<=min0;

b1<=h1;

b0<=h0;

else a1<=amin1;

a0<=amin0;

b1<=ah1;

b0<=ah0

数电课程设计

两位十进制计数显示器。一 设计内容。本设计主要采用芯片有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的电子生日蜡烛。这种蜡烛与吹灭蜡制蜡烛一样具有相同的乐趣,并且它是可重复利用的,可改进的以及低碳...