数字时钟文档格式.docx

上传人:b****3 文档编号:18403683 上传时间:2022-12-16 格式:DOCX 页数:18 大小:338.48KB
下载 相关 举报
数字时钟文档格式.docx_第1页
第1页 / 共18页
数字时钟文档格式.docx_第2页
第2页 / 共18页
数字时钟文档格式.docx_第3页
第3页 / 共18页
数字时钟文档格式.docx_第4页
第4页 / 共18页
数字时钟文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数字时钟文档格式.docx

《数字时钟文档格式.docx》由会员分享,可在线阅读,更多相关《数字时钟文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

数字时钟文档格式.docx

Abstract

Thedesignconsistsoffourmodules:

frequencymodule,countingmodule,clockmodule,anddigitaldisplaymodule.Thefrequencyoftheinputfrequencyof4000000040MHz,providesastandardsecondpulseforthesystem;

thecountingmoduleconsistsofthreecounterswhichareconnectedinseries,thecountwhobuilt;

digitaltubescanningmoduletothetimeshownaboveinthedigitalpipe;

thecontrolmoduleofthepredeterminedperiodoftimetoachievecontrolbuzzeralarmfunction.

Keywords:

frequency,counting,clockcontrol,digitaldisplay,buzzer.

一引言

现在生活节奏越来越快,在学习工作中最重要的是效率,因此合理的掌握时间意义重大。

在生活中数字闹钟处处可见,作为重要的计时工具,人们的工作和学习都离不开它,设计一个具有时分秒显示、整点报时功能的数字闹钟将更加方便人们的生活。

二设计要求

1精度为1秒,显示时间范围在00时00分00秒到23时59分59秒;

2具有开始、暂停、校时、校分的功能;

3具有整点报时的功能,在59分50秒开始,到00分00秒结束;

扩展要求:

4具备闹钟功能。

三方案论证

时分秒

1Hz

分析设计课题得出设计原理框图如下:

40MHz时钟

分品模块

分秒

控制蜂鸣器

1分频模块:

分频模块采用一个分频器对开发板的40MHz系统时钟进行40000000分频从而得到一个性能稳定的1Hz脉冲信号供计数模块

计数,分频模块的性能决定了稳定度及准确度。

2计数模块:

采用三个计数器串联构成,60进制秒计数模块,具有进位输出;

60进制分计数模块和24进制是技术模块都具有装载功能以对时钟进行校时校分,三个技术器都具有时能功能,以控制适中的启动与暂停。

3时钟控制模块:

将计数器输出的分秒引脚作为输入,当时钟达到59分50秒时开始输出一个高电平一直到0点0分0秒结束,在此时段内蜂鸣器处于名叫状态,相当于整点报时。

4数码管显示:

将计数模块送入的信号进行扫描译码,译码成数码管能够使别的锻选与位选信号,最终将时间在六位数码管上动态显示出来。

四设计原理

1分频器设计:

VHDL:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

USEIEEE.STD_LOGIC_ARITH.ALL;

ENTITYdid_40mIS

GENERIC(N:

INTEGER:

=4);

--rate=N,N是偶数,类数参数

PORT(

CLK:

INSTD_LOGIC;

DOUT:

OUTSTD_LOGIC

);

ENDdid_40m;

ARCHITECTUREoneOFdid_40mIS

SIGNALQ:

INTEGERRANGE0TON-1;

BEGIN

PROCESS(CLK)--计数

BEGIN

IF(CLK'

EVENTANDCLK='

1'

)THEN

IF(Q<

N-1)THEN

Q<

=Q+1;

ELSE

=0;

ENDIF;

ENDPROCESS;

PROCESS(Q)--根据计数值,控制输出时钟脉冲的高、低电平

BEGIN前半周期输出高电平后半周期输出低电平

N/2)THEN

DOUT<

='

0'

;

ENDone;

仿真波形图:

从波形图可以看出分频后脉冲周期为待分频周期6倍,也即6分频,从原理图中改变类数参数即可完成对40MHz的40000000分频。

元件封装:

2计数模块:

(1)60秒计数:

VHDL:

ENTITYSIS

PORT(CLK,EN:

INSTD_LOGIC;

COUT:

OUTSTD_LOGIC;

OUTSTD_LOGIC_VECTOR(7DOWNTO0));

ENDS;

ARCHITECTUREbehavOFSIS

SIGNALQ:

STD_LOGIC_VECTOR(7DOWNTO0);

PROCESS(CLK)

IFEN='

THEN

IFCLK'

THEN

IFQ(3DOWNTO0)=9THEN个位满9置0

Q(3DOWNTO0)<

="

0000"

IFQ(7DOWNTO4)=5THEN十位满5置0

Q(7DOWNTO4)<

=Q(7DOWNTO4)+1;

不满足个位满9

则加一计数

=Q(3DOWNTO0)+1;

不满足十位满5

ENDIF;

IFQ=X"

59"

COUT<

='

ELSE

ENDPROCESS;

DOUT<

=Q;

ENDbehav;

从图中可以看出完成60进制计数,且逢59cout进1.

由于不许对秒进行校准故其封装舍去了装载功能,封装如下:

(2)60分计数:

VHDL:

ENTITYMIS

PORT(CLK,EN,LOAD:

DATA:

INSTD_LOGIC_VECTOR(7DOWNTO0);

OUTSTD_LOGIC_VECTOR(7DOWNTO0)

ENDM;

ARCHITECTUREbehavOFMIS

IF(LOAD='

)THENQ<

=DATA;

具有装载数据功能

ELSIFEN='

IFQ(3DOWNTO0)=9THEN

IFQ(7DOWNTO4)=5THEN

THEN逢59进一作为下一级的脉冲输入

封装如下:

(3)24进制时计数:

ENTITYHIS

PORT(CLK,LOAD,EN:

INSTD_LOGIC;

OUTSTD_LOGIC_VECTOR(7DOWNTO0));

ENDH;

ARCHITECTUREbehavofHIS

SIGNALL:

STD_LOGIC_VECTOR(3DOWNTO0):

SIGNALH:

SIGNALCLR:

STD_LOGIC:

--个位计数

PROCESS(CLK,EN,CLR)

IFLOAD='

THENL<

=DATA(3DOWNTO0);

IFEN='

IFL="

1001"

ORCLR='

THEN--23:

59进位

L<

="

ELSEL<

=L+'

DOUT(3DOWNTO0)<

=L;

--十位计数

THENH<

=DATA(7DOWNTO4);

IFCLR='

H<

ELSIFL="

=H+'

DOUT(7DOWNTO4)<

=H;

CLR<

WHENL="

0011"

ANDH="

0010"

ELSE'

--23点以后进位

仿真波形:

从图中可以看出“00100011”自动置为下一刻的“00000000”即24小时计时。

元件封装如下:

(4)对计数模块三个计数器进行VHDL的设计例化

原理图连接:

ENTITYCOUNTERIS

PORT(CLK,EN,M_LOAD,H_LOAD:

M_DATA,H_DATA:

D:

OUTSTD_LOGIC_VECTOR(23DOWNTO0));

ENDCOUNTER;

ARCHITECTUREbehavOFCOUNTERIS

COMPONENTH

ENDCOMPONENT;

COMPONENTM对三个计数器进行调用

COMPONENTS

SIGNALa,b:

STD_LOGIC;

BEGIN端口映射

U1:

SPORTMAP(CLK=>

CLK,EN=>

EN,COUT=>

a,DOUT=>

D(7DOWNTO0));

U2:

MPORTMAP(CLK=>

a,EN=>

EN,LOAD=>

M_LOAD,DATA=>

M_DATA,COUT=>

b,DOUT=>

D(15DOWNTO8));

U3:

HPORTMAP(CLK=>

b,EN=>

H_LOAD,DATA=>

H_DATA,DOUT=>

D(23DOWNTO16));

ENDbehav;

波形仿真,只截取关键部分:

可以看出s从01011001=59到00000000=0完成进位,同时分从00100010=22进位到00100011=23,小时未变为0001=1,因为未达到59:

59,因此现在时间是01:

22:

59~01:

23:

00

3时钟控制

ENTITYCONTIS

PORT(DM,DS:

CB:

OUTSTD_LOGIC);

ENDCONT;

ARCHITECTUREbehavOFCONTIS

PROCESS(DM,DS)

IFDM="

01011001"

IF(DS>

"

01001001"

ANDDS<

01100000"

THENCB<

ELSECB<

波形仿真:

通过上面两个图比较可知,在59:

50~00:

00时间段蜂鸣器处于工作状态,也即数字闹钟处于闹铃状态,持续时间10s,符合设计要求。

4顶层原理图设计:

四硬件调试

五设计心得

六参考资料

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1