数字时钟设计课设报告

上传人:第*** 文档编号:56921954 上传时间:2018-10-17 格式:DOC 页数:16 大小:85KB
返回 下载 相关 举报
数字时钟设计课设报告_第1页
第1页 / 共16页
数字时钟设计课设报告_第2页
第2页 / 共16页
数字时钟设计课设报告_第3页
第3页 / 共16页
数字时钟设计课设报告_第4页
第4页 / 共16页
数字时钟设计课设报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《数字时钟设计课设报告》由会员分享,可在线阅读,更多相关《数字时钟设计课设报告(16页珍藏版)》请在金锄头文库上搜索。

1、数字系统原理与设计 课程设计报告 设计题目:数字时钟设计 学生姓名: 专业: 电子科学与技术 年级: 指导老师: 南通大学电子信息学院 2015 年 7 月 8 日 1 摘要:数字时钟我们听到这几个字,第一反应就是我们 所说的数字,不错数字时钟就是以数字显示取代模拟表盘 的钟表,在显示上它用数字反应出此时的时间,相比模拟 钟能给人一种一目了然的感觉,不仅如此它还能同时显示 时、分、秒。而且能对时、分、秒准确校时,这是普通钟 所不及的。数字时钟广泛应用于各个公共场所,成为人们 日常生活中不可少的必需品。数字时钟是一种显示时、分、 秒的计时装置且具有校时、暂停功能,其计时周期为 24 小 时,显示

2、满刻度为 23 时 59 分 59 秒,秒计数器电路计满 60 后触发分计数器电路,分计数器电路计满 60 后触发时计数 器电路,当计满 24 小时后又开始下一轮的循环计数。 关键字:时、分、秒、校时、暂停 2 目录 摘要及关键字1 一.前言3 1.实验目的3 2.实验思想3 二.设计方案4 1.设计原理4 2.设计过程4 3.仿真实验及下载12 三.总结体会14 四.参考文献14 五.附录15 1.管脚绑定15 3 一一前言前言 1.1.实验目的实验目的 在 Quartus软件平台下,运用 verilog 硬件描述语言和 DE2 来实现数字时钟功能。数字时钟包括组合逻辑电路和时序 电路,能够

3、正确显示时、分、秒,并有校时、暂停功能,要求 在数码管上正确显示。 在完成基本要求的基础上,可进一步增加功能、提高性能, 如增加闹铃功能。 2.2.实验思想实验思想 本实验的难点主要在于如何使时钟正确显示,并在数码管 上显示,在实验过程中,在输出波形时出现了问题,50MHz 太 大,波形输出所需时间太长,最后新建了一个文件,将输入时 钟脉冲改为 1Hz,这样波形输出所需时间就大大减少,顺利完 成本实验。 4 二设计方案二设计方案 1.1.设计原理设计原理 数字时钟是一个对标准频率(1Hz)进行计数的计数电路。 数字时钟分为分频器、时计数器、分计数器、秒计数器,当秒 计数器计满 60 后触发分计

4、数器,分计数器计满 60 后触发时计 数器,当计满 24 小时后又开始下一轮循环。通过校时电路可对 分和时进行校正,通过暂停键实现暂停功能。数字时钟要完成 显示需要 6 个数码管,数码管显示要用到 7 段数码显示译码器 程序来正确显示时间。 2.2.设计过程设计过程 (1)分频 利用分频器将 clk_50MHz 变为频率为 1Hz,这样使得数字 时钟正常计数。 (2)计时 当秒后一位小于 9 时,秒后一位一直加 1,当秒后一位大于等 于 9,即为 9 时,下一个脉冲秒后一位为 0,此时看秒前一位。当秒 前一位小于 5 时,秒前一位一直加 1,当秒前一位大于等于 5,即为 5 时,下一个脉冲秒前

5、一位为 0,此时看分后一位。当分后一位小于 9 时,分后一位一直加 1,当分后一位大于等于 9,即为 9 时,下一 个脉冲分后一位为 0,此时看分前一位。当分前一位小于 5 时,分 前一位一直加 1,当分前一位大于等于 5,即为 5 时,下一个脉冲分 前一位为 0,此时看小时。当小时前一位为 2,此时当小时后一位小 5 于 3 时,小时后一位一直加 1,当小时后一位大于等于 3,即为 3 时, 下一个时钟脉冲小时前一位后一位均为 0。当小时前一位不为 2,此 时当小时后一位小于 9 时,小时后一位一直加 1,当小时后一位大 于等于 9 时,即为 9 时,下一个时钟脉冲小时后一位为 0,小时前

6、一位加 1。 (3)校时,秒分时加 1 秒、分、时分开校时,秒与分均从 0 计到 59,时从 0 计到 23。其中 ss1 与 pause 相当于一个,即 ss1 可写可不写。 (4)数码管显示(6 个) DE2 上的数码管为共阳极,即为低电平有效电路。数码 管如图所示。 以下为源程序:以下为源程序: module clock(_50MHZ,pause,ss1,sm1,sh1,s0,s1,m0,m1,h0,h1); input _50MHZ,pause,ss1,sm1,sh1; reg 3:0 second0,second1,minute0,minute1,hour0,hour1; outpu

7、t reg 6:0 s0,s1,m0,m1,h0,h1; reg32:0 Q1; reg _1HZ; always(posedge _50MHZ )/分频 begin if (Q1=24999999) /24999999/499 begin Q1=0; 6 _1HZ=_1HZ; end else if(pause=0) Q1=Q1+1d1; end always(posedge _1HZ)/计时 begin if(second04b1001) second0=second0+4b1; else begin second0=0; if(second14b0101) second1=second1

8、+4b1; else begin second1=4b0; if(minute04b1001)minute0=minute0+4b1; else begin minute0=4b0; if(minute14b0101)minute1=minute1+4b1; else begin minute1=4b0; 7 if(hour1=4b0010)begin if(hour04b0011) hour0=hour0+4b1; else begin hour0=0;hour1=0;end end else begin if(hour04b1001)hour0=hour0+4b1; else begin

9、hour0=4b0; hour1=hour1+4b1; end end end end end end if(ss1=1)/秒+1 begin if (second04b1001) second0=second0+4b1; else begin second0=4b0; if(second14b0101) second1=second1+4b1; else second1=4b0; 8 end end if(sm1=1)/分钟+1 begin if (minute04b1001) minute0=minute0+4b1; else begin minute0=4b0; if(minute14b

10、0101) minute1=minute1+4b1; else minute1=4b0; end end if(sh1=1)/小时+1 if(hour1=4b0010) begin if(hour04b0011) hour0=hour0+4b1; else begin hour0=0;hour1=0;end end else begin if(hour04b1001) hour0=hour0+4b1; else begin hour0=4b0; hour1=hour1+4b1;end 9 end case(second0)/数码管显示 4b0000:s0=7b1000000; 4b0001:s

11、0=7b1111001; 4b0010:s0=7b0100100; 4b0011:s0=7b0110000; 4b0100:s0=7b0011001; 4b0101:s0=7b0010010; 4b0110:s0=7b0000010; 4b0111:s0=7b1111000; 4b1000:s0=7b0000000; 4b1001:s0=7b0010000; default:s0=7b0000000; endcase case(second1) 4b0000:s1=7b1000000; 4b0001:s1=7b1111001; 4b0010:s1=7b0100100; 4b0011:s1=7b

12、0110000; 4b0100:s1=7b0011001; 4b0101:s1=7b0010010; 4b0110:s1=7b0000010; 10 4b0111:s1=7b1111000; 4b1000:s1=7b0000000; 4b1001:s1=7b0010000; default:s1=7b0000000; endcase case(minute0) 4b0000:m0=7b1000000; 4b0001:m0=7b1111001; 4b0010:m0=7b0100100; 4b0011:m0=7b0110000; 4b0100:m0=7b0011001; 4b0101:m0=7b0

13、010010; 4b0110:m0=7b0000010; 4b0111:m0=7b1111000; 4b1000:m0=7b0000000; 4b1001:m0=7b0010000; default:m0=7b0000000; endcase case(minute1) 4b0000:m1=7b1000000; 4b0001:m1=7b1111001; 4b0010:m1=7b0100100; 11 4b0011:m1=7b0110000; 4b0100:m1=7b0011001; 4b0101:m1=7b0010010; 4b0110:m1=7b0000010; 4b0111:m1=7b11

14、11000; 4b1000:m1=7b0000000; 4b1001:m1=7b0010000; default:m1=7b0000000; endcase case(hour0) 4b0000:h0=7b1000000; 4b0001:h0=7b1111001; 4b0010:h0=7b0100100; 4b0011:h0=7b0110000; 4b0100:h0=7b0011001; 4b0101:h0=7b0010010; 4b0110:h0=7b0000010; 4b0111:h0=7b1111000; 4b1000:h0=7b0000000; 4b1001:h0=7b0010000;

15、 default:h0=7b0000000; endcase 12 case(hour1) 4b0000:h1=7b1000000; 4b0001:h1=7b1111001; 4b0010:h1=7b0100100; 4b0011:h1=7b0110000; 4b0100:h1=7b0011001; 4b0101:h1=7b0010010; 4b0110:h1=7b0000010; 4b0111:h1=7b1111000; 4b1000:h1=7b0000000; 4b1001:h1=7b0010000; default:h1=7b0000000; endcase end endmodule 3.3.仿真实验及下载仿真实验及下载 (1) 利用 Quartus软件输入程序,进行编译。 (2) 指定芯片 Cyclone: EP2C35F672

展开阅读全文
相关资源
相关搜索

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

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