EDA技术:实验10-彩灯控制器设计与实现
- 格式:ppt
- 大小:378.50 KB
- 文档页数:20
彩灯控制器一、设计内容及要求:设计一个彩灯控制器,要求:1.四路彩灯从左向右逐次渐亮,间隔为1秒。
2.四路彩灯从右向左逐次渐灭,间隔为1秒。
3.四路彩灯同时点亮,时间间隔为1秒,然后同时变暗,时间为1秒,反复4次。
二、总体框图图(1)总体框图根据设计要求,电路设计大体思路如下:由脉冲发生器发出频率脉冲信号,利用计数器加法计数功能输出0000~1111的脉冲信号,经过数据选择器分别在0000~0011,0100~0111,1000~1111三个时段输出不同的高低电平,控制移位寄存器实现右移→左移→置数功能,从而控制彩灯按照设计要求实现亮灭。
三、选择器件本次课程设计所用器件如表一:表一本次课程设计所用器件1.同步二进制计数器74LS163表二7-3 74LS163功能表根据逻辑图、波形图、功能表分析,74LS163具有如下功能:管脚图逻辑符号1)1是同步4位二进制加法计数器,M=16,CP上升沿触发2)2既可同步清除,也可异步清除。
同步清除时,清除信号的低电平将在下一个CP上升沿配合下把四个触发器的输出置为低电平。
异步清除时,直接用清除信号的低电平把四个触发器的输出置为低电平。
3)3同步预置方式:当LD = 0时,在CP作用下,计数器可并行打入预置数据.当LD = 1时,使能输入PT同时为高电平,在CP作用下,进行正常计数。
4)PT任一为低时,计数器处于保持状态。
5) 5 CO为进位输出,可用来级联成n位同步计数器。
2.四位双向移位寄存器74LS19474LS194内部原理图74LS194四位双向移位寄存器具有左移、右移、并行数据输入、保持、清除功能。
1)从图1中74LS194的图形符号和引脚图分析。
SRG4是4位移位寄存器符号,D0~D3并行数据输入端、D SL左移串行数据输入端、D SR右移串行数据输入端、S A(M0)和S B (M1)(即9脚和10脚)工作方式控制端分别接电平开关,置1或置0,CP 时钟输入端接正向单次脉冲,清零端接负向单次脉冲,Q0~Q3输出端。
EDA课程设计:八路彩灯控制器第一篇:EDA课程设计:八路彩灯控制器EDA课程设计设计题目:基于VHDL的8路彩灯控制器设计一、课程设计的目的1.熟悉QuartusⅡ软件的使用方法,使用VHDL 文本输入设计法进行任务设计。
2.增强自己实际动手能力,独立解决问题的能力。
3.通过课程设计对所学的知识进行更新及巩固.二、课程设计的基本要求本次课程设计是设计一个8路彩灯控制器,能够控制8路彩灯按照两种节拍,三种花型循环变化。
设计完成后,通过仿真验证与设计要求进行对比,检验设计是否正确。
三、课程设计的内容编写硬件描述语言VHDL程序,设计一个两种节拍、三种花型循环变化的8路彩灯控制器,两种节拍分别为0.25s和0.5s。
三种花型分别是:(1)8路彩灯分成两半,从左至右顺次渐渐点亮,全亮后则全灭。
(2)从中间到两边对称地渐渐点亮,全亮后仍由中间向两边逐次熄灭。
(3)8路彩灯从左至右按次序依次点亮,全亮后逆次序依次熄灭。
四、实验环境PC机一台;软件Quartu sⅡ6.0五、课程设计具体步骤及仿真结果1、系统总体设计框架结构分频模块:把时钟脉冲二分频,得到另一个时钟脉冲,让这两种时钟脉冲来交替控制花型的速度。
二选一模块:选择两种频率中的一个控制彩灯的花型。
8路彩灯的三种花型控制模块:整个系统的枢纽,显示彩灯亮的情况。
2、系统硬件单元电路设计1.分频模块设计实验程序:library ieee;use ieee.std_logic_1164.all;entity fenpin2 isport(clk:in std_logic;clkk:out std_logic);end fenpin2;architecture behav of fenpin2 is beginprocess(clk)variable clkk1:std_logic:='0';beginif clk'event and clk='1' thenclkk1:= not clkk1;end if;clkk<=clkk1;end process;end behav;RTL电路图:波形图:2.二选一模块设计实验程序:library ieee;use ieee.std_logic_1164.all;entity mux21 is port(a,b,s:in std_logic;y:out std_logic);end mux21;architecture behave of mux21 is begin process(a,b,s)begin if s='0' then y<=a;else y<=b;end if;end process;end behave;RTL电路图:波形图:3.8路彩灯的三种花型控制模块设计程序: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity color8 is port(clk,rst :in std_logic;q:out std_logic_vector(7 downto 0));end;architecture a of color8 is signal s:std_logic_vector(4 downto 0);begin process(s,clk)begin if rst='1' then s<=“00000”;elsif clk'event and clk= '1' then if s=“11111” thens<=“00000”;else s<=s+1;end if;case s is when “00000”=>q<=“00000000”;when“00001”=>q<=“10001000”;when“00010”=>q<=“11001100”;when“00011”=>q<=“11101110”;when “00100”=>q<=“11111111”;when “00101”=>q<=“00000000”;when“00110”=>q<=“00011000”;when“00111”=>q<=“00111100”;when“01000”=>q<=“01111110”;when“01001”=>q<=“11111111”;when“01010”=>q<=“11100111”;when“01011”=>q<=“11000011”;when“01100”=>q<=“10000001”;when“01101”=>q<=“00000000”;when“01110”=>q<=“10000000”;when“01111”=>q<=“11000000”;when“10000”=>q<=“11100000”;when“10001”=>q<=“11110000”;when“10010”=>q<=“11111000”;when“10011”=>q<=“11111100”;when“10100”=>q<=“11111110”;when“10101”=>q<=“11111111”;when“10110”=>q<=“11111110”;when“10111”=>q<=“11111100”;w hen“11000”=>q<=“11111000”;when“11001”=>q<=“11110000”;when“11010”=>q<=“11100000”;when“11011”=>q<=“11000000”;when“11100”=>q<=“10000000”;when“11101”=>q<=“00000000”;when others=>null;end case;end if;end process;end;RTL电路图:波形图:4.综合程序library ieee;use ieee.std_logic_1164.all;entity fenpin2 isport(clk:in std_logic;clkk:out std_logic);end fenpin2;architecture behav of fenpin2 is beginprocess(clk)variable clkk1:std_logic:='0';beginif clk'event and clk='1' thenend if;clkk<=clkk1;end process;end behav;library ieee;use ieee.std_logic_1164.all;entity mux21 is port(a,b,s:in std_logic;y:out std_logic);end mux21;architecture behave of mux21 is begin process(a,b,s)begin if s='0' then y<=a;else y<=b;end if;end process;end behave;library ieee;clkk1:= not clkk1;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity color8 is port(clk,rst :in std_logic;q:out std_logic_vector(7 downto 0));end;architecture a of color8 is signal s:std_logic_vector(4 downto 0);begin process(s,clk)begin if rst='1' then s<=“00000”;elsif clk'event and clk= '1' then if s=“11111” thens<=“00000”;else s<=s+1;end if;case s is when “00000”=>q<=“00000000”;when“00001”=>q<=“10001000”;when“00010”=>q<=“11001100”;when“00011”=>q<=“11101110”;when“00100”=>q<=“11111111”;when“00101”=>q<=“00000000”;when“00110”=>q<=“00011000”;when“00111”=>q<=“00111100”;when“01000”=>q<=“01111110”;when“01001”=>q<=“11111111”;when“01010”=>q<=“11100111”;when“01011”=>q<=“11000011”;when “01100”=>q<=“10000001”;when “01101”=>q<=“00000000”;when“01110”=>q<=“10000000”;when“01111”=>q<=“11000000”;when“10000”=>q<=“11100000”;when“10001”=>q<=“11110000”;when“10010”=>q<=“11111000”;when“10011”=>q<=“11111100”;when“10100”=>q<=“11111110”;when“10101”=>q<=“11111111”;when“10110”=>q<=“11111110”;when“10111”=>q<=“11111100”;when“11000”=>q<=“11111000”;when“11001”=>q<=“11110000”;when“11010”=>q<=“11100000”;when“11011”=>q<=“11000000”;when“11100”=>q<=“10000000”;when“11101”=>q<=“00000000”;when others=>null;end case;end if;end process;end;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity balucaideng is port(clk,s,rst:in std_logic;q:out std_logic_vector(7 downto 0));end;architecture one of balucaideng issignal h0,h1:std_logic;component fenpin2port(clk:in std_logic;clkk:out std_logic);end component;component mux21 port(a,b,s:in std_logic;y:out std_logic);end component;component color8 port(clk,rst :in std_logic;q:out std_logic_vector(7 downto 0));end component;begin u1: fenpin2 port map(clk=>clk,clkk=>h0);u2: mux21 port map(a=>h0,b=>clk,s=>s;y=>h1);u3: color8 port map(clk=>h1,rst=>rst,q=>q);end;波形图:六、实验总结第二篇:eda课程设计-彩灯控制器1.设计目的学习EDA开发软件和MAX+plus Ⅱ的使用方法,熟悉可编程逻辑器件的使用,通过制作来了解彩灯控制系统。
多路彩灯控制器的设计O 引言硬件描述语言(HDL)是相对于一般的计算机软件语言如C,Pascal而言的。
HDL是用于设计硬件电子系统的计算机语言,它描述电子系统的逻辑功能、电路结构和连接方式。
设计者可以利用HDL程序来描述所希望的电路系统,规定其结构特征和电路的行为方式,然后利用综合器和适配器将此程序变成能控制FPGA和CPLD内部结构,并实现相应逻辑功能的门级或更底层的结构网表文件和下载文件。
VHDL(VeryHigh Speed Integrated Circuit Hardware descriptionLangtuage)主要用于描述数字系统的结构、行为、功能和接口。
与其他的HDL语言相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。
强大的行为描述能力是避开具体的器件结构。
从逻辑行为上描述和设计大规模电子系统的重要保证。
在文献中作者从不同的角度阐述了EDA技术的应用,它具有功能强大、描述能力强、可移植性好、研制周期短、成本低等特点,即使设计者不懂硬件的结构,也能进行独立的设计。
本文以Alter公司提供的Max+PlusⅡ为平台,设计一个可变速的彩灯控制器,可以在不修改硬件电路的基础上,仅通过更改软件就能实现任意修改花型的编程控制方案,实现控制16只LED以6种花型和两种速度循环变化显示,而且设计非常方便,设计的电路保密性。
(一)实验目的1.进一步掌握数字电路课程所学的理论知识。
2.了解数字电路设计的基本思想和方法,学会科学分析和解决问题。
3.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。
4. 培养认真严谨的工作作风和实事求是的工作态度一、设计任务与要求(1)要有多种花形变花。
(2)多路花形可以自动变换循环往复。
(3)彩灯变幻的快慢接拍可以选择。
(4)具有清零开关。
二、总体框图(一)设计思路用VHDL进行设计,首先应该理解,VHDL语言是一种全方位硬件描述语言,包括系统行为级,寄存器传输级和逻辑门级多个设计层次。
多路彩灯控制器目录摘要······················································一课程名称·······························二内容实验·······························三具体要求·······························四方案论证·······························五单元电路·······························六仿真结果·······························七实验小结······························参考文献·······················································一,课程名称多路彩灯控制器二,内容摘要当今时代科技发展日异月新,彩灯作为一种景观应用越来越多。
电工电子课程设计实验报告题目名称:彩灯控制器指导教师:姓名:学号:专业班级:日期:前言电子技术课程设计是配合电子技术基础课程与实验教学的一个非常重要的教学环节。
它是电气信息类专业学生的重要基础实践课,也是工科专业的必修课,能巩固电子技术的理论知识,提高电子电路的设计水平,加强综合分析问题和解决问题的能力,进一步培养学生的实验技能和动手能力,启发学生的创新意识及创新思维。
完成本次课程设计,对进行毕业设计及毕业后从事电子技术方面的工作都有很大的帮助。
近年来,由于集成电路的迅速发展,使得数字逻辑电路的设计发生了根本性的变化。
在设计中更多的使用中规模集成电路,不仅可以减少电路组件的数目,使电路简捷,而且能提高电路的可靠性,降低成本。
因此用集成电路来实现更多更复杂的器件功能则成为必然。
现代生活中,彩灯越来越成为人们的装饰品,它不仅能美化环境,渲染气氛,还可用于娱乐场所和电子玩具中,现以该课题为例进行分析与设计可编程的彩灯控制的电路很多,构成方式和采用的集成片种类、数目更是五花八门,而且有专门的可编程循环彩灯控制电路。
绝大多数的彩灯控制电路都是用数字电路来实现的,例如,用中规模集成电路实现的彩灯控制器主要用计数器,译码器,分配器和移位寄存器等集成。
本次设计的可编程彩灯控制电路就是用寄存器、计数器和译码器等来实现,其特点是用发光二极管显示,实现可预置编程循环功能。
目录前言 1一、课题设计任务及要求 .3二、设计目的 3三、优选设计方案 4四、整体设计思想及原理框图 5五、各模块设计与分析 61、脉冲发生电路 72、控制电路和译码电路 103、存储电路 124、数码管显示电路 .14六、元器件清单 15七、安装及调试中出现的问题和解决方法 15八、设计感想 17附录一、实验电路图 20二、实验电路连接图 .21三、参考文献 21一、课题设计任务及要求课题名称:可编程彩灯控制器设计任务及要求:通过对硬件编程,将图形、文字、动画存储在E2PROM中,通过计数器控制图形、文字、动画的地址,在利用显示矩阵显示出来。
EDA课程设计总结报告题目彩灯控制器学院 XXXXXXXXXXXXX学院专业 XXXXXXXXXX年级 XXXX级学号 XXXXXXXXXXXXXXXXXXXX姓名 XXX XXX指导教师 XXX成绩XXXX年 X月 XX日目录摘要 (2)Abstract (4)第一章绪论 (5)1.1 课题背景 (5)1.2 项目的实际研究意义 (7)第二章彩灯控制的要求及程序设计 (8)2.1 课程设计要求 (8)2.2设计思路 (8)2.3彩灯控制的软件程序设计 (8)第三章硬件焊接及彩灯调试 (12)3.1 焊接成品 (12)3.2 彩灯调试效果查看 (12)第四章波形仿真调试 (13)第五章感谢信 (14)参考文献 (15)摘要本课程设计提出基于FPGA的彩灯控制器的设计与分析。
本设计运用运用Verilog HDL语言在QuartusⅡ软件上进行了实验程序的编译和波形的仿真,具有代码简单易懂,功能易实现的特点,通过不断地调试和代码的多次完善,最终实现完整的多种花样彩灯控制器,达到了自主设计逻辑电路的水平。
关键词:彩灯控制;Verilog HDL语言;QuartusⅡ软件AbstractThe design and analysis of color lamp controller based on FPGA are presented in this course. This design using using Verilog HDL language in Quartus Ⅱsoftware has carried on the experimental program compilation and waveform simulation, has the code simple, function characteristics of easy implementation, through debugging and code many times the consummation unceasingly, finally realizes the complete variety lights controller, reached the independent design of logic circuit level.Keywords: The lantern controller;Verilog HDL language; Quartus Ⅱsoftware第一章绪论1.1课题背景1. FPGAFPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。
电子设计自动化大作业题目彩灯控制器学院班级 xxxxxxx姓名 xxxxxx学号 xxxxxxxxxxx二O一二年十月三十一日题目:彩灯控制器一、设计要求:设计能让一排彩灯(8只)自动改变显示花样的控制系统,发光二极管可作为彩灯用。
控制器应有两种控制方式:(1)规则变化。
变化节拍有0.5秒和0.x秒两种,交替出现,每种节拍可有4种花样,各执行一或二个周期后轮换。
(2)随机变化。
无规律任意变化。
二、总体设计:1、总体结构图前端控制(外部端口示意图、总体结构图)2、各模块功能三、单元模块设计每个模块含有以下内容:1、模块名(1)模块功能1.分频器a.功能:实现4096分频且占空比为50%b.功能:当clkd为1时实现512分频,clkd为0时输出为0。
c.功能:当clkd为0时实现256分频,clkd为1时输出为0。
2.前端控制功能:当k为0时总输出clk,k为1时总输出为序列码11010110。
3.模8计数器功能:当clr为0时输出为“000”,当clr为1时为模8计数器输出三位二进制数。
(2)VHDL源程序VHDL代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity deng isport(clk: in std_logic;clr: in std_logic;choose: in std_logic_vector(2 downto 0);led: out std_logic_vector(7 downto 0));end deng;architecture control of deng issignal cnt1:std_logic_vector(1 downto 0); signal cnt2:std_logic_vector(1 downto 0); signal cnt3:std_logic_vector(1 downto 0); signal cnt4:std_logic_vector(1 downto 0); signal cnt5:std_logic_vector(1 downto 0); signal cnt6:std_logic_vector(1 downto 0); signal cnt7:std_logic_vector(1 downto 0); signal cnt8:std_logic_vector(1 downto 0);beginprocess(clk,clr)beginif clr='0'thenled<="00000000";elseif choose="000" thenif clk'event and clk='0' thencnt1<=cnt1+1;end if;case cnt1 iswhen "00"=>led<="10000000";when "01"=>led<="01000000";when "10"=>led<="00100000";when "11"=>led<="00010000";end case;elsif choose="001" thenif clk'event and clk='1' thencnt2<=cnt2+1;end if;case cnt2 iswhen "00"=>led<="00000001";when "01"=>led<="00000010";when "10"=>led<="00000100";when "11"=>led<="00001000"; end case;elsif choose="010" thenif clk'event and clk='1' then cnt3<=cnt3+1;end if;case cnt3 iswhen "00"=>led<="10000000";when "01"=>led<="00100000";when "10"=>led<="00001000";when "11"=>led<="00000010";end case;elsif choose="011" thenif clk'event and clk='1' thencnt4<=cnt4+1;end if;case cnt4 iswhen "00"=>led<="00000001";when "01"=>led<="00000100";when "10"=>led<="00010000";when "11"=>led<="01000000"; end case;elsif choose="100" thenif clk'event and clk='0' thencnt5<=cnt5+1;end if;case cnt5 iswhen "00"=>led<="10000001";when "01"=>led<="11000011";when "10"=>led<="11100111";when "11"=>led<="11111111"; end case;elsif choose="101" thenif clk'event and clk='1' thencnt6<=cnt6+1;end if;case cnt6 iswhen "00"=>led<="01111110";when "01"=>led<="00111100";when "10"=>led<="00011000";when "11"=>led<="00000000"; end case;elsif choose="110" thenif clk'event and clk='1' thencnt7<=cnt7+1;end if;case cnt7 iswhen "00"=>led<="11000000";when "01"=>led<="00110000";when "10"=>led<="00001100";when "11"=>led<="00000011"; end case;elsif choose="111" thenif clk'event and clk='1' thencnt8<=cnt8+1;end if;case cnt8 iswhen "00"=>led<="10000001";when "01"=>led<="01000010";when "10"=>led<="00100100";when "11"=>led<="00011000";end case;end if;end if;end process;end architecture control;输入choose为“000”时的仿真波形:结果分析:设置choose为“000”,当clr=1时led7~led4每过一个时钟变为高电平其余时间为低电平,led3~led0为低电平,当clr=0时输出全部为0。
10彩灯控制器课程设计一、课程目标知识目标:1. 学生能够理解10彩灯控制器的基本原理,掌握相关电子元件的功能及使用方法。
2. 学生能够描述10彩灯控制器的电路图,并解释各个部分的工作原理。
3. 学生了解编程软件在10彩灯控制器中的应用,掌握基本的编程指令和逻辑。
技能目标:1. 学生能够独立完成10彩灯控制器的组装和调试,具备实际操作能力。
2. 学生能够运用所学知识,编写简单的程序,实现10彩灯的控制效果。
3. 学生能够通过小组合作,共同解决问题,提高团队协作能力。
情感态度价值观目标:1. 学生对电子技术和编程产生兴趣,培养探究精神和创新能力。
2. 学生在课程中,树立安全意识,养成良好的实验操作习惯。
3. 学生通过课程学习,认识到科技改变生活的重要性,激发社会责任感。
分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握基本知识的基础上,提高实践操作能力,培养创新精神和团队协作意识。
通过课程学习,使学生能够将所学知识应用于实际生活中,为我国电子信息技术的发展储备优秀人才。
二、教学内容本章节教学内容依据课程目标,紧密结合教材,主要包括以下几部分:1. 电子元件认知:介绍10彩灯控制器中所涉及的电子元件,如电阻、电容、二极管、三极管等,使学生了解各元件的作用及使用方法。
2. 电路图分析:详细讲解10彩灯控制器的电路图,引导学生理解各个部分的工作原理,掌握电路连接方式。
3. 编程软件应用:教授编程软件的使用方法,使学生学会编写控制10彩灯的程序,掌握基本的编程指令和逻辑。
4. 实践操作:指导学生进行10彩灯控制器的组装、调试和编程,培养学生的实践操作能力。
5. 小组合作与展示:组织学生分组进行项目实践,共同解决问题,提高团队协作能力,并在课程结束时进行成果展示。
具体教学安排如下:第一课时:电子元件认知、电路图分析第二课时:编程软件应用、实践操作(1)第三课时:实践操作(2)、小组合作与展示教学内容与教材关联性如下:1. 电子元件认知:参考教材第二章“常用电子元件”2. 电路图分析:参考教材第三章“电路图的识别与分析”3. 编程软件应用:参考教材第四章“编程软件的使用”4. 实践操作:参考教材第五章“10彩灯控制器实践操作”三、教学方法针对本章节内容,采用以下多元化的教学方法,以激发学生的学习兴趣和主动性:1. 讲授法:教师通过生动的语言和形象的表达,讲解电子元件、电路图及编程软件等基本知识,为学生奠定扎实的理论基础。
EDA技术课程设计课题:彩灯控制器的设计系别:专业:姓名:学号:指导教师:河南城建学院2011年6月24日成绩评定·一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)。
二、评分(按下表要求评定)评分项目设计报告评分答辩评分平时表现评分合计(100分)任务完成情况(20分)课程设计报告质量(40分)表达情况(10分)回答问题情况(10分)工作态度与纪律(10分)独立工作能力(10分)得分课程设计成绩评定班级姓名学号成绩:分(折合等级)指导教师签字年月日目录一、设计目的: (4)二、设计要求: (4)三、总体设计原理与内容 (4)四、EDA程序设计及波形仿真分析 (5)1、时序模块 (5)2、显示模块 (8)五、硬件实现 (10)六、设计总结 (13)1、设计过程中遇到的问题及解决方法 (13)2、设计体会 (14)3、对设计的建议 (14)七、参考文献 (14)附录:设计生成的电路图 (15)一、设计目的:本程序以计算机为工作平台,综合运用EDA软件工具开发环境、用硬件描述语言VHDL为设计语言,以ASIC来实现载体的设计。
通过在EDA中的编译和处理、仿真下载、调试分析,接受一次电子设计蓝领初步的设计训练,并使所学的知识和技能得到进一步巩固、深化和扩展,以达到可以运用EDA工具设计一些简单的电子产品,掌握使用EDA工具设计数字系统的设计思想和设计方法,为继续学习和认识电子设计知识打下良好的基础。
培养利用EDA技术知识,解决电子设计自动化中常见实际问题的能力,积累实际的EDA编程。
通过本课程设计的学习,复习所学的专业知识,使课堂学习的理论知识应用于实践。
培养综合运用已学知识解决实际工程技术问题的能力、查阅图书资料和各种工具书的能力、工程绘图能力、撰写技术报告和编制技术资料的能力,接受一次电子设计自动化方面的基本训练。
二、设计要求:1、用EDA技术设计一个彩灯控制器,使彩灯(LED管)能连续发出三种以上不同的花型(自拟);2、随着彩灯显示图案的变化,发出不同的音响声。
EDA课程设计报告设计题目:彩灯控制器的设计学院:专业:电子信息科学与技术班级:学号:姓名:电子邮件:日期:成绩:指导教师:课程设计任务书学生姓名指导教师学生学号专业题目彩灯控制器的设计任务与要求要求:用VHDL语言程序设计设计一个彩灯控制器,使彩灯(LED管)能连续发出三种以上不同的花型;随着彩灯显示图案的变化,发出不同的音响声;要求使用7段数码管显示当前显示的花型,如第一种花型显示AA,第二种花型显示BB,第三种花型显示CC。
任务:完成该系统的硬件和软件的设计,然后进行波形仿真,调试好后并能实际运用,在实验箱上显示出来,最后就课程设计本身提交一篇课程设计报告书。
开始日期完成日期课程设计所在单位彩灯控制器的设计一设计要求用VHDL语言程序设计设计一个彩灯控制器,使彩灯(LED管)能连续发出三种以上不同的花型;随着彩灯显示图案的变化,发出不同的音响声;要求使用7段数码管显示当前显示的花型,如第一种花型显示AA,第二种花型显示BB,第三种花型显示CC。
二彩灯控制其的设计2.1 彩灯控制器的设计原理本次彩灯控制器的设计包含几个主要模块,一是彩灯显示和扬声器的时序控制部分,二是发光二极管的动态显示和数码管的动态显示,本次设计中,二者的显示同步变化;三是扬声器的控制部分。
流程图如下所示:图1 彩灯控制器的设计流程图彩灯控制器的设计核心主要是分频器的使用,显示部分的设计较简易。
分频的方法有很多种,本次设计之采用了其中较简易的一种,通过计数器的分频,将控制器外接的频率分为几个我们预先设定的值。
当计数器达到预先设定的值,即产生一个上升沿,从而实现分频。
扬声器通过不同的频率控制发出不同的声音。
同样发光二极管和数码管的显示速度也由其中分出来的一种频率控制(控制显示频率在1~4之间为宜)。
通过使能端的控制可以控制不同的数码管显示预先设定的图案,数码管依次显示的图案为AA、BB、CC,并随着发光二极管同步动态显示。
AA为自左向右显示,BB为自右向左显示,CC从二边向中间再由中间向二边发散显示。
EDA技术课程设计题目:EDA技术及其应用——彩灯控制器设计姓名:Jxairy院系:电子信息工程学系专业:通信工程班级:091学号:910705131指导教师:***2012年01月师:日期:EDA技术及其应用——彩灯控制器设计Jxairy(电子信息工程学系指导教师:***)0引言随着电子技术的发展,应用系统向着小型化、快速化、大容量、重量轻的方向发展,EDA(ElectronicDesign Automatic)技术的应用引起电子产品及系统开发的革命性变革。
VHDL语言作为可编程逻辑器件的标准语言描述能力强,覆盖面广,抽象能力强,在实际应用中越来越广泛。
在这个阶段,人们开始追求贯彻整个系统设计的自动化,可以从繁重的设计工作中彻底解脱出来,把精力集中在创造性的方案与概念构思上,从而可以提高设计效率,缩短产品的研制周期。
整个过程通过EDA工具自动完成,大大减轻了设计人员的工作强度,提高了设计质量,减少了出错的机会。
本文介绍应用美国ALTERA公司的MAX+PLUSⅡ平台,使用VHDL硬件描述语言实现的彩灯控制器设计。
1设计目的随着科学技术的发展以及人民生活水平的提高,在现代生活中,彩灯作为一种装饰,既可以给人们带来视觉上的冲击,制造耳目一新的广告宣传,又可以增添节日气氛,为人们的生活增添亮丽,用在舞台上增强晚会灯光效果。
本设计就是应用EDA技术,使用VHDL硬件描述语言设计的一种简易的彩灯控制器。
2设计要求1)有6种花型变化。
2)多种花型可以自动变化,循环往复。
3)彩灯变化的快慢节拍可以选择。
4)具有清零开关。
3系统设计方案根据系统设计要求,设计一个具有6种花型循环变化的彩灯控制器。
整个系统共有三个输入信号:控制彩灯节奏快慢的基准时钟信号CLK_IN,系统清零信号CLR,彩灯节奏快慢选择开关CHOSE_KEY;共有16个输出信号LED[15..0],分别用于控制16路彩灯。
由方案综合分析,系统设计采用自顶向下的设计方法。
一、实训背景随着科技的不断进步,电子技术在生活中的应用越来越广泛。
彩灯作为节日装饰的重要元素,其控制系统的设计与实现对于丰富节日气氛、美化环境具有重要意义。
本实训旨在通过学习彩灯控制器的原理与设计方法,提高学生对数字电路的理解和应用能力。
二、实训目的1. 掌握彩灯控制器的原理和设计方法。
2. 熟悉数字电路中的触发器、计数器、译码器等基本单元电路。
3. 培养学生动手实践能力和创新意识。
三、实训内容1. 彩灯控制器原理学习(1)了解彩灯控制器的组成,包括输入部分、控制部分、执行部分等。
(2)掌握彩灯控制器的控制原理,包括定时、计数、译码等。
(3)学习常用数字集成电路的应用,如触发器、计数器、译码器等。
2. 彩灯控制器设计(1)根据设计要求,确定彩灯控制器的功能模块和结构。
(2)设计彩灯控制器的电路图,包括各个模块的连接关系和参数设置。
(3)利用数字电路仿真软件对电路进行仿真,验证设计的正确性。
3. 彩灯控制器制作与调试(1)根据电路图,制作彩灯控制器的实体电路。
(2)调试电路,确保各个模块正常工作。
(3)进行彩灯控制器的功能测试,验证其是否符合设计要求。
四、实训过程1. 理论学习(1)查阅相关资料,了解彩灯控制器的原理和设计方法。
(2)学习数字电路中的基本单元电路,如触发器、计数器、译码器等。
(3)了解数字电路仿真软件的使用方法。
2. 电路设计(1)根据设计要求,确定彩灯控制器的功能模块和结构。
(2)设计电路图,包括各个模块的连接关系和参数设置。
(3)利用数字电路仿真软件对电路进行仿真,验证设计的正确性。
3. 电路制作(1)根据电路图,制作彩灯控制器的实体电路。
(2)检查电路连接,确保无误。
4. 调试与测试(1)调试电路,确保各个模块正常工作。
(2)进行彩灯控制器的功能测试,验证其是否符合设计要求。
五、实训结果与分析1. 实训成果(1)成功设计并制作了一个彩灯控制器。
(2)彩灯控制器可以按照预定程序控制彩灯的亮灭,实现各种动态效果。
彩灯控制器设计第一篇:彩灯控制器设计彩灯控制器设计摘要一、系统设计要求设计一个控制电路来实现8路彩灯按照一定的次序和时间间隔闪烁。
具体要求如下:1、当控制开关为0时,灯全灭;当控制开关为1时,从第一盏开始,依次点亮,时间间隔为1秒。
期间一直保持只有一盏灯亮、其他灯全灭的状态。
2、8盏灯依次亮完后,从第8盏开始依次灭,期间一直保持只有一盏灯灭、其他灯全亮的状态。
3、当8盏灯依次灭完后,8盏灯同时亮同时灭,其时间间隔为0.5秒,并重复4次。
4、只要控制开关为1,上述亮灯次序不断重复。
5、用层次化设计方法设计该电路,编写各个功能模块的程序。
6、仿真各功能模块,通过观察有关波形确认电路设计是否正确。
7、完成电路设计后,用实验系统下载验证设计的正确性。
二、系统总体结构系统框图如下所示,ENA为控制开关,输入信号为2Hz,经过分频器分频之后产生一个1Hz的时钟信号,用两个12位内部信号的左、右移后的中间8位来控制8个灯的亮与灭。
计数器1和计数器2的作用:一方面用2Hz和1Hz的时钟信号控制灯亮、灭的时间间隔;另一方面控制八盏灯的依次亮、依次灭和全亮、全灭。
使能信号ENA为无效电平时(低电平),8只LED灯保持全灭的状态;当使能信号ENA为有效电平时(高电平),8只按照既定的花型进行变换,首先2Hz的时钟信号在分频器的左右下改变为1Hz的时钟信号,该1Hz的时钟信号送至计数器2、左移和右移模块,并由计数器2实现左、右移模块的选择。
分别实现8只LED灯的自左向右依次点亮,以及自右向左依次熄灭的花型变换;当完成自右向左的花型变换后,计数器2给出一个控制信号给计数器1,执行全亮全灭的花型变换,该模块的时钟信号是未经分频器分频的原始时钟信号2Hz。
只要使能信号有效,那么该系统就按照以上的花型变换顺序一直永序的变换下去。
三、各功能模块1、时钟信号二分频模块:功能描述:该模块的功能主要是将频率为2Hz的时钟信号分频频率为1Hz的时钟信号,并将频率为1Hz的时钟信号输出给左移、右移模块作为这两个模块时钟触发信号。
EDA多路彩灯控制设计一.系统设计要求设计一个多路彩灯控制器,彩灯能循环变化,可清零,可以变化彩灯闪动频率。
二.设计方案整个系统有三个输入信号,分别为控制快慢的信号OPT,复位清零信号CLR,输出信号是8路彩灯输出状态。
系统框图如:主要模块组成:时序控制电路模块和显示电路模块,时序控制电路是根据输入信号的设置得到相应的输出信号,并将此信号作为显示电路的时钟信号;显示电路输入时钟信号的周期,有规律的输出设定的六种彩灯变化类型。
三.模块设计时序控制模块:CLK为输入时钟信号,电路在时钟上升沿变化;CLR为复位清零信号,高电平有效,一旦有效时,电路无条件的回到初始状态;OPT为频率快慢选择信号,低电平节奏快,高电平节奏慢;CLKOUT为输出信号,CLR有效时输出为零,否则,随OPT信号的变化而改变。
时序控制电路模块程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity kz is --定义实体port(clk: in std_logic; --时钟信号clr: in std_logic; --复位信号opt: in std_logic; --快慢控制信号clkout: out std_logic --输出时钟信号);end kz;architecture rtl of kz issignal clk_tmp: std_logic;signal counter: std_logic_vector(1 downto 0); --定义计数器beginprocess(clk,clr,opt)beginif clr='1' then --清零clk_tmp<='0';counter<="00";elsif clk'event and clk='1' thenif opt='0' then --四分频,快节奏if counter="01" thencounter<="00";clk_tmp<=not clk_tmp;elsecounter<=counter+'1';end if;else --八分频,慢节奏if counter="11" thencounter<="00";clk_tmp<=not clk_tmp;elsecounter<=counter+'1';end if;end if;end if;end process;clkout<=clk_tmp; --输出分频后的信号end rtl;显示模块电路程序如下:library ieee;use ieee.std_logic_1164.all;entity xs isport(clk: in std_logic ;--输入时钟信号clr: in std_logic; --复位信号led: out std_logic_vector(7 downto 0)); --彩灯输出end xs;architecture rtl of xs istype states is --状态机状态列举(s0,s1,s2,s3,s4,s5,s6);signal state: states;beginprocess(clk,clr)beginif clr='1' thenstate<=s0;led<="00000000";elsif clk'event and clk='1' then --状态机状态之间的转换case state iswhen s0=>state<=s1;when s1=>state<=s2;led<="01010101";when s2=>state<=s3;led<="10101010";when s3=>state<=s4;led<="10001000";when s4=>state<=s5;led<="11001100";when s5=>state<=s6;led<="00110011";when s6=>state<=s1;led<="00010001";end case;end if;end process;end rtl;顶出模块设计程序:library ieee;use ieee.std_logic_1164.all;entity cotop isport (clk: in std_logic;clr: in std_logic;opt:in std_logic;led: out std_logic_vector(7 downto 0)); --八路彩灯输出end cotop;architecture rtl of cotop iscomponent kz is --定义元件:时序控制电路port(clk: in std_logic;clr: in std_logic;opt:in std_logic;clkout: out std_logic);end component kz;component xs is --定义元件:显示电路port(clk: in std_logic;clr: in std_logic;led: out std_logic_vector(7 downto 0));end component xs;signal clk_tmp: std_logic;beginu1:kz port map(clk,clr,opt,clk_tmp); --例化时序控制模块u2:xs port map(clk_tmp,clr,led); --例化显示电路模块end rtl;时序控制模块仿真波形:从图中可以看出,当复位信号为高电平时,电路时钟输出清零,当快慢信号OPT为低电平时,时序控制电路四分频起作用,当快慢信号OPT为高电平时,时序控制电路八分频起作用,仿真结果符合电路要求。