课程设计流水灯报告.docx
- 文档编号:5621555
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:10
- 大小:204.37KB
课程设计流水灯报告.docx
《课程设计流水灯报告.docx》由会员分享,可在线阅读,更多相关《课程设计流水灯报告.docx(10页珍藏版)》请在冰豆网上搜索。
课程设计流水灯报告
大规模数字电路课程设计
设计题目:
流水灯设计
专业:
电子信息科学与技术
班级:
电信092
学号:
3
*******
设计时间:
2011-2012学年上学期
教师评分:
2011年12月12日
一、实验目的:
1.熟悉利用Quartus
开发数字电路的基本流程和Quartus
软件的相关操作;
2.掌握基本的设计思路,软件环境参数配置,仿真,管脚分配,利用JTAG/AS进行下载的基本操作;
3.了解VerilogHDL语言设计或原理图色剂方法。
二、设计内容
使LED成流水的方式,在不同的状态中间进行转换,本设计中主要是让LED显示灯按照不同时间间断来显示,首先按0.5秒,其次是1秒,然后是1.5秒,最后是2秒,通过这样的间隔来使LED按流水方式显示并循环。
三、实验用到的软件和器材
软件:
QuartusII软件
硬件:
实验开发板,计算机
四、实验步骤
1.模块以及程序结构的整体构思;
2.对程序结构进行分析,并确定设计方案;
3.进行程序编写并修改;
4.调试程序并在开发板上进行实验;
5.对实验过程中的重要步骤和实验结果进行截图;
6.写出设计报告。
五、程序源代码
分频器部分:
//分频器部分,获得便于试验观察的时钟信号
moduleclk_div(clk_out,clk_in);
inputclk_in;
outputclk_out;
regclk_out;
reg[25:
0]counter;//50_000_000=1011_1110_1011_1100_0010_0000_00
parametercnt=25_000_000;///50MHzisthesysclk,50_000_000=2FAF080
always@(posedgeclk_in)
begin
counter<=counter+1;
if(counter==cnt/2-1)
begin
clk_out<=!
clk_out;
counter<=0;
end
end
endmodule
主程序部分:
moduleLED(clk,
led
);
inputclk;
output[7:
0]led;//输出端口定义为寄存器型
reg[7:
0]led;
reg[8:
0]state;
always@(posedgeclk)//always语句,表示每当CLK的上升沿到来时,完成begin-end之间语句的操作
beginstate=state+1;//oneclk,onestate
if(state<1)
led<=8'b;//the1ststate,7ledon,onedark
elseif(state<2)
led<=8'b;//the2ndone
elseif(state<3)
led<=8'b;
elseif(state<4)
led<=8'b;
elseif(state<5)
led<=8'b;
elseif(state<6)
led<=8'b;
elseif(state<7)
led<=8'b;
elseif(state<8)
led<=8'b;
elseif(state<9)
led<=8'b;
elseif(state<10)
led<=8'b;
elseif(state<11)
led<=8'b;
elseif(state<12)
led<=8'b;
elseif(state<13)
led<=8'b;
elseif(state<14)
led<=8'b;
elseif(state<15)
led<=8'b;
elseif(state<20)
led<=8'b;//the1ststate,7ledon,onedark
elseif(state<22)
led<=8'b;//the2ndone
elseif(state<24)
led<=8'b;
elseif(state<26)
led<=8'b;
elseif(state<28)
led<=8'b;
elseif(state<30)
led<=8'b;
elseif(state<32)
led<=8'b;
elseif(state<34)
led<=8'b;
elseif(state<36)
led<=8'b;
elseif(state<38)
led<=8'b;
elseif(state<40)
led<=8'b;
elseif(state<42)
led<=8'b;
elseif(state<44)
led<=8'b;
elseif(state<46)
led<=8'b;
elseif(state<48)
led<=8'b;
elseif(state<53)
led<=8'b;//the1ststate,7ledon,onedark
elseif(state<56)
led<=8'b;//the2ndone
elseif(state<59)
led<=8'b;
elseif(state<62)
led<=8'b;
elseif(state<65)
led<=8'b;
elseif(state<68)
led<=8'b;
elseif(state<71)
led<=8'b;
elseif(state<74)
led<=8'b;
elseif(state<77)
led<=8'b;
elseif(state<80)
led<=8'b;
elseif(state<83)
led<=8'b;
elseif(state<86)
led<=8'b;
elseif(state<89)
led<=8'b;
elseif(state<92)
led<=8'b;
elseif(state<95)
led<=8'b;
elseif(state<101)
led<=8'b;//the1ststate,7ledon,onedark
elseif(state<105)
led<=8'b;//the2ndone
elseif(state<109)
led<=8'b;
elseif(state<113)
led<=8'b;
elseif(state<117)
led<=8'b;
elseif(state<121)
led<=8'b;
elseif(state<125)
led<=8'b;
elseif(state<129)
led<=8'b;
elseif(state<133)
led<=8'b;
elseif(state<137)
led<=8'b;
elseif(state<141)
led<=8'b;
elseif(state<145)
led<=8'b;
elseif(state<149)
led<=8'b;
elseif(state<153)
led<=8'b;
elseif(state<157)
led<=8'b;
elsestate=0;//default,8'b
end
endmodule
六、调试结果及分析
1.在线调试:
2.管脚分配
3.分频器:
4.主程序:
七、设计总结与体会
1.总结
verilogHDL设计语言是一门很好的硬件描述语言,可以直白的描述实际的电路,实际的系统模型,容易理解而且易于实现。
我觉得在以后多加练习,可以对以后的学习和工作带来更大大的帮助。
这次课程设计就是对我们的一次考核,也可以说是一次考验,在平时做题目比较简单,而这次课程设计综合考核了我们的学习结果。
2.心得体会
经过这次课程设计,我们从理论到实践,使我有了更进一步的认识和了解。
而且通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。
在这次设计过程中,我遇到了很多问题,不过这也只能说明我对知识的理解不够深刻,所以我在编写程序的时候也不断地通过看课本,上网查资料,还有询问同学,最后才完成。
不过在以后的学习过程中,我会更加的努力,不断地提高自己的能力,让自己以后有更美好的前景。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 流水 报告