文档详情

EDA实验报告.doc

发布:2017-02-13约8.29千字共9页下载文档
文本预览下载声明
EDA课程实验报告 ——LED流水灯及数码管动态显示设计 姓名:周维 院系:电子信息工程 指导教师:张敏 学号:090250130 2012年5月20日 实验一 LED流水灯设计 一、实验目的: 掌握对LED的控制及流水灯的实现、锻炼VHDL语言的分析和使用能力。学会对实验板上的FPGA进行编程下载,硬件验证自己的设计项目。 二、实验要求 1.使用VHDL语言及Quartus软件实现LED流水灯的软件仿真,要实现前六位LED根据自己意愿闪烁; 2.对照FPGA开发板的原理图,将编好的程序下载到开发板上,对之前写好的程序进行验证。 三、实验原理 下图为FPGA开发板上对应LED的原理图: 如图所示,若想控制LED的亮灭只需将对应的LED的管脚置低电平,若用软件实现则要将6位LED定义为6位的地址,各个状态延时切换即可。 四、实验步骤 1.建立工程文件,设计程序使六位流水灯来回滚动(程序在报告后面); 2.对写好的程序进行编译排错; 3.选好开发板上得芯片驱动,对照电路原理图对工程分配管脚,设置JTAG口选好需要下载的文件; 各LED对应的管脚号如下: LED0~PIN113 LED1~PIN114 LED2~PIN115 LED3~PIN116 LED4~PIN117 LED5~PIN118 4.连接好JTAG下载器,为开发板供电,将程序载入开发板观察。 五、验证结果 可以看见开发板上六位LED来回滚动的效果,实现了预期的功能。 六、实验程序 library ieee; use IEEE.STD_LOGIC_1164.ALL; use IEEE.std_logic_unsigned.ALL; entity LED is port( clk:in STD_LOGIC; led1:out STD_LOGIC_VECTOR(5 DOWNTO 0)); end LED; architecture light of LED is signal clk1,clk2:std_logic; begin ------------------------------------------------------------------------------------------------------- P1:process(clk) --产生一个对clk延时的时钟clk1 variable count:integer range 0 to 999999; begin if clkevent and clk=1 then if count=499999 then clk1=0; count:=count+1; elsif count=499999 and count=999999 then clk1=1; count:=count+1; else count:=0;
显示全部
相似文档