FPGA课程设计.ppt

FPGA课程设计.ppt

ID:48769247

大小:281.00 KB

页数:39页

时间:2020-01-22

FPGA课程设计.ppt_第1页
FPGA课程设计.ppt_第2页
FPGA课程设计.ppt_第3页
FPGA课程设计.ppt_第4页
FPGA课程设计.ppt_第5页
资源描述:

《FPGA课程设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、FPGA课程设计设计题目多功能电子钟具体功能:1.将sett开关键置1,用开关键key_00~key_99进行输入设置,分别对应0~9个数字,将ttimee开关键置1,实现时间更新,将alarmm开关键置1,实现闹钟设置,同时有效(补充的)。2.resett开关键置1时,闹钟响铃有效,否则无效,即可以关闭闹铃(补充的)。3.显示功能:—sett有效时输入数显示,sett键置1四分钟回到计时显示界面—sett无效时,将开关alarmm置1,界面显示闹钟的时间开关键说明所有开关键都是置1有效,置0无效,开关键置1后

2、若不需要与其它键共同作用,置1后需要回置0,以保证下次可用。模块剖析时钟模块div_1khz:50mhz分频得到1khzmodulediv_1khz(clk_50mhz,clk_1khz);inputclk_50mhz;outputclk_1khz;regclk_1khz;reg[14:0]cout;always@(posedgeclk_50mhz)beginif(cout==27499)//半周期计数beginclk_1khz<=~clk_1khz;cout<=0;endelsecout<=cout+1;en

3、dendmodule时钟模块div_1hz:1khz分频得到1hzmodulediv_1hz(clk_1khz,clk_1hz);inputclk_1khz;outputclk_1hz;regclk_1hz;reg[8:0]count;always@(posedgeclk_1khz)beginif(count==499)//半周期计数beginclk_1hz<=~clk_1hz;count<=0;endelsecount<=count+1;endendmodule时钟模块timer:计时,包括对时间更新modu

4、letimer(clk_1hz,time3,set,ttime,time2);inputclk_1hz,set,ttime;input[11:0]time3;output[11:0]time2;reg[11:0]time2;reg[5:0]s,m;reg[4:0]h;always@(posedgeclk_1hz)beginif(set&&ttime)//时间更新begins=0;m=time3%100;h=time3/100;endif(s<59)//时间计时从秒到分到时s=s+1;elseif(s==59)b

5、egins=0;if(m<59)m=m+1;elseif(m==59)beginm=0;if(h<23)h=h+1;elseif(h==23)h=0;endendtime2=h*100+m;//将时间转换成十进制数输出,只是为了理解方便endendmodule功能仿真时序仿真时钟模块setting:时间和闹钟设置modulesetting(set,alarm,ttime,set_data,time1,time3);inputset,alarm,ttime;input[11:0]set_data;output[1

6、1:0]time1,time3;reg[11:0]time1,time3;always@(posedgealarm)//时钟设置有效beginif(set)time1<=set_data;endalways@(posedgettime)//时间更新有效beginif(set)time3<=set_data;endendmodule功能仿真时序仿真时钟模块choose:选择显示缺点:设置完成后按了确认键,回到显示界面,若确认键先返回无效状态时显示界面又会显示刚设置的数,再拨回set键后才会又回到计时显示界面,但若

7、先拨回set键则不会出现此现象modulechoose(set,alarm,clk_1khz,clk_1hz,time1,time2,set_data,data);inputalarm,set,clk_1khz,clk_1hz;input[11:0]time1,time2,set_data;output[11:0]data;reg[11:0]data;reg[7:0]counter;always@(posedgeclk_1khz)beginif(set)beginif(alarm)data<=time2;els

8、eif(counter<240)data<=set_data;elsebegindata<=time2;end//2分钟后显示无效endelseif(alarm)data<=time1;elsebegindata<=time2;endend//从设置数开始四分钟后没有按任//何确认键,回到计时显示界面,而实际若//要设置一个时间一般是不会超过4分钟的always@(posedgeclk

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

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

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