基于QuartusII的多功能数字钟设计Word下载.docx
- 文档编号:18775657
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:21
- 大小:569.89KB
基于QuartusII的多功能数字钟设计Word下载.docx
《基于QuartusII的多功能数字钟设计Word下载.docx》由会员分享,可在线阅读,更多相关《基于QuartusII的多功能数字钟设计Word下载.docx(21页珍藏版)》请在冰豆网上搜索。
外文摘要
TitleMulti-functiondigitalclockdesigndissertation
Abstract
Multi-functiondigitalclockinourdailylifehasaverywideapplication.ThisexperimentusingsoftwareQuartusIIdesignamulti-functiondigitaltimer,anddownloadtoSmartSOPCexperimentsystem.Thedigitaltimer,cancomplete00:
00to23:
59timingfunctions,andundertheactionofcontrolcircuithastokeepfast,reset,whentheschool,theschoolpoints,hour,andotherfunctions,andthese
本实验的目的是利用QuartusII软件设计一个多功能的数字计时器,使该计时器具有计时,显示,清零,较分,校时及整点报时功能。
依据上述数字钟电路结构方框图可知,秒计时器和分计时器均为60进制,小时计时器是24进制计数器。
当秒计时器对1HZ时钟脉冲信号计数到60时,产生一个进位脉冲,使分计时器的数值加1,同样,分计时器计数到60时,使小时计时器的数值加一。
当数字钟走时出现误差时,通过校时电路对时,分的时间进行校正,其中校时电路和清零电路只需在原有电路的基础上采用一定的逻辑门电路实现。
为了保证数字钟走时准确,时钟信号源输出的信号频率需经过分频器分频,得到1HZ和1KHZ时钟信号。
1HZ时钟信号用于计时,1KHZ时钟信号用于动态扫描译码电路。
通过分计时器和秒计时器的引脚在固定时刻采用逻辑门进行逻辑运算后驱动蜂鸣器,可实现整点报时功能,引入不同的频率信号可改变报时声音的频率。
与此同时,可合理利用实验板上闲置的两个LED数码管做成秒表,从而实现秒表计时功能。
3各子模块设计原理与实现
3.1脉冲发生器电路
3.1.1脉冲发生器模块总体设计
脉冲发生器是数字电子钟的核心部分,它的精度和稳定度直接决定数字电子钟的质量。
本实验中,实验操作板只能提供48MHZ的频率,为保证数字电子钟的正常运行,我们需要多种频率的保障:
电子钟正常运行时1HZ的秒脉冲,动态扫描译码器时1KHZ的扫描脉冲,报时电路中500HZ的低频信号脉冲,秒表计时中100HZ的时钟脉冲。
这些脉冲的获得可通过分频电路对48MHZ的脉冲信号连续分频,选取我们所需要的频率信号输入相关电路即可。
具体实现方法如以下流程图所示:
3.1.2脉冲发生器模块总原理图
3.1.3各子模块原理图
(1)48MHZ频率信号经过由三个D触发器的级联构成的8分频系统作用变成6MHZ的频率,再用74160进行六分频,即可得到1MHZ的频率信号。
原理图如下:
仿真波形如下:
(2)将以上得到的1MHZ频率信号经过由三个74160级联组成的1000分频电路,得到1KHZ的频率信号,原理图如下:
(3)1HZ的频率信号只需将1KHZ的频率信号进行1000分频即可,具体电路与上图相同,这里不再赘述。
500HZ的频率信号只需将以上所得的1KHZ频率信号经过D触发器进行2分频,而100HZ的频率信号可将1KHZ的频率信号通过一个74160进行十分频即可,具体原理图如下:
A.由1KHZ到500HZ,即模2计数器原理图:
仿真图:
B.由1KHZ到100HZ即模10计数器原理图:
3.2计时电路
3.2.1计时电路总体设计
计时电路是本实验基础电路中的关键电路,也是本实验的核心之所在。
由时计时器、分计时器、秒计时器构成。
计时电路中的计数器,可以用74160来实现。
分别设计计时,计分和计秒的电路,计时为0~23,计分及计秒为0~59。
即,采用模24进行计时,采用模60进行计分和计秒,在达到23时59分59秒时时钟自动清零。
此模块总体电路原理图如下:
仿真图如下:
3.2.2计时电路各子模块设计
(1)秒计时器
秒计时器即模60计数器,通过两片74160级联构成,在(01011001)8421BCD=59时同步置数,即将sh[2]sh[0]sl[3]sl[0]与非之后作为输入信号输入秒个位和秒十位的置位端,使两片计数器同时置零得到模60计数器。
原理图:
封装图:
由仿真结果知,秒计时器是一个模60计时器。
(2)分计时器
分计时器也是模60计数器,其计数原理与秒计时器基本相同。
通过两片74160级联构成,在(01011001)8421BCD=59时同步置数,即将mh[2]mh[0]ml[3]ml[0]与非之后作为输入信号输入分个位和分十位的置位端置零,使两片计数器同时置零得到模60计数器。
由仿真结果知,此分计数器确为模60计数器。
(3)时计时器
时计时器即模24计数器,通过两片74160通过级联构成,通过在(00100011)8421BCD=23时同步置数,即将hh[2]hh[0]hl[3]hl[0]与非之后作为输入信号输入时个位和时十位的置位端置零,使两片计数器同时置零得到模24计数器。
仿真
由仿真结果知,此时计时器为模24计数器。
(4)各计时器综合时各进位信号及置位信号说明
A.秒计时器向分计时器进位:
由于74160是同步计数器,在秒计时器达到59秒时,向分计时器的使能端输入信号,使使能端有效。
待下一个时钟脉冲到来时,秒计时器在清零的同时,也给分计时器进位。
因而只需将秒计时器的置位信号通过一非门后,作为分计时器的使能信号。
B.分计时器应在59分59秒时向时计时器输入信号,并使其有效。
为达到这一目的,应使分计数器的mh[2]mh[0]ml[3]ml[0]和秒计时器向分计时器的进位信号相与非后作为分计时器的置位信号,达到清零效果,同时将置位信号通过一非门后作为时计时器的进位信号。
C.在达到23时59分59秒时,所有计时器将同时集体清零。
因而可将hh[2]hh[0]hl[3]hl[0]和分计时器向时计时器的进位信号与非后作为时计时器的同步置位信号,以达到同步清零的目的。
3.3译码显示电路
3.3.1译码显示电路总体设计
其中DIG0——DIG5为LED的位码,a—g为LED的段码。
译码器74138用来选择哪一位LED显示,而24选四MUX用来决定所选LED上显示的内容。
3.3.2译码显示电路原理图
上面所示原理图中的四个74151八选一数据选择器联合构成了一个32选4数据选择器,目的是能够轮流选择输出计时器的秒分时以及秒表信号共六位数据;
7447是将选择输出的4位BCD码转化成对应的数据以便可以由单晶体显示器显示输出;
74138是一个译码器,用来控制选择哪一个显示器显示。
本模块原理为:
将1KHZ的频率进行摸8后所得输出信号快速扫描选择LED显示的位码,同时通过所得的三位信号的8种组合选择秒表个位,秒表十位,秒各位,秒十位,分个位,分十位以及时个位,时十位输出。
使其在所选定的LED上显示出来。
由于1KHZ的扫描频率很快,以及人眼的迟滞效应,LED显示基本看不到闪烁。
3.4清零电路
清零电路的目的是在任一时刻,能够随意的对时钟显示电路进行清零控制,此电路的实现较为简单,只需在各位计时器的每个清零端加一开关,当开关在一种状态时,正常计时。
而当开关在其对立状态时,则集体同步清零。
依图,只需将clr信号作为输入信号输入各级计时器的每个清零端。
当开关K2为0时,清零信号clr为1,计时器正常计时。
而当K2为1时,clr为0,计时器清零。
至此,清零的目的便已达到。
3.5较分校时电路
在电子钟计时不准确的时候,需要对其进行校正。
在实际应用系统中,较分电路是必不可少的一部分。
为达到这一目的,需有一定的校分校时信号,通过开关电路的控制,系统在正常计时信号和较分信号之间进行选择,从而达到较分或正常计时的效果。
3.5.1校分电路:
将此电路作为分计时器的分个位的使能信号,由图可知,当开关信号K3为零时,时钟输入信号second有效,正常计数;
开关信号K3为1时,1KHZ的校分信号有效,分计时器开始不受秒计时器的约束,快速较分。
3.5.2校时电路:
同校分电路,只需将此电路与时个位的使能端相连,作为其使能端的输入信号即可达到校时目的。
开关状态决定的电路功能为:
开关状态
有效使能信号
时计时器功能
K4为0
正常进位信号minute
正常计时
K4为1
校时信号1KHZ
快速校时
3.6保持电路
所谓保持电路,就是在开关作用时,计数器计数保持;
开关不作用时,计数继续进行。
要完成这个功能只需将秒位的使能端置无效就可以使计数停止,进而分位和时位都停止计数,这样就实现了保持功能。
在电路中用开关K1经过一个非门接至秒位的使能端。
将此电路接至秒个位的使能端,则当K1为0时,使能端有效,电路正常工作;
当K1为1时,使能端为零,秒个位停止工作,其他各级计时电路因得不到上一级的进位信号而停止工作,从而整个数字电子钟实现保持功能。
3.7报时电路
通过各个逻辑门电路的组合,可比较容易的让计时器在设定的时刻通过蜂鸣器发出响声。
并可通过改变输入频率的大小改变声音的频率,这即是报时电路的报时原理。
本实验要求当时钟计到59’53”时开始报时,在59’53”,59’55”,59’57”时报时频率为500Hz,59’59”时报时频率为1KHz。
原理图如下:
3.8秒表
秒表是针对实验板所做的一个附加功能。
本实验中,时分秒三个计时器共使用了六个LED,其余的两个可用作秒表计时。
秒表计时单元采用100HZ作为时钟输入,采用两个74160级联进行模100计数即可实现。
当秒表单元达到99时,向秒计时器使能端提供一输入信号,使此使能端有效,在下一脉冲到来时,秒表单元清零同时向分计时器进位。
这一单元的实现主要难点在于如何将秒表计时与正常的时钟计时统一起来,在不需要秒表时正常计时,而需要时,则进行秒表功能。
为不影响系统已有功能的前提下,我们加入了一个秒表开关K5,当时钟电路清零时,将秒表开关拨至0端,正常计时,一旦将秒表开关K5拨至1,则系统进入秒表计时阶段。
这一附加功能可以通过一个选择器以及若干逻辑门电路实现。
秒表单元原理图:
4多位一体-数字计数器总电路图
5系统调试,仿真,编程下载
5.1系统调试
QuartusII可通过层层递进的方式对所编程序进行调试。
在编程完成且确定无误后,可通过编译查看程序是否出现编译错误,若编译有错误,可根据下方提供的说明有目的的进行更正,有效地减少了通篇检查程序的时间;
若编译无误,则可对所编程序进一步进行仿真,查看仿真结果是否与预期值相同,若出现偏差,则返回原程序调试查看。
若仿真结果也正确,则可以将程序下载入硬件电路进行进一步查看调试。
对于无法进行仿真的程序则可在编译正确之后通过硬件显示来进行相关调试。
5.2系统仿真
在程序写好并且编译无误后即可进行仿真。
要进行仿真,首先要输入波形文件,波形文件的输入有三种方法,本实验采用向量波形文件进行仿真,仿真过程如下:
先将待仿真文件设为顶层,选择“File->
New”,打开“otherfiles”标签项,选中“VectorWaveformFile”,点击“OK”,在跳出图形的右边“Name”下的空白框里,双击鼠标左键,在跳出的对话框里。
点击“NodeFinder”按钮,在“Filter”中选择“Pins:
all”后,点击“List”按钮,则“NodesFound”对话框中列出了本工程的所有输入输出结点。
双击“clkin”和“light”,则右边的“selectednodes”框中了所选的两个结点,连续两次点击所出现的“OK”,即完成了结点的添加。
选中时钟信号使其变深色后,选择左边工具栏的
按钮在弹出的对话框中做相应设置。
点击“OK”完成。
保存波形输入文件。
选择“Tools->
simulatorTool”设置波形文件的路径,并作其他相关设置,按
按钮进行仿真,待仿真完成后,按
按钮查看波形。
本实验的所有仿真结果均已在上文中相应位置处贴出,这里不再赘述。
5.3编程下载
仿真通过的程序可下载至SmartSOPC实验系统中进行相关的调试或完成相关功能。
将编译好的程序下载到芯片之前要进行管脚分配。
选择“Assignments-Pins”,打开管脚分配对话框。
在TO栏中,输入各管脚的名称,在Location下输入相应的管脚。
选择“File-Save”来保存分配,然后关闭“AssignmentEditor”。
选择“Assignments-Setting”,打开Device&
Pin对话框,选择Configuration标签页,采用串行配置器件EPCS4的主动配置模式。
在Device&
Pin对话框中选择UnusedPins标签页,进行没有使用的管脚设置为高阻状态。
然后选择“Processing-StartCompilation”进行全程编译。
将实验箱的电源打开,点击工具栏上的
,再点击
,点击
,在弹出的对话框中点击“OK”,然后点击“close”关闭对话框,则在
后面的“Nohardware”变成了“ByteBlaster[LPT1]”。
最后在“Program/configure”列下的复选框中打勾,点击
开始向实验箱上下载。
各个管脚分配情况:
6结论
本实验欲通过QuartusII软件设计一个多功能数字钟,可以完成00:
59的计时功能,并在控制电路的作用下,具有保持、清零、快速校时、快速校分等功能。
在实验过程中,通过编程,调试,仿真确定无误后,我们将程序下载进了SmartSOPC实验系统中,经过多次的调试与完善,我们最终成功的完成了多功能数字钟的设计,并在完成以上基本功能的前提下,利用实验板上的资源,成功完成了秒表的设计。
试验中所遇到的问题及解决方案
在进行此次EDA试验之前,我们已经做过多功能数字钟的硬件实验,对相关的器件及原理都不陌生。
在正式做实验前以及实验中,老师也对QuartusII软件的相关用法,以及SmartSOPC实验系统的相关知识做了介绍。
这些都帮助我们较好的入了门,但即使这样在实验过程中,依然出现了很多我们始料不及的问题:
(1)最先困扰我们的便是程序编译问题。
由于没有真正理解QuartusII软件中,将待编译程序设为顶层的意义及重要性。
在开始试验阶段,每次都毫无意识的对不同文件进行编译,导致每次编译结果都不相同,因为不明原因,耗费了我们很多时间。
最后在同学的耐心解释下才明白过来。
这之后就几乎再没在此处出过错。
(2)在进行分频器设计时,从1MHZ经过1000分频后到1KHZ时,以及从1KHZ经过1000分频到1HZ时刚开始输出信号从进位端RCO引出,下载至SmartSOPC实验系统中后,小灯并不闪烁,检查电路也无法发现什么问题。
后来想到了微机老师讲过的占空比问题,才明白可能是小灯闪烁时间过短所致,将输出信号改接至QD后,这一问题终于得到解决。
(3)在进行计时电路设计时,刚开始设计的是独立的三个计时器,各循环功能均能满足,但合到一起则会出错,往往总是会提前进位及清零。
经过多次尝试与思考,最终明白作为一个电子钟,它的分计时器部分应该在59分59秒的时候向时计时器进位而不是仅仅在59分时;
同理,时计时器也应该是在23时59分59秒时同时清零,而不是在23时清零。
7实验收获与感受
短短一周的EDA设计虽然很短暂,但却依然让我们收获了很多。
在老师的帮助下,我们迅速掌握了QuartusII软件的应用,了解了整个设计的流程与方式,为以后的科研设计工作打好了一个很好的基础。
同时,整个实验的过程也实实在在地向我们展示了理论与实践之间的距离,正所谓实践出真知,很多以前理论课上耳熟能详的东西在实际的应用中并不是像我们所想象的那么简单,而很多我们在理论课上永远不会注意到的细节却往往总是会在实验中阻碍着我们前进的脚步。
通过此次实践机会,数电在我的脑海中再也不像以前那么呆涩,突然之间变得灵动而丰富起来。
从开始EDA设计到现在,已经差不多有快两个星期了,从最初的预习,实验,再到后来的实验报告,每一个过程都在考验着我们的综合能力。
在整个实验操作阶段,各类问题层出不穷,但我都会适时的进行心态上的调整,静心思考,认真琢磨,终于顺利完成了此次试验,整个实验过程也充满着无穷的乐趣。
而整个的论文写作阶段,不但让我们对已做实验有了一个系统的思考与整理机会,同时,论文的格式要求,也让我们早早体会到了标准格式的重要性,对于快要大三下的我们,早早的适应毕竟是一个很好的事情。
在整个实验的过程中,整个周围氛围都很融洽,大家都能互相帮助,积极交流各自的心得与体会,在这一过程中,很多自己无法解决的问题都得到了很好的解决,同时在帮助别人解决问题的同时,自身的知识架构也更加明了深刻,很是受益匪浅。
特别感谢我的指导老师,在整个设计过程中对我们耐心的指导与帮助。
在实验室那么嘈杂的环境中,老师的微笑总能静人心扉,激起我们坚持下去的勇气,我们真的很感动,真心地谢谢您!
8期望及要求
本次试验总体上来说是成功的,但由于时间上的限制还有很多想实现的功能没来的及实现,有些遗憾!
如果还有机会,我希望我设计的电子时钟,能够如我所愿奏出美妙的有旋律的音乐。
我想我会用数据选择器来实现此功能,这样便不会过多的引入由逻辑门电路带来的延迟,而给整个音乐效果带来大的影响。
9参考文献
【1】蒋立平《数字逻辑电路与系统设计》电子工业出版社
【2】南京理工大学电子技术中心《EDA设计实验指导书》
【3】葛汝明山东大学出版社《电子线路实验与课程设计》
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 QuartusII 多功能 数字 设计