EDA花样流水灯.分析和总结.docxVIP

  • 12
  • 0
  • 约8.1千字
  • 约 16页
  • 2023-03-09 发布于湖北
  • 举报
电子电气工程系教学单位学生学号编 号 电子电气工程系 综合课程设计 题 目 基于 Quartus II 6.0 的 花样流水灯的设计 学生姓名 专业名称 , 指导教师 2013 年 6 月 24 日 基于 Quartus II 6.0 的花样流水灯的设计 随着 EDA 技术发展和应用领域的扩大与深入,EDA 技术在电子信息、通讯、自动控制及计算机应用等领域的重要性突出。随着技术市场与人才市场对 EDA 的需求不断提高,产品的市场需求和技术市场的要求也必然会反映到教学领域和科研领域中来。因此学好EDA 技术对我们有很大的益处。EDA 是指以计算机为工具,在EDA 软件平台上,根据设计社描述的源文件(原理图文件、硬件描述语言文件或波形图文件),自动完成系统的设计,包括编译、仿真、优化、综合、适配(或布局布线)以及下载。 流水灯是一串按一定的规律像流水一样连续闪亮,流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。流水灯控制可用多种方法实现,但对现代可编程控制器而言,基于 EDA 技术的流水灯设计也是很普遍的。 设计目的 学习使用 EDA 集成设计软件 Quartus II,电路描述,综合,模拟过程 了解基于 EDA 应用系统的设计方法 掌握使用 EDA 工具设计流水灯的设计思路和设计方法 熟练使用 Quartus II 对实验程序进行改错,调试以及演示现象 设计说明 此次实验要求我们通过学习的 EDA 课程,来编制 VHDL 程序,以及使用这些程序代码来显示我们所要求的结果。 流水灯设计是由八只 LED 显示灯来实现的,通过程序代码来控制这八只灯的亮灭,在实验初期,我们首先得编程 序,通过我们上课所学的基础知识,再结合近段时间去图书馆查阅的有关参考书籍,以及网上所搜索的相关知识,我们小组共同完成了程序的编制,程序代码在下面有详细介绍。 其次,我们需要掌握 QuartusII 的用法,因为要求的现象是通过这个软件实现的,在 EDA 实验课程中老师有详细介绍 QuartusII 的使用方法,所以在这一阶段对我们来说也比较得心应手,安装,调试,然后将编好的程序输入,在此过程中我们遇到了点小困难,显示程序有错误,但是通过我们集体的努力,终于发现, 是因为在操作时,我们应该先创建自己的文件夹,然后统一存放在一起,而我们存放的地方有误,所以显示不出我们所输入的代码。 当所有的这一切准备工作做完后就是该演示现象了,8 只 LED 显示灯能被控制其亮灭,会显示想流水一样的灯光。 程序设计 3.1 library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY first IS PORT ( clk : rst : IN std_logic; IN std_logic; c : OUT std_logic_vector(7 DOWNTO 0) ); END first; ARCHITECTURE arch OF first IS CONSTANT state0 : std_logic_vector(2 DOWNTO 0) := 000; CONSTANT state1 : std_logic_vector(2 DOWNTO 0) := 001; CONSTANT state2 : std_logic_vector(2 DOWNTO 0) := 010; CONSTANT state3 : std_logic_vector(2 DOWNTO 0) := 011; CONSTANT state4 : std_logic_vector(2 DOWNTO 0) := 100; CONSTANT state5 : std_logic_vector(2 DOWNTO 0) := 101; CONSTANT state6 : std_logic_vector(2 DOWNTO 0) := 110; CONSTANT state7 : std_logic_vector(2 DOWNTO 0) := 111; SIGNAL state : std_logic_vector(2 DOWNTO 0); SIGNAL cnt : std_logic_vector(2 DOWNTO 0); BEGIN PROCESS(clk,rst) BEGIN IF (NOT rst = 1) THEN state = state0; cnt = 000; ELSIF(clkEVENT AND clk=1)THEN cnt = cnt + 001; IF (cnt = 111) THEN CASE

文档评论(0)

1亿VIP精品文档

相关文档