电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数字电路时钟设计verilog语言编写VIP免费

数字电路时钟设计verilog语言编写_第1页
数字电路时钟设计verilog语言编写_第2页
数字电路时钟设计verilog语言编写_第3页
电子线路设计与测试实验报告一、实验名称多功能数字钟设计二、实验目的1.掌握可编程逻辑器件的应用开发技术——设计输入、编译、仿真和器件编程;2.熟悉一种EDA软件使用;3.掌握Verilog设计方法;4.掌握分模块分层次的设计方法;5.用Verilog完成一个多功能数字钟设计。三、设计内容及要求1.基本功能?具有“秒”、“分”、“时”计时功能,小时按24小时制计时。?具有校时功能,能对“分”和“小时”进行调整。2.扩展功能?仿广播电台正点报时。在59分51秒、53秒、55秒、57秒发出低音512Hz信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点。?定时控制,其时间为23时58分。3.选做内容?任意时刻闹钟(闹钟时间可设置)。?自动报整点时数。四.系统框图与说明数字钟框图1.数字钟电路系统由主体电路和扩展电路两大部分所组成。2.秒计数器计满60后向分计数器进位,分计数器计满60后向小时计数器进位,小时计数器按照“24进制”规律计数。3.计数器的输出经译码器送显示器。五.设计步骤1.列写多功能数字钟设计--层次结构图多功能数字钟顶层模块(clock_main.v)小时计数器(counter24.v)分钟计数器(counter60.v)秒钟计数器(counter60.v)6进制计数器(counter6.v)10进制计数器(counter10.v)6进制计数器(counter6.v)10进制计数器(counter10.v)分频模块(fre_divider.v)固定时刻闹钟设定校时模块任意时刻闹钟(setclock.v)整点报时模块(baoshi.v)2.拟定数字钟的组成框图,在Max+PlusII软件中,使用Verilog语言输入,采用分层次分模块的方法设计电路;3.设计各单元电路并进行仿真;4.对数字钟的整体逻辑电路图,选择器件,分配引脚,进行逻辑综合;5.下载到CycloneIIFPGA实验平台上,实际测试数字钟的逻辑功能。六.Verilog代码//24进制时钟,具有计时、校时、仿广播电台正点报时、固定时刻定时,任意时刻闹钟等功能moduleclock_main(LED_Hour,LED_Minute,LED_Second,Alarm,CP_1KHz,Jsh_Min_key,Jsh_Hour_key,Set_Hour_key,Set_Min_key,Show,Ctrl_Bell);inputCP_1KHz;//定义输入时钟inputJsh_Min_key,Jsh_Hour_key;//定义校时按键inputSet_Hour_key,Set_Min_key;//定义闹钟定时按键inputShow;//定义显示模式按键inputCtrl_Bell;//定义闹钟铃声控制output[7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量wire[7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量类型wire[7:0]Hour,Minute,Second;wire[7:0]Set_Hour_Out,Set_Min_Out;wireOut_1Hz,Out_500Hz;//定义分频模块输出变量类型regAlarm_Ring,Alarm_Clock_1KHz;//定义仿广播电台报时和固定时刻定时铃声outputAlarm;//蜂鸣器输入supply1Vdd;wireAlarm_Clock;//任意时刻闹钟闹铃wireMinL_EN,MinH_EN,Hour_EN;//定义中间变量类型//分频fre_dividerFD0(Out_1Hz,Out_500Hz,Vdd,Vdd,CP_1KHz);//正常计时counter10U1(.Q(Second[3:0]),.nCR(Vdd),.EN(Vdd),.CP(Out_1Hz));counter6U2(.Q(Second[7:4]),.nCR(Vdd),.EN(Second[3:0]==4'h9),.CP(Out_1Hz));assignMinL_EN=Jsh_Min_key?Vdd:(Second==8'h59);assignMinH_EN=(Jsh_Min_key&&(Minute[3:0]==4'h9))||(Minute[3:0]==4'h9)&&(Second==8'h59);counter10U3(.Q(Minute[3:0]),.nCR(Vdd),.EN(MinL_EN),.CP(Out_1Hz));counter6U4(.Q(Minute[7:4]),.nCR(Vdd),.EN(MinH_EN),.CP(Out_1Hz));assignHour_EN=Jsh_Hour_key?Vdd:((Minute==8'h59)&&(Second==8'h59));counter24U5(Hour[7:4],Hour[3:0],Vdd,Hour_EN,Out_1Hz);//仿广播电台正点报时baoshiBS1(Alarm_Ring,Minute,Second,Out_500Hz,CP_1KHz);//在59分51秒、53秒、55秒、57秒发出低音512Hz信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点//固定时刻定时always@(HourorMinuteorSecond)//所定时刻为23时58分,蜂鸣器发出低音1KHz信号,持续5秒钟if(Hour==8'h23&Minute==8'h58)case(Second)8'h00,8'h01,8'h02,8'h03,8'h04:Alarm_Clock_1KHz=CP_1KHz;defaultAlarm_Clock_1KHz=1'b0;endcaseelseAlarm_Clock_1KHz=1'b0;//任意时刻闹钟setclockSC1(Alarm_Cl...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

爱的疯狂+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部