电工电子技术课程设计-数字电子钟

上传人:第*** 文档编号:55670029 上传时间:2018-10-03 格式:DOC 页数:18 大小:993.51KB
返回 下载 相关 举报
电工电子技术课程设计-数字电子钟_第1页
第1页 / 共18页
电工电子技术课程设计-数字电子钟_第2页
第2页 / 共18页
电工电子技术课程设计-数字电子钟_第3页
第3页 / 共18页
电工电子技术课程设计-数字电子钟_第4页
第4页 / 共18页
电工电子技术课程设计-数字电子钟_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《电工电子技术课程设计-数字电子钟》由会员分享,可在线阅读,更多相关《电工电子技术课程设计-数字电子钟(18页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程设计报告课程名称: 电工电子技术课程设计 学 院: 专 业: 班 级: 学 号: 姓 名: 成 绩: 2014 年 1月 15 日1目 录前前 言言1 一、实训任务2 1、基本任务2 2、设备要求2 二、设计方案3 1、层次化设计3 2、系统示意图3 三、设计过程3 1、小时计时模块3 2、分钟计时模块7 3、秒计时模块8 4、校时校分模块9 4 4、 整点报时模块整点报时模块10 5、闹钟控制模块10 6、控制模块11 7、跑表模块12 8.秒、分、小时计时单元功能电路模块14 9. 秒、分、小时计时、校正、整点报时、闹钟单元功能电路模块14 10. 秒、分、小时计时、校正、

2、整点报时、闹钟、跑表单元功能电路模块15 四、联机操作四、联机操作15 1 1、 分配引脚:分配引脚:15 2 2、编译、编译16 3 3、下载、下载16 五五. 收获和体会收获和体会.16 六六. 参考文献参考文献.16 1. EDA 技术实用教程Verilog HDL 版(第四版)潘松、黄继业、潘明编著。16 2. FPGA 设计基础王传新主编.162前前 言言数字电子钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的 准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。它从原理上 讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。目前

3、,数字钟的功能越来越强, 并且有多种专门的大规模集成电路可供选择。 本次的课程设计是基于 Verilog HDL 的多功能数字钟,完成时、分、秒的显示功能。设计利用 Verilog HDL 语言自顶向下的设计理念,突出其作为硬件描述语言的良好的可读性、可移植性以及 易于理解等优点。通过 Quartus II 5.0 和 ModelSim SE 6.1f 软件完成仿真、综合。程序下载到 FPGA 芯片后,可用于实际的数字钟显示中。 本次课程设计要求设计一个数字钟,基本要求为数字钟的时间周期为 24 小时,数字钟显示时、 分、秒,数字钟的时间基准一秒对应现实生活中的时钟的一秒。供扩展的方面涉及到校

4、时校分、 闹钟、整点报时、跑表等。因此,研究数字电子钟及扩大其应用,有着非常现实的意义。3一、实训任务1、基本任务小时计数器为 24 进制 ;分和秒计数器为 60 进制计数器;扩展功能:校时和校分; 整点报时;闹钟; 跑表。 2、设备要求使用硬件描述语言(Verilog HDL 语言)方法在 Quartus II 软件系统平台上建立数字电子钟电路的各分模 块文件并完成编译和仿真;在 Quartus II 软件系统平台上完成顶层文件的编译和下载,并通过开发板演示最终 结果,观察现象。二、设计方案1、层次化设计本次设计课题目标完成是基于 Verilog HDL 语言的多功能数字钟的设计,通过数码管

5、实时显示时、分、秒并 添加了校时,闹钟,整点报时和跑表的功能,通过按键,指示灯和蜂鸣器实现。设计遵循 Verilog HDL 语言的设 计理念,代码具有良好的可读性和易理解性。 系统主要分六个模块实现,分别是计数模块(时分秒) 、校时模块、闹钟模块、整点报时模块、跑表模块、 控制模块。在顶层文件中采用了画原理图的方法,对各个模块进行调用,综合。2、系统示意图输入变量:秒时钟 CPS,校时、校分变量分别为 SWH、SWM ;4输出变量:小时计时 H74、H30输出,其时钟为 CPH; 分钟计时 M74、M30输出,其时钟为 CPM;秒计时 S74、S30输出,其时钟为 CPS。报时 bshi 和

6、闹钟控制变量 ling 等。三、设计过程1、小时计时模块(1)建立项目,打开 Quartus II,单击 FILE,New projectWizard。(2)建立工程文件,单击,选择 Design Files/Verilog HDL FILe,打开编程界面。使用 Verilog HDL 语言编写小时计时的程序(如下图所示) ,完成后单击 。(3)编译,如图 1 所示操作。编译无误后,可做功能仿真。/小时个位到 9 时, /小时个位清零, /并且小时十位进 1。/否则小时个位一直加 1。/到 23 时,小时输出 H 清零。/如果 RD 为低电平,小时输出 H 清零。5图 1(4)仿真,单击,选择

7、 vector waveform file。打开波形编辑器,如图 2,在波形编辑器窗口的 name列空白处双击,打开图 3。单击 node finder,打开图 4。在图 4 里设置 Filter 为 pins:all,单击 list, ,添加端口到波形编辑器。图 2图 3 图 4 连续点击两次 OK,得图 5图 5 分组,按 Ctrl 键选中需要分为一组的端口,在阴影处右击,选择 Grouping/Group,分为一组,并在弹出的命名 框中,命名为 Hl,用同样的方法设置小时的高四位,并命名为 Hh 然后设定仿真结束的时间,单击 Edict 中的 end time 进行设置。 点击 OK 并

8、保存,注意波形名改为指定的文件名。首先单击 CPH 即选定 CPH,如图 6:图 66单击,打开图 7,并设置参数,点击 OK。图 7 CPH 的波形如下图 8:图 8然后设置 RD,选择 RD,单击,将 RD 一部分设为高电平,一部分设为低电平。图 9 单击 Simulator Settings,选择仿真类型为功能仿真,即设置 Simulator mode 为 Functional,点击 OK。 然后, 生成功能仿真网表文件,选择 Processing/Generate Functional Simulation Netlist最后,进行仿真,点击,生成仿真结果,如图 10图 10 由仿真波

9、形可知:Hl 作个位计数,Hh 作十位计数;当小时的高四位为 0、1 时,小时的低四 位为 9 时,在下一个时钟的上升沿来之后,高四位加一;当小时的高四位为 2,同时低四位为 3 时,小时的高低四位都清零。实现了从 00 到 23 的循环计数,其结论是符合时计时规律,逻辑电 路设计正确。当 RD 为 0 时,计时停止,实现了复位的功能。 (5)经仿真确认无误后,将当前设计打包,按图 11 操作,打包后生成 24 进制计数器的符号,如图 12。7图 11CPHRDH70clock24hinst图 122、分钟计时模块(1)分 计时功能电路 Verilog 语言描述60 进制计数器的设计方法类似

10、24 进制计数器,不同的地方在于,60 进制的设计思想是当计数到 59 时,置 数清零,产生进位输出;而 24 进制的高低 4 位的清零和进位需要考虑个位计数到 9 和整个计满到 23。设置波形激励,首先选定 CPM,单击,打开时钟设置工具,然后设置 RD,单击,将 RD 一部分设为高电平,一部分设为低电平,如图 13。8图 13 其他操纵与 24 进制计数器的类似。(2)仿真波形如图 14:图 14 由仿真波形可知:Ml 作个位计数,Mh 作十位计数;当分钟的高四位为 0、1、2、3、4 时,分 钟的低四位为 9 时,在下一个时钟的上升沿来了之后,高四位加一;当分钟的高四位为 5,同时 低四

11、位为 9 时,分钟的高低四位都清零。实现了从 00 到 59 的循环计时,其结论是符合分计时规 律,逻辑电路设计正确。(3)分计时模块打包:CPMRDM70CP60Mclock60minst图 153、秒计时模块(1)秒 计时功能电路 Verilog 语言描述9(2)仿真波形如下:图 16 由仿真波形可知:Sl 作个位计数,Sh 作十位计数;当秒钟的高四位为 0、1、2、3、4 时,秒钟的低四位为 9 时,在下一个时钟的上升沿来了之后,高四位加一;当秒钟的高四位为 5,同时低四位为 9 时,秒钟的高低 四位都清零。实现了从 00 到 59 的循环计时,其结论是符合秒计时规律,逻辑电路设计正确。

12、(3)秒计时模块打包:CPSRDS70CP60Sclock60sinst图 174、校时校分模块(1)校时校分功能电路 Verilog 语言描述10(2)仿真波形如下:图 17 由仿真图分析可知:当 SWM 为 0 时,用秒时钟 CPS 对分钟 CPM 进行校对;当 SWH 为 0 时用秒时钟 CPS 对小时 CPH 进行校对。当 SWM、SWH 都不为 0 时,分钟,小时正常计数。其结论是符合校时校分规律,逻辑电路设计正确。(3)校时校分模块打包CPSCP60MCP60SSWMSWHCPMCPHjiaoshiinst图 184 4、整点报时模块整点报时模块(1)整点报时功能电路 Verilo

13、g 语言描述11(2)仿真波形如下:图 19 由仿真波形图看出,当为 59 分 59 秒时, (bshi 被赋值为 gy 的值)即以高音报时。验证了本模块的逻辑功能正 确。(3)整点报时模块打包M70S70gybshibaoshiinst图 205、闹钟控制模块(1)闹钟功能电路 Verilog 语言描述(2)仿真波形如下:12图 21 由仿真波形图看出在设定好的时间位置,ling 被设为高电平,即此时灯亮,验证了本模块逻辑功能的正确性。(3)闹钟模块打包图 22 图 23(可通过参数模块对闹钟进行设定)6、控制模块(1)控制模块电路 Verilog 语言描述(2)仿真波形如下:图 24 由仿

14、真波形图看出当 mode 为 1 时,CLK1 无输入信号,即跑表不运行,时钟的计时模块有输入信号 cps;当蓦地 为 0 时,CLK1 有输入信号,即跑表运行,但计时模块并不停止,只是不显示,所以 cps 仍同 clk 一样,实现了 跑表与数字钟的控制功能,验证了本模块逻辑功能的正确性。13(4)控制模块打包modeclkRSTpsopcpsCLK1CLRPAUSEcontrolinst图 257、跑表模块(1)跑表模块电路 Verilog 语言描述(2) 跑表模块的仿真模型14由仿真图形验证了跑表的功能,逢百进位。(3)跑表模块打包(如图 26)CLKCLRPAUSEMSH30MSL30S

15、H30SL30MH30ML30paobiaoinst图 268.秒、分、小时计时单元功能电路模块(1)接线图(如图 27)图 27(2)仿真波形图(如图 28)15图 289. 秒、分、小时计时、校正、整点报时、闹钟单元功能电路模块(1)接线图(如图 29):图 29(2)仿真波形(如图 30):图 3010. 秒、分、小时计时、校正、整点报时、闹钟、跑表单元功能电路模块(1)接线图:(如图 31) (该模块并没有完全实现,正在进一步学习中)16图 31 四、联机操作四、联机操作1 1、分配引脚分配引脚:2 2、编译、编译单击,编译。编译无误后,便可下载。3 3、下载、下载将开发板与 PC 机

16、接好,装好驱动,打开电源,单击,打开下载窗口。点击,选择,17然后单击,开始下载,当下载进度到 100%,下载成功,就可以根据设计情况,在开发板上验证功能。 五五. 收获和体会收获和体会这次实训过程虽然短暂,但却学到了很多东西。刚开始觉着这次实训可能就是编一些简单的程序,仿真验证就 行了,但是随着实训的深入,我发现这不仅仅是编程序那么简单,它还考验了我们的耐心,细心和逻辑能力。这 次编写的是多功能数字电子钟,刚开始感觉无从下手,然后就去网上查找一些资料,看了很多资料后,渐渐自己 也摸到了一些门道,也慢慢地对这个看似枯燥的东西产生了兴趣,随着设计的深入,我发现我的兴趣越来越大, 希望电子钟实现的功能越来越多,在编写过程中,总

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号