数电实验数字钟上机报告华科

上传人:仙*** 文档编号:34497063 上传时间:2021-10-21 格式:DOC 页数:8 大小:72.50KB
收藏 版权申诉 举报 下载
数电实验数字钟上机报告华科_第1页
第1页 / 共8页
数电实验数字钟上机报告华科_第2页
第2页 / 共8页
数电实验数字钟上机报告华科_第3页
第3页 / 共8页
资源描述:

《数电实验数字钟上机报告华科》由会员分享,可在线阅读,更多相关《数电实验数字钟上机报告华科(8页珍藏版)》请在装配图网上搜索。

1、MAX+Plus II多功能数字钟设计 自动化1001班 刘杰 学号 U200914402多功能数字钟设计一、实验目的1. 掌握可编程逻辑器件的应用开发技术设计输入、编译、仿真和器件编程;2. 熟悉一种EDA软件使用;3. 掌握Verilog设计方法;二、实验任务1. 已知条件MAX+Plus II软件FPGA实验开发装置(该装置可以提供3路时钟信号和译码显示电路)基本功能具有“秒”、“分”、“时”计时功能,小时按24小时制计时。具有校时功能,能对“分”和“小时”进行调整2. 扩展功能仿广播电台正点报时。在59分51秒、53秒、55秒、57秒、59秒发出音响结束时刻为整点。 定时控制,其时间自

2、定;3. 选做内容任意时刻闹钟自动报整点时数小时计数器改为12翻13、 数字钟设计分析-功能框图4、 设计编译 1. 设计输入module top_clock (Second,ap,CP,nCR,EN,Adj_Min,Adj_Hour,ctrlbell,sethrkey,setminkey,alarm,_1khz,_500hz,rhr,rmin); input CP,nCR,EN,Adj_Min,Adj_Hour,ctrlbell,_1khz,_500hz,sethrkey,setminkey; output7:0 rhr,rmin,Second; output alarm; wire7:0

3、set_hr,set_min,Hour,Minute; wire alarm_clock,alarm_r,alarm_r1; wire _1khz,_500hz,CP; output ap; reg7:0 rhr,rmin,Second; supply1 Vdd; wire MinL_EN,MinH_EN,Hour_EN,Ap; wire hrh_equ,hrl_equ,minh_equ,minl_equ; wire time_equ; /Hour:Minute:Second counter counter10 U1(Second3:0,nCR,EN,CP); counter6 U2(Seco

4、nd7:4,nCR,(Second3:0=4h9),CP); assign MinL_EN=Adj_Min?Vdd:(Second=8h59); assign MinH_EN=(Adj_Min&(Minute3:0=4h9)|(Minute3:0=4h9)&(Second=8h59); counter10 U3(Minute3:0,nCR,MinL_EN,CP); counter6 U4(Minute7:4,nCR,MinH_EN,CP); assign Hour_EN=Adj_Hour?Vdd:(Minute=8h59)&(Second=8h59); counter24 U5(Hour7:4

5、,Hour3:0,nCR,Hour_EN,CP,Ap);/若闹钟调整使能端开启,数码管显示闹铃设置时间,反之显示时钟时间。 /*always (setminkey or sethrkey) case(setminkey,sethrkey)2b11:begin rmin7:0=set_min7:0;rhr7:0=set_hr7:0; end2b10:begin rmin7:0=set_min7:0;rhr7:0=Hour7:0;end2b01:begin rmin7:0=Minute7:0;rhr7:0=set_hr7:0;end2b00:begin rmin7:0=Minute7:0;rhr7

6、:0=Hour7:0;end endcase*/ /选择类型1always (posedge CP) if(setminkey) rmin7:0=set_min7:0; else rmin7:0=Minute7:0; always (posedge CP) if (sethrkey) rhr7:0=set_hr7:0; else rhr7:0=Hour7:0;/或者选择类型2counter10 UC0(set_min3:0,Vdd,setminkey,CP); counter6 UC1(set_min7:4,Vdd,(set_min3:0=4h9),CP);counter24 SU2(set_

7、hr7:4,set_hr3:0,Vdd,sethrkey,CP,ap);/comparate the set timecomparator SU4(hrh_equ,set_hr7:4,Hour7:4);comparator SU5(hrl_equ,set_hr3:0,Hour3:0);comparator SU6(minh_equ,set_min7:4,Minute7:4);comparator SU7(minl_equ,set_min3:0,Minute3:0);assign time_equ=(hrh_equ & hrl_equ & minh_equ & minl_equ);assign

8、alarm_clock=ctrlbell?(time_equ&_500hz):1b0; ring U7(alarm_r,Minute,Second,_1khz,_500hz);/仿广播电台正点报时 ring1 U8(alarm_r1,Minute,Hour,Second,_500hz);/自动报整点时数assign alarm=alarm_r|alarm_r1|alarm_clock ; /将闹钟、报时全部归于扬声器输出端endmodulemodule counter10(Q,nCR,EN,CP); input CP,nCR,EN; output3:0Q; reg 3:0 Q; always(

9、posedge CP or negedge nCR) begin if(nCR)Q=4b0000; else if(EN) Q=Q; else if(Q=4b1001)Q= 4b0000; else Q=Q+1b1; endendmodulemodule counter6(Q,nCR,EN,CP); input CP,nCR,EN; output3:0Q; reg 3:0Q;always (posedge CP or negedge nCR) begin if(nCR) Q=4b0000; else if(EN) Q=Q; else if(Q=4b0101) Q=4b0000; else Q=

10、Q+1b1; endendmodule module counter24(CntH,CntL,nCR,EN,CP,ap); input CP,nCR,EN; output3:0CntH,CntL; output ap;reg 3:0CntH,CntL;reg ap; reg CO;always(posedge CP or negedge nCR)begin if(nCR) begin CntH,CntL=8b00010010; ap=1b0;end else if(EN)begin CntH,CntL=CntH,CntL;ap1)|(CntL9)|(CntH=1)&(CntL=2) begin

11、 CntH=4b0000; CntL=4b0001;ap=(ap); end else if(CntH=1)&(CntL2) begin CntH=CntH; CntL=CntL+1b1;end else if(CntL=9) begin CntH=CntH+1b1; CntL=4b0000;end else begin CntH=CntH; CntL=CntL+1b1;endendendmodulemodule comparator(equ,a,b);input 3:0a,b;output equ;assign equ=(a=b);endmodule/电台报时module ring(alar

12、m_r,minute,second,_1khz,_500hz);input _1khz,_500hz;wire _1khz,_500hz;input 7:0minute,second;output alarm_r;reg alarm_r;always (minute or second)if(minute=8h59)case(second)8h51:alarm_r=_500hz;8h53:alarm_r=_500hz;8h55:alarm_r=_500hz;8h57:alarm_r=_500hz;8h59:alarm_r=_1khz;default:alarm_r=1b0;endcaseels

13、e alarm_r=1b0;endmodule/整点报时module ring1(alarm_r1,minute,hour,second,_500hz);input _500hz;wire _500hz;input 7:0minute,second,hour;output alarm_r1;reg alarm_r1;always (hour or minute or second)if(minute=8h00)assign alarm_r1=(second=8h01)|(second=8h03)|(second=8h05)|(second=8h07)|(second=8h09)|(second

14、=8h11)|(second=8h13)|(second=8h15)|(second=8h17)|(second=8h19)|(second=8h21)|(second=8h23)&_500hz&(second(hour*2);endmodule 2. 电路仿真图为起始设置闹钟,由图可得出闹铃设为1h1min处, 并能观察出电路仿真自动报整点时数.在设置闹铃后,可分辨观察到仿广播电台正点报时、自动报整点时数5 实验心得1. 该课程设计所设计的各种模块和原理与数字电子技术的理论知识紧密结合。所以这样与课本知识关联紧的课程实际比较容易完成,同时不仅加强了对书本基础知识的理解,而且实践环节得到了很好的锻炼,能够激发实践者对数字电子实验的兴趣甚至能够自己动手完成一些课题项目。2. 学习使用软件,可以方便轻松的解决一些复杂电路的问题,可是说是书本知识的具体实际话。3. 课程设计的多样化可以开发思维,鼓励创新,同时也检验了自己对所学知识的牢固性,没有扎实的理论知识基础是不可能有自己的设计方案的,所以我们以后应该学好理论知识,才能创造出我们自己感兴趣的设计和作品。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!