LED驱动.docx
《LED驱动.docx》由会员分享,可在线阅读,更多相关《LED驱动.docx(10页珍藏版)》请在冰豆网上搜索。
![LED驱动.docx](https://file1.bdocx.com/fileroot1/2023-1/4/68435800-8648-40ce-a0d7-741f8b18ae04/68435800-8648-40ce-a0d7-741f8b18ae041.gif)
LED驱动
目录
一.实验目的3
二.实验内容3
三.实验原理3
四.实验步骤4
五.实验结果10
六.心得体会13
七.参考文献14
八.评分表15
一实验目的
1.熟悉并了解Quartus11开发软件的操作过程.
2.熟练掌握Quartus11开发软件的应用.
3.通过利用Quartus11完成LED驱动的实验,检验是否掌握了Quartus11开发软件.
二.实验内容
本实验的内容是建立可用控制LED亮/灭的简单硬件电路,要求控制18个LED灯实现以下功能:
1.从两边往中间逐个亮:
全灭;
2.从中间往两边逐个亮:
全灭;
3.循环执行上述过程;
三.实验原理
FPGA器件同单片机一样为用户提供了许多灵活独立的输入/输出I/O口。
FPGA每个I/O口可以配置为输入、输出、双向I/O、集电极开路和三态门等各种组态。
做输出口时FPGA的I/O口可以吸收最大为24mA的电流可以直接驱动发光二极管LED等器件。
所以只要正确分配并锁定引脚后在相应的引脚上输出低电平“0”就可实现点亮该发光二极管的功能。
四.实验步骤
1、使用QuartusⅡ建立工程
(1)打开QuartusⅡ软件并建立工程①打开QuartusⅡ软件软件界面如图所示。
下图中第一栏用于指定工程所在的工作库文件夹
第二栏用于指定工程名,工程名可以取任何名字,也可以直接用顶层文件的实体名作为工程名。
第三栏用于至顶层文件的实体名。
单击Next进入图所示对话框。
由于是新建工程暂无输入文件。
单击Next进入下图所示对话框。
该对话框中指定目标器件,这里我们选择的是QuickSOPC核心板上用的ACEXK系列的
EP1COUT1C100-3
单击Next进入图所示对话框。
从对话框中,可以看到工程文件配置信息报告。
单击Finish完成新建工程的建立。
(2)建立图形设计文件
1在QuartusⅡ主界面中,选择FileNew打开如图所示对话框。
2在图所示的对话框中选择BlockDiagram/SchematicFile,单击OK建立一个空的图形设计文件默认名为Block1.bdf。
3在QuartusⅡ主界面中选择FileSaveAs打开将BDF文件存盘的对话框如图所示。
在该对话框中接受默认的文件名,并选中Addfiletocurrentproject选项,使该文件添加到工程中。
至此,便完成了顶层模块的建立。
2、QuartusⅡ工程设计
1在VerilogHDL文件中编写源程序在新建VerilogHDL源程序文件输入程序代码并保存。
程序的模块名应与文件名一致,对该VerilogHDL文件进行编辑预处理,具体操作如下
1如图所示,在QuartusⅡ主界面的ProjectNavigator窗口中选择File,右键单击led.v文件,在弹出的快捷菜单中单击SetatTop-levelEntity选项,将led.v设置为顶层实体
②在QuartusⅡ主界面中选择ProcessingStartStartAnalysis&Synthesis进行综合编译。
3、设置编译选项并编译硬件系统
(1).设置编译选项在下图左边框中选择相应的设置选项进行设置。
本实验采用默认的编译设置,不进行任何修改。
(2).编译硬件系统①如图所示,在ProjectNavigator窗口中选择File,右键单击led_test.bdf文件,在弹出的快捷菜单中单击SetatTop-levelEntity选项,将led_test.bdf设置为顶层实体②在QuartusⅡ主界面下,选择ProcessingStartCompilation进行全程编译,也可以选择工具栏上的启动编译。
若在编译过程中发现错误,找出并更正错误,直至编译成功为止。
编译结果显示在CompilationReport窗口中。
(3)查看编译报告编译结束后对话框显示消息“Fullcompilationwassuccessful”,单击OK进入CompilationReport窗口,如图所示。
五.实验结果
1.进行以上操作后,对程序进行RTL操作.
得到以下图:
2.波形仿真
(1)选择菜单field——new,再选择OtherFiles页面中的VectorWaveformFile.
(2)选择菜单view_utilitywindowsnodefinder,得到波形编辑窗口.
3.
(1)给输出赋值
(2)保存赋值后的图形
(3)选择菜单processing_startsimulation进行仿真
六.心得体会
1.画原理图时,如果想让两根没有连接在一起的线连接起来,不仅可以用引线,还可以分别单击两根线,使它突出显示,然后就可以输入相同的标号。
比如,想让74374的D1脚跟74248的A脚连接起来,就可以分别在
两脚上引出一段线,然后,分别单击,使线突出显示,然后分别输入“q[0]”,然后回车,那么,在编译的时候,QUARTUSII就会认为它们是连接起来了的。
同理,如果想让一根总线跟74374的D0~~D7的8根引脚连接起来的话,也可以使用同样的方法:
在D0处单击输入q[0]、在D1处单击输入q[1]、在D2处......D7输入q[7]。
然后在总线处单击输入q[7..0],那么,编译时就会认为它们是连接了的。
2.画顶层原理图的时候,要在“Project”下的“Add/RemoveFilesinProject”中加入需要的低层.bdf文件,这样编译就不会出错了。
3.画好原理图后,想要进行仿真的话,创建.vwf文件后,可以先进行忽略信号间的延时的Functional仿真,然后点击“GenerateFunctionalSimulationNetlist”,然后把“OverwriteSimulationInputFilewithSimulationresults”前面的“V”选上。
然后点击“Start”就OK了。
4.最后就是多练练.
七.参考文献
【1】王金明,数字系统设计与VerilogHDL(第三版).电子出版社,2009
【2】王金明,周顺,数字系统设计与VerilogHDL(第三版).北京:
电子出版社,2010
【3】ActelCorporation.ActelHDLCondingStyleGuide