版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课 程 考 查 报 告 课程名称 EDA技术 题目名称 数字电子钟 学生学院 信息工程学院 专业班级 通信工程09(1)班 学 号 310900xx 学生姓名 陈 XX 任课教师 李学易 2013 年 12月 27日 电子钟设计目的: 根据实验板的资源和利用Quartus II软件编译、仿真可以实现电子钟的数字系统设计。设计内容: 数字电子钟的功能:1、 时钟显示功能(显示时、分、秒)2、 时钟调整功能 (小时、分钟的校准)3、 闹钟设置功能 设计方案: 根据程序设计需要,信号的定义如下: Clk:标准时钟信号,频率为4Hz Clk_1k:产生闹铃声、报时声的时钟信号,频率为1024Hz Mo
2、de:功能控制信号,为0:计时功能;1:闹钟功能;2:手动校时功能 Turn:接按键,在手动校时功能时,选择的是校准小时,还是分钟; 若长时间按该键,可使秒信号清零 Change:接按键,在手动校时时,每按一次,计数器加一 若长按,则连续快速加一 Hour,min,sec:此三信号分别输出并显示时、分、秒信号 Alert:输出到扬声器的信号,产生闹钟音和报时音;闹钟音为持续20秒的“嘀嘀嘀”音,若按住change键,则可屏蔽该音;报时音为“嘀嘀嘀嘀 嘟”四短一长音。 Ld_alert:接发光二极管,指示是否设置了闹钟功能 Ld_hour:接发光二极管,指示当前调整的是小时信号 Ld_min:接
3、发光二极管,指示当前调整的是分钟信号实验结果: 时序仿真图: RTL图:心得体会: 经过一周的EDA课程设计,对用verilog语言设计数字系统有了一定认识。设计过程当然有点累,可是当完成这个设计时,内心是无比的高兴。通过这次的课程设计,很好地把课堂理论和实践结合起来,认识更深刻了。设计中遇到过很多问题,这时耐心、细心是不可缺少的,通过查阅网上资料和其他参考文献以及和别人交流,最终都把问题解决了。当然其中也缺少不了庞老师的耐心指导,在此,感谢庞老师的教导!参考文献:Verilog数字系统设计教程 第2版 夏宇闻编著 Verilog的135个经典设计实例 王金明编著源代码:module digi
4、tal_watch(clk,clk_1k,mode,change,turn,alert,hour,min,sec, LD_alert,LD_hour,LD_min); input clk,clk_1k,mode,change,turn; output alert,LD_alert,LD_hour,LD_min; output7:0 hour,min,sec; reg7:0 hour,min,sec,hour1,min1,sec1,ahour,amin; reg1:0 m,fm,num1,num2,num3,num4; reg1:0 loop1,loop2,loop3,loop4,sound;
5、reg LD_hour,LD_min; reg clk_1Hz,clk_2Hz,minclk,hclk; reg alert1,alert2,ear; reg count1,count2,counta,countb; wire ct1,ct2,cta,ctb,m_clk,h_clk; always (posedge clk) begin clk_2Hz<=clk_2Hz; if(sound=3) begin sound<=0; ear<=1; end /ear 信号用于产生或屏蔽声音 else begin sound<=sound+1; ear<=0; end e
6、nd always (posedge clk_2Hz) /由4Hz 的输入时钟产生1Hz 的时基信号 clk_1Hz<=clk_1Hz; always (posedge mode) /mode 信号控制系统在三种功能间转换 begin if(m=2) m<=0; else m<=m+1; end always (posedge turn) fm<=fm; always /该进程产生count1,count2,counta,countb 四个信号 begin case(m) 2: begin if(fm) begin count1<=change; LD_min,L
7、D_hour<=2; end else begin counta<=change; LD_min,LD_hour<=1; end count2,countb<=0; end 1: begin if(fm) begin count2<=change; LD_min,LD_hour<=2; end else begin countb<=change; LD_min,LD_hour<=1; end count1,counta<=2'b00; end default: count1,count2,counta,countb,LD_min,L
8、D_hour<=0; endcase end always (negedge clk) /如果长时间按下“change”键,则生成“num1”信号用于连续快速加1 if(count2) begin if(loop1=3) num1<=1; else begin loop1<=loop1+1; num1<=0; end end else begin loop1<=0; num1<=0; end always (negedge clk) /产生num2 信号 if(countb) begin if(loop2=3) num2<=1; else begin
9、loop2<=loop2+1; num2<=0; end end else begin loop2<=0; num2<=0; end always (negedge clk) if(count1) begin if(loop3=3) num3<=1; else begin loop3<=loop3+1; num3<=0; end end else begin loop3<=0; num3<=0; end always (negedge clk) if(counta) begin if(loop4=3) num4<=1; else be
10、gin loop4<=loop4+1; num4<=0; end end else begin loop4<=0; num4<=0; end assign ct1=(num3&clk)|(!num3&m_clk); /ct1 用于计时、校时中的分钟计数 assign ct2=(num1&clk)|(!num1&count2); /ct2 用于定时状态下调整分钟信号 assign cta=(num4&clk)|(!num4&h_clk); /cta 用于计时、校时中的小时计数 assign ctb=(num2&clk
11、)|(!num2&countb); /ctb 用于定时状态下调整小时信号 always (posedge clk_1Hz) /秒计时和秒调整进程 if(!(sec18'h59)|turn&(!m) begin sec1<=0; if(!(turn&(!m) minclk<=1; end /按住“turn”按键一段时间,秒信号可清零,该功能用于手动精确调时 else begin if(sec13:0=4'b1001) begin sec13:0<=4'b0000; sec17:4<=sec17:4+1; end else s
12、ec13:0<=sec13:0+1; minclk<=0; end assign m_clk=minclk|count1; always (posedge ct1) /分计时和分调整进程 begin if(min1=8'h59) begin min1<=0; hclk<=1; end else begin if(min13:0=9) begin min13:0<=0; min17:4<=min17:4+1; end else min13:0<=min13:0+1; hclk<=0; end end assign h_clk=hclk|co
13、unta; always (posedge cta) /小时计时和小时调整进程 if(hour1=8'h23) hour1<=0; else if(hour13:0=9) begin hour17:4<=hour17:4+1; hour13:0<=0; end else hour13:0<=hour13:0+1; always (posedge ct2) /闹钟定时功能中的分钟调节进程 if(amin=8'h59) amin<=0; else if(amin3:0=9) begin amin3:0<=0; amin7:4<=amin7:
14、4+1; end else amin3:0<=amin3:0+1; always (posedge ctb) /闹钟定时功能中的小时调节进程 if(ahour=8'h23) ahour<=0; else if(ahour3:0=9) begin ahour3:0<=0; ahour7:4<=ahour7:4+1; end else ahour3:0<=ahour3:0+1; always /闹铃功能 if(min1=amin)&&(hour1=ahour)&&(amin|ahour)&&(!change) /
15、若按住“change”键不放,可屏蔽闹铃音 if(sec1<8'h20) alert1<=1; /控制闹铃的时间长短 else alert1<=0; else alert1<=0; always /时、分、秒的显示控制 case(m) 3'b00: begin hour<=hour1; min<=min1; sec<=sec1; end /计时状态下的时、分、秒显示 3'b01: begin hour<=ahour; min<=amin; sec<=8'hzz; end /定时状态下的时、分、秒显示 3'b10: begin hour<=hour1; min<=min1; sec<=8'hzz; end /校时状态下的时、分、秒显示 endcase assign LD_alert=(ahour|amin)?1:0; /指示是否进行了闹铃定时 assign alert=(alert1)?clk_1k&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年九江市第一人民医院护士招聘考试题库及答案
- 大型超市生鲜商品季节性批量采购协议三篇
- 北师大版心理健康五年级下册 14.《我不生气》课件
- 2025-2026年辽宁省湘教版高三英语第六章语法考点冲刺练习
- 2026年广东省人教版八年级英语上册语法专项训练习题
- 2025-2026年福建高三物理选修3-6第一章核物理测试卷
- 2025-2026年黑龙江省苏教版高三政治第11课国际政治基础知识测试题
- 2025-2026年天津市人教版八年级生物第6章生物的遗传练习题
- 2025-2026年浙江省苏教版七年级数学第5章一元二次方程练习题及解析
- 2025-2026年九年级历史下册第四章世界现代史测试卷
- 部编版道法新教材四年级年级上册第一课第二课时《与班集体共成长、维护我们的班集体》教案
- 2026交投集团所属辽宁省高速公路运营管理有限责任公司操作岗招聘30人考试备考试题及答案详解
- 尼得科电机(大连)扩建项目环境影响评价报告表
- 《一个豆荚里的五粒豆》课件(第一课时)
- 感恩教师节主题班会
- 中国骨关节炎诊疗指南2024版下载
- 被执行人财产申报表(官方标准完整版)
- (2026秋新版)苏教版五年级数学上册全册教案
- 国网:2026电力现货市场交易机制详解
- 市政道路工程进度计划横道图
- 水泥路面灌缝施工方案
评论
0/150
提交评论