电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc

电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc

ID:56232368

大小:55.00 KB

页数:12页

时间:2020-06-03

电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc_第1页
电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc_第2页
电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc_第3页
电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc_第4页
电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc_第5页
资源描述:

《电子钟程序设计模块有时钟初始化模块、时钟工作模块.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、电子钟:程序的设计模块有:时钟初始化模块、时钟工作模块、时钟设置模块、闹钟设置模块、闰年的月份天数判断模块、数码管显示模块、闹钟铃声模块及其它的设置模块。程序使用8个输入分别与8个按键连接,用按键8对应时钟工作状态(work_state),当work_state为0时,时钟正常工作,当work_state为1时,进入时钟设置状态。按键7对应输入端口display_set控制时钟显示状态(display_state),每按2次(用于产生上升沿触发)则数码管的输出不同。Display_state与work_state相结合使用,以区分设置的参数。按键

2、6~4对应输入个脚in_set,该参数共有三位,用以表示三个状态:state_yorh (设置年或小时)、state_morm(设置月份或分钟)、 state_dors(设置日期或秒钟)。按键3~2对应数值设置端口up各down。Up用于产生上升沿触发,当down为0时,则每一个上升沿产生时,相应的参数加1,当down为1时,则每一个上升沿产生时,相应的参数减1。按键1与输入端口clock_on相连,用于闹钟的开与关,当 clock_on为1时开闹钟,否则关闹钟。扬声器与输出端口speaker相连,用于输出闹钟铃声。是用GW48教学实验箱仿真的 

3、、电子钟module clock(work_state,clock_on,clk_6MHz,clk_4Hz,in_set,display_set,clk_1024Hz,up,down,out1,out2,out3,out4,out5,out6,out7,out8,speaker);input work_state,clk_1024Hz,up,down,display_set,clk_6MHz,in_set,clock_on,clk_4Hz;output out1,out2,out3,out4,out5,out6,out7,out8,speaker

4、;wire[2:0] in_set;reg[3:0] out1,out2,out3,out4,out5,out6,out7,out8;reg[2:0] display_state;reg[7:0] hour,minute,second,year,month,day,day_max;reg[7:0] hour_set,minute_set,second_set,day_set,month_set,year_set,day_set_max;integer century=20;integer i=0;reg speaker;reg[7:0] cloc

5、k_hour,clock_minute,clock_second;reg[3:0] high,med,low;        reg[13:0] divider,origin;        reg[7:0] counter;        reg out;        wire carry;//*****各初始值设置时对应的状态********//parameter state_yorh=3'b100,    //设置年或小时对应的按键状态                  state_morm=3'b010,        //设置月或分对

6、应的按键状态                  state_dors=3'b001;        //设置日或秒对应的按键状态//***初始化时钟:08年08月08日00:00:00*****//initial        begin        year<=8;        year_set<=8;        month<=8;        month_set<=8;        day<=8;        day_set<=8;        hour<=0;        minute<=0;        second<

7、=0;        clock_hour<=0;        clock_minute<=0;        clock_second<=0;        display_state<=0;        end                //******电子钟正常工作状态下/work_state等于0时,时钟处于工作状态*******//always @(posedge clk_1024Hz)         //频率选择1024HZ        begin        if(i>=1023)                beg

8、in                i<=0;                if(work_state)               

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。