8路炫光彩灯控制器

合集下载

EDA课程设计:八路彩灯控制器

EDA课程设计:八路彩灯控制器

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 Ⅱ的使用方法,熟悉可编程逻辑器件的使用,通过制作来了解彩灯控制系统。

8路彩灯控制器

8路彩灯控制器

8路彩灯控制器实验报告8路彩灯控制器一、实验目的:1、熟熟练掌握VHDL的用法2、了解8路彩灯的工作原理,电路结构。

二、实验要求:设计一个8路彩灯控制器,能控制8路彩灯按照两种节拍、三种花形循环变化。

两种节拍分别为0.25s和0.5s。

三种花型分别是:1、8路彩灯从左至右按次序见谅,全亮后逆次序渐灭。

2、从中间到两边对称渐亮,全亮后仍从中间到两边逐次渐灭。

3、8路彩灯分两半,从左至右顺次渐亮,全亮后则全灭。

三、实验原理:四、实验程序与步骤:程序:1、8路彩灯的三种花形控制模块CDlibrary ieee;use ieee.std_logic_arith.all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cd isport(clk:in std_logic;jp:out std_logic;qq:out std_logic_vector(7 downto 0)); end cd; architecture behav of cd isconstant w:integer:=7;signal q:std_logic_vector(7 downto 0); beginprocess(clk)variable flag:bit_vector(2 downto 0):="000"; variable jp1:std_logic:='0';beginif clk'event and clk='1' thenif flag="000"thenq<='1'&q(w downto 1);if q(1)='1'thenflag:="001";end if;elsif flag="001" thenq<=q(w-1 downto 0)&'0';if q(6)='0'thenflag:="010";end if;elsif flag="010"thenq(w downto 4)<=q(w-1 downto 4)&'1';q(w-4 downto 0)<='1'&q(w-4 downto 1);if q(1)='1'thenflag:="011";end if;elsif flag="011"thenq(w downto 4)<=q(w-1 downto 4)&'0';q(w-4 downto 0)<='0'&q(w-4 downto 1);if q(1)='0'thenflag:="100";end if;elsif flag="100"thenq(w downto 4)<='1'&q(w downto 5);q(w-4 downto 0)<='1'&q(w-4 downto 1);if q(1)='1'thenflag:="101";end if;elsif flag="101"thenq<="00000000";jp1:=not jp1;flag:="000";end if;end if;qq<=q;jp<=jp1;end process;end behav;2、二选一多路选择器模块MUX21 library ieee; use ieee.std_logic_1164.all;entity mux21 isport(a,b,s:in std_logic;y:out std_logic);end mux21;architecture ar of mux21 isbeginprocess(a,b,s)beginif s='0'theny<=a;elsey<=b;end if;end process;end ar;3、二分频模块FEN2library ieee;use ieee.std_logic_1164.all;entity fen2 isport(clk:in std_logic;clkk:out std_logic);end fen2;architecture behav of fen2 isbeginprocess(clk)variable clkk1:std_logic:='0'; beginif clk'event and clk='1'thenclkk1:=not clkk1;end if;clkk<=clkk1;end process;end behav;步骤:1、输入程序CD、MUX21、FEN2。

八路彩灯控制器 课程设计

八路彩灯控制器 课程设计

目录第一章总体设计 (5)1.1设计目的 (5)1.2设计任务与要求 (5)1.3基本工作原理 (5)1.4设计方案 (5)第二章单片机简介 (6)2.1单片机结构 (6)2.2单片机的封装形式、引脚定义及功能 (7)2.3单片机的工作原理 (8)2.4 CPU的工作原理 (8)2.5存储器结构 (9)2.6 CPU时序及时钟电路 (10)2.7复位操作 (12)第三章硬件设计 (14)3.1整体硬件接结构 (14)3.2功能模块电路 (14)3.3系统硬件原理电路图 (16)第四章软件设计 (17)4.1软件总体结构设计 (17)4.2各功能模块设计 (18)总结与心得 (25)参考文献: (26)第一章总体设计1.1设计目的1)了解单片机的基本原理及相关的简单应用。

2)掌握用单片机设计系统的一般步骤。

3)了解LED数码管的基本知识和驱动方法。

4)掌握单片机系统各个组成部分的作用以及分布位置。

5)学会运用单片机的硬件资源。

1.2设计任务与要求8个彩灯的控制电路的任务为:用AT89S51单片机设计设计一个8个彩灯控制电路。

要求:完成以下花形变化:1) 从左到右依次点亮,8个灯全亮;从右到左依次熄灭,8个灯全灭。

时间节拍为1秒。

2)从两边向中间依次点亮,8个灯全亮;从中间向两边依次熄灭,8个灯全灭。

时间节拍为1秒。

3)循环往复,用LED管模拟彩灯。

4)用汇编语言编程,用proteus仿真。

1.3基本工作原理此次使设计一个能控制八路彩灯的控制器,其中彩灯用发光二极管模拟。

由P1.6和P1.7口控制电路启动与停止,根据彩灯的亮灭要求,利用数据指针查表,将查到的内容送给P2口进行显示,然后调用1s延时程。

若查到的内容为跳出代码就重新开始循环。

1.4设计方案软件方面:通过汇编语言编程实现不同要求的状态,由延时程序实现1秒的延时时间。

硬件方面:彩灯启动与停止由P1.6和P1.7口进行控制,彩灯的显示状态由AT89C51的P2口输出显示。

八路彩灯控制器

八路彩灯控制器

一、引言现今生活中,市场上未能吸取顾客的注意,高出各式各样的方法,其中彩灯的装饰便是其中非常普遍的一种。

使用彩灯即可起装饰宣传作用,又可以现场气氛,城市也因为众多的彩灯而变得灿烂辉煌。

VHDL语言作为可编程逻辑器件的标准语言描述能力强,覆盖面广,抽象能力强,在实际应用中越来越广泛。

在这个阶段,人们开始追求贯彻整个系统设计的自动化,可以从繁重的设计工作中彻底解脱出来,把精力集中在创造性的方案与概念构思上,从而可以提高设计效率,缩短产品的研制周期。

整个过程通过EDA工具自动完成,大大减轻了设计人员的工作强度,提高了设计质量,减少了出错的机会。

本次设计八路彩灯控制器简略描述了彩灯的变换。

具体实现方法如下二、总体设计:当选择花样一时状态图如下:S0=”ZZZZZZZZ”S1="10000001"S2="01000010"S3="00100100"S4="00011000"S5="00100100"S6="01000010"当选择花样二时状态图如下:S0=”ZZZZZZZZ”S1="00000000"S2="10000000"S3="11000000"S4="11100000"S5="11110000"S6="11111000"S7=”11111100”S8=”11111110”S9="11111111"S10="01111111"S11="00111111"S12="00011111"S13="00001111"S14="00000111"S15=”00000011”S16=”00000001”当选择花样三时状态图如下:S0=”ZZZZZZZZ”S1="10000000"S2="01000000"S3="00100000"S4="00010000"S5="00001000"S6="00000100"S7=”00000010”S8=”00000001”S9="00000010"S10="00000100"S11="00001000"S12="0001000"S13="00100000"S14="01000000"总体框图:三、模块设计:分频器模块:--由于机器时钟周期太短,不能满足要求--此模块实现分频,得到需要的时钟LIBRARY IEEE;USE IEEE.std_logic_1164.ALL;USE IEEE.std_logic_unsigned.ALL;ENTITY fenpinqi ISPORT(CLK:IN STD_LOGIC;--原机器时钟CLR:IN STD_LOGIC;CLK1:OUT STD_LOGIC);--分频后的时钟END fenpinqi;ARCHITECTURE ART OF fenpinqi ISSIGNAL CK:STD_LOGIC;BEGINPROCESS(CLK,CLR)ISVARIABLE TEMP:STD_LOGIC_VECTOR(2DOWNTO0);BEGINIF CLR='1'THENCK<='0';TEMP:="000";ELSIF(CLK'EVENT AND CLK='1')THENIF TEMP="111"THENTEMP:="000";CK<=NOT CK;ELSETEMP:=TEMP+'1';END IF;END IF;END PROCESS;CLK1<=CK;END ART;花样一模块:--用分频器分频后的时钟来显示花样实现--从两边向中间亮,再从中间向两边亮;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY hy1ISPORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED1:OUT STD_LOGIC_VECTOR(7DOWNTO0));END ENTITY hy1;ARCHITECTURE ART OF hy1ISTYPE STATE IS(S0,S1,S2,S3,S4,S5,S6);--设计状态机,实现花样转换SIGNAL CURRENT_STATE:STATE;SIGNAL LIGHT:STD_LOGIC_VECTOR(7DOWNTO0);BEGINPROCESS(CLR,CLK1,XUAN)IS--定义花样(1为灯亮,0为灯灭) CONSTANT L1:STD_LOGIC_VECTOR(7DOWNTO0):="10000001";CONSTANT L2:STD_LOGIC_VECTOR(7DOWNTO0):="01000010";CONSTANT L3:STD_LOGIC_VECTOR(7DOWNTO0):="00100100";CONSTANT L4:STD_LOGIC_VECTOR(7DOWNTO0):="00011000";CONSTANT L5:STD_LOGIC_VECTOR(7DOWNTO0):="00100100";CONSTANT L6:STD_LOGIC_VECTOR(7DOWNTO0):="01000010";BEGINIF XUAN="01"THENIF CLR='1'THENCURRENT_STATE<=S0;ELSIF(CLK1'EVENT AND CLK1='1')THENCASE CURRENT_STATE IS--状态机转换WHEN S0=>LIGHT<="ZZZZZZZZ";CURRENT_STATE<=S1;WHEN S1=>LIGHT<=L1;CURRENT_STATE<=S2;WHEN S2=>LIGHT<=L2;CURRENT_STATE<=S3;WHEN S3=>LIGHT<=L3;CURRENT_STATE<=S4;WHEN S4=>LIGHT<=L4;CURRENT_STATE<=S5;WHEN S5=>LIGHT<=L5;CURRENT_STATE<=S6;WHEN S6=>LIGHT<=L6;CURRENT_STATE<=S1;END CASE;END IF;END IF;END PROCESS;LED1<=LIGHT;END ART;花样二模块:--用分频器分频后的时钟来显示花样实现--实现淡入淡出效果LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY hy2ISPORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED2:OUT STD_LOGIC_VECTOR(7DOWNTO0));END ENTITY hy2;ARCHITECTURE ART OF hy2IS--设计状态机,实现花样转换TYPE STATE IS(S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,S11,S12,S13,S14,S15,S16); SIGNAL CURRENT_STATE:STATE;SIGNAL LIGHT:STD_LOGIC_VECTOR(7DOWNTO0);BEGINPROCESS(CLR,CLK1,XUAN)IS--定义花样(1为灯亮,0为灯灭)CONSTANT L1:STD_LOGIC_VECTOR(7DOWNTO0):="00000000";CONSTANT L2:STD_LOGIC_VECTOR(7DOWNTO0):="10000000";CONSTANT L3:STD_LOGIC_VECTOR(7DOWNTO0):="11000000";CONSTANT L4:STD_LOGIC_VECTOR(7DOWNTO0):="11100000";CONSTANT L5:STD_LOGIC_VECTOR(7DOWNTO0):="11110000";CONSTANT L6:STD_LOGIC_VECTOR(7DOWNTO0):="11111000";CONSTANT L7:STD_LOGIC_VECTOR(7DOWNTO0):="11111100";CONSTANT L8:STD_LOGIC_VECTOR(7DOWNTO0):="11111110";CONSTANT L9:STD_LOGIC_VECTOR(7DOWNTO0):="11111111";CONSTANT L10:STD_LOGIC_VECTOR(7DOWNTO0):="01111111";CONSTANT L11:STD_LOGIC_VECTOR(7DOWNTO0):="00111111";CONSTANT L12:STD_LOGIC_VECTOR(7DOWNTO0):="00011111";CONSTANT L13:STD_LOGIC_VECTOR(7DOWNTO0):="00001111";CONSTANT L14:STD_LOGIC_VECTOR(7DOWNTO0):="00000111";CONSTANT L15:STD_LOGIC_VECTOR(7DOWNTO0):="00000011";CONSTANT L16:STD_LOGIC_VECTOR(7DOWNTO0):="00000001";BEGINIF XUAN="10"THENIF CLR='1'THENCURRENT_STATE<=S0;ELSIF(CLK1'EVENT AND CLK1='1')THENCASE CURRENT_STATE IS--状态机转换WHEN S0=>LIGHT<="ZZZZZZZZ";CURRENT_STATE<=S1;WHEN S1=>LIGHT<=L1;CURRENT_STATE<=S2;WHEN S2=>LIGHT<=L2;CURRENT_STATE<=S3;WHEN S3=>LIGHT<=L3;CURRENT_STATE<=S4;WHEN S4=>LIGHT<=L4;CURRENT_STATE<=S5;WHEN S5=>LIGHT<=L5;CURRENT_STATE<=S6;WHEN S6=>LIGHT<=L6;CURRENT_STATE<=S7;WHEN S7=>LIGHT<=L7;CURRENT_STATE<=S8;WHEN S8=>LIGHT<=L8;CURRENT_STATE<=S9;WHEN S9=>LIGHT<=L9;CURRENT_STATE<=S10;WHEN S10=>LIGHT<=L10;CURRENT_STATE<=S11;WHEN S11=>LIGHT<=L11;CURRENT_STATE<=S12;WHEN S12=>LIGHT<=L12;CURRENT_STATE<=S13;WHEN S13=>LIGHT<=L13;CURRENT_STATE<=S14;WHEN S14=>LIGHT<=L14;CURRENT_STATE<=S15;WHEN S15=>LIGHT<=L15;CURRENT_STATE<=S16;WHEN S16=>LIGHT<=L16;CURRENT_STATE<=S1;END CASE;END IF;END IF;END PROCESS;LED2<=LIGHT;END ART;花样三模块:--用分频器分频后的时钟来显示花样实现--从左至右逐个亮,在从右到左逐个亮LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY hy3ISPORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED3:OUT STD_LOGIC_VECTOR(7DOWNTO0));END ENTITY hy3;ARCHITECTURE ART OF hy3IS--设计状态机,实现花样转换TYPE STATE IS(S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,S11,S12,S13,S14);SIGNAL CURRENT_STATE:STATE;SIGNAL LIGHT:STD_LOGIC_VECTOR(7DOWNTO0);BEGINPROCESS(CLR,CLK1,XUAN)IS--定义花样(1为灯亮,0为灯灭)CONSTANT L1:STD_LOGIC_VECTOR(7DOWNTO0):="10000000";CONSTANT L2:STD_LOGIC_VECTOR(7DOWNTO0):="01000000";CONSTANT L3:STD_LOGIC_VECTOR(7DOWNTO0):="00100000";CONSTANT L4:STD_LOGIC_VECTOR(7DOWNTO0):="00010000";CONSTANT L5:STD_LOGIC_VECTOR(7DOWNTO0):="00001000";CONSTANT L6:STD_LOGIC_VECTOR(7DOWNTO0):="00000100";CONSTANT L7:STD_LOGIC_VECTOR(7DOWNTO0):="00000010";CONSTANT L8:STD_LOGIC_VECTOR(7DOWNTO0):="00000001";CONSTANT L9:STD_LOGIC_VECTOR(7DOWNTO0):="00000010";CONSTANT L10:STD_LOGIC_VECTOR(7DOWNTO0):="00000100";CONSTANT L11:STD_LOGIC_VECTOR(7DOWNTO0):="00001000";CONSTANT L12:STD_LOGIC_VECTOR(7DOWNTO0):="00010000";CONSTANT L13:STD_LOGIC_VECTOR(7DOWNTO0):="00100000";CONSTANT L14:STD_LOGIC_VECTOR(7DOWNTO0):="01000000";BEGINIF XUAN="11"THENIF CLR='1'THENCURRENT_STATE<=S0;ELSIF(CLK1'EVENT AND CLK1='1')THENCASE CURRENT_STATE IS--状态机转换WHEN S0=>LIGHT<="ZZZZZZZZ";CURRENT_STATE<=S1;WHEN S1=>LIGHT<=L1;CURRENT_STATE<=S2;WHEN S2=>LIGHT<=L2;CURRENT_STATE<=S3;WHEN S3=>LIGHT<=L3;CURRENT_STATE<=S4;WHEN S4=>LIGHT<=L4;CURRENT_STATE<=S5;WHEN S5=>LIGHT<=L5;CURRENT_STATE<=S6;WHEN S6=>LIGHT<=L6;CURRENT_STATE<=S7;WHEN S7=>LIGHT<=L7;CURRENT_STATE<=S8;WHEN S8=>LIGHT<=L8;CURRENT_STATE<=S9;WHEN S9=>LIGHT<=L9;CURRENT_STATE<=S10;WHEN S10=>LIGHT<=L10;CURRENT_STATE<=S11;WHEN S11=>LIGHT<=L11;CURRENT_STATE<=S12;WHEN S12=>LIGHT<=L12;CURRENT_STATE<=S13;WHEN S13=>LIGHT<=L13;CURRENT_STATE<=S14;WHEN S14=>LIGHT<=L14;CURRENT_STATE<=S1;END CASE;END IF;END IF;END PROCESS;LED3<=LIGHT;END ART;顶层设计--将以上几个模块整合起来,实现八路彩灯的花样控制LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY caideng ISPORT(CLK:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED:OUT STD_LOGIC_VECTOR(7DOWNTO0));END ENTITY caideng;ARCHITECTURE ART OF caideng ISCOMPONENT fenpinqi--对分频器模块进行定义PORT(CLK:IN STD_LOGIC;CLR:IN STD_LOGIC;CLK1:OUT STD_LOGIC);END COMPONENT fenpinqi;COMPONENT hy1--对花样一模块进行定义PORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED1:OUT STD_LOGIC_VECTOR(7DOWNTO0));END COMPONENT hy1;COMPONENT hy2--对花样二模块进行定义PORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED2:OUT STD_LOGIC_VECTOR(7DOWNTO0));END COMPONENT hy2;COMPONENT hy3--对花样三模块进行定义PORT(CLK1:IN STD_LOGIC;CLR:IN STD_LOGIC;XUAN:IN STD_LOGIC_VECTOR(1DOWNTO0);LED3:OUT STD_LOGIC_VECTOR(7DOWNTO0));END COMPONENT hy3;SIGNAL S:STD_LOGIC;--定义中间变量SIGNAL L1:STD_LOGIC_VECTOR(7DOWNTO0);SIGNAL L2:STD_LOGIC_VECTOR(7DOWNTO0);SIGNAL L3:STD_LOGIC_VECTOR(7DOWNTO0);BEGINU1:fenpinqi PORT MAP(CLK,CLR,S);--对分频器模块进行例化U2:hy1PORT MAP(S,CLR,XUAN,L1);--对花样一模块进行定义U3:hy2PORT MAP(S,CLR,XUAN,L2);--对花样二模块进行例化U4:hy3PORT MAP(S,CLR,XUAN,L3);--对花样三模块进行例化LED<=L1WHEN XUAN="01"ELSE--让LED显示选定的花样L2WHEN XUAN="10"ELSEL3;END ART;四、仿真图:分频器仿真波形:(CLK周期为100ms)CLK为输入,是机器时钟。

八路彩灯控制器实验

八路彩灯控制器实验
首先点亮第一盏灯在第一盏灯熄灭之后点亮第二盏灯在第二盏灯熄灭之后再去点亮第三盏灯依此类推直到点亮第八盏灯看上去的效果就像亮点从第一盏灯依次流向第八盏灯然后全部熄灭反复循环这一过程
八路彩灯控制器
功能描述:首先点亮第一盏灯,在第一盏灯熄 灭之后,点亮第二盏灯,在第二盏灯熄灭之后,再 去点亮第三盏灯,依此类推,直到点亮第八盏灯, 看上去的效果就像亮点从第一盏灯依次流向第八盏 灯,然后全部熄灭,反复循环这一过程。 用中规模计数器设计该八路彩灯控制电路,要求: (1)每盏灯的点亮时间为100~120ms之间; (2)用555定时器设计时钟脉冲; (3)八路彩灯采用八个发光二极管代替。
A0 A1 A2 S1 S2 S3
P'0 P'1 P'2 P'3 P'4 P'5 P'6 P'7
P'0 P'1 P'2
74HC138
P'3
P'4 P'5
1
P'6
P'7
VCC(+5V) 1 R1 10kΩ
8 4 7 3
CLK
R2 10kΩ
C 22µ F
+
6 2 1 5
0.01µF
0
EP ET CLK D 0 Q0 D 1 Q1 D2 Q2 D3 Q3 C RD LD
74HC161 1
1
T≈ (R1+2R2)C×0.7, T≈462ms,
取R1=R2=10kΩ, C=22µ F
74HC138
1 0 1 0 1 0 1 0
A0 A1 A2 S1 S2 S3
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

8路彩灯控制器设计详细讲解(附图)

8路彩灯控制器设计详细讲解(附图)

8路彩灯控制器设计详细讲解(附图)学校:北华大学班级:信息 11-2姓名:王杰学号:28号指导教师:曲萍萍实验日期:2013.5.20—5.24一、软件内容二、实习目的和任务三、设计原理过程四、最终设计方案五、实习心得六、参考文献一、软件内容MAX-Plus?开发软件是美国Altera公司自行设计的第三代课编程逻辑器件的EDA开发工具。

它是一种与器件结构无关的集成设计环境,提供了灵活和高效的界面,允许设计人员选择各种设计输入方法和工具,能够支持Altera公司的MAX、Classic、FLEX以及ACEX系列的PLD器件。

MAX-Plus?开发软件丰富的图形界面和完整的、可即时访问的在线帮助文档,使设计人员能够轻松愉快地学习和掌握MAX-Plus?开发软件,方便地实现设计目的。

MAX-Plus?的特点:1、支持多种操作平台;2、提公开发性的界面;3、提供与PLD 器件结构无关的设计环境;4、提供丰富设计库;5、支持多种输入方式;6、具有高度集成化的开发环境;7、具有模块化的设计工具;8、提供Megacore功能;9、具有Opencore特性MAX-Plus?的主要功能:1、支持PLD器件;2、支持的设计输入方式;3、提供设计编译;4、提供设计验证;5、提供器件的编程和配置MAX-Plus?的设计流程:1、设计输入;2、设计检查;3、设计便衣;4、设计仿真;5、器件编程;6、测试验证;7、修改设计。

二、实习目的和任务实习目的:1、进一步掌握数字电路课程所学的理论知识。

2、熟悉几种常用集成数字芯片的功能和应用,并掌握其工作原理,进一步学会使用其进行电路设计。

3、了解数字系统设计的基本思想和方法,学会科学分析和解决问题。

4、培养认真严谨的工作作风和实事求是的工作态度。

5、数点课程实验是大学中为我们提供的唯一一次动手实践的机会,增强动手实践的能力。

实习任务:设计一个能实现8路彩灯循环显示的彩灯控制器。

具体要求如下:1、8路彩灯的循环花型如下表所示;2、节拍变化的时间为0.5s和0.25s,两种节拍交替运行;3、三种花型要求自动循环显示移存器输出状态编码表节拍序号花型1 花型2 花型3 1 00000000 00000000 00000000 2 10000000 00011000 10001000 3 11000000 00111100 11001100 4 11100000 01111110 11101110 5 11110000 11111111 11111111 6 11111000 11100111 01110111 7 11111100 11000011 00110011 8 11111110 10000001 00010001 9 11111111 10 11111110 11 11111100 12 1111100013 1111000014 1110000015 1100000016 10000000三、设计原理过程(1)总体方案的设计; 在方案一的基础上将整体电路分为四块。

8路炫光彩灯控制器

8路炫光彩灯控制器

炫光彩灯控制器(做一份课设不容易,我就收点文库币,小小慰问一下自己)学院:信息工程学院班级:测控0901班姓名:严海俊学号:200901420同组人:王滨指导老师:2012年11月30日炫光彩灯控制器课程设计一、设计目的1.熟悉常用芯片的性能及用途。

2.进一步掌握数字电路课程所学的理论知识,对所学理论的巩固及验,进一步的学习。

3.了解数字电路设计的基本思想和方法,学会科学分析和解决问题。

4.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。

5.培养认真严谨的工作作风和实事求是的工作态度,检验自己实践的能力,解决问题的能力及现有知识基础上的创新, 为日后走上工作摸索经验。

二、设计原理设计一个电路控制彩灯的循环显示,要求八个二极管排成一行,二极管依次亮。

8路炫光彩灯控制电路功能描述:首先点亮第一盏灯,在第一盏灯熄灭之后,点亮第二盏灯,在第二盏灯熄灭之后,再去点亮第三盏灯,依次类推,直到点亮第八盏灯,看上去的效果就像亮点从第一盏。

即依次流向第八盏灯,然后全部熄灭,反复循环这一过程。

三、方案论证:方案一:原理框图如图1所示。

其中8进制计数电路是利用74LS161N十进制计数器改变而成,通过产生1000的输出信号的状态进行异步置零,完成8进制循环,由一片74LS138芯片进行译码,来输出信号控制彩灯。

其中8进制计数电路是利用74LS161N十进制计数器改变而成,通过产生1000的输出信号的状态进行异步置零,完成8进制循环,由一片74LS138芯片进行译码,来输出信号控制彩灯。

方案二:基本实际思路不变,采用74LS160芯片,但是其输出信号由两片74LS138芯片进行控制,其中一片进行3-8进制译码,另一片控制循环。

本设计采用方案一,只用两片主要芯片74LS161和74LS138,节省资源。

四、电路设计1.多谐振荡器电路采用555定时器,输出一个周期的脉冲。

由多谐振荡器的周期公式T=(R1+2*R2)*Ln2*C可知。

八路循环彩灯控制电路设计

八路循环彩灯控制电路设计

八路循环彩灯控制电路设计八路循环彩灯控制电路设计是一种常见的电子电路设计,用于控制多个彩灯按照一定的循环模式进行亮灭。

在本文中,我们将一步一步回答相关问题,帮助读者了解八路循环彩灯控制电路的设计原理及其实现方式。

第一部分:八路循环彩灯控制电路设计原理介绍八路循环彩灯控制电路是一种利用计时器和逻辑门等元件实现的电子电路,可以实现多个彩灯按照一定的循环模式进行亮灭。

其设计原理主要包括以下几个方面:1.计时器的应用:计时器是八路循环彩灯控制电路中的核心元件之一。

通过计时器的设置,可以控制彩灯的亮灭时间,并实现循环模式。

常见的计时器有555定时器、NE555定时器等。

2.逻辑门的应用:逻辑门是八路循环彩灯控制电路中的另一个重要元件。

逻辑门用于判断彩灯亮灭的逻辑关系,并通过逻辑门的输出来控制彩灯的状态。

常见的逻辑门有与门、或门、非门等。

3.多路控制信号的生成:八路循环彩灯控制电路需要产生多路控制信号,用于控制多个彩灯的亮灭。

这些控制信号可以通过组合逻辑电路、编码器等实现。

第二部分:八路循环彩灯控制电路设计步骤在了解了八路循环彩灯控制电路的设计原理后,我们可以按照以下步骤进行具体的电路设计:1.确定彩灯的数量:首先需要确定需要控制的彩灯数量,以便选择合适的计时器和逻辑门。

2.选择计时器:根据彩灯的控制需求和电路设计的复杂度,选择合适的计时器。

在本设计中,我们选择使用555定时器。

3.设计计时器电路:根据彩灯的亮灭时间和循环模式要求,设计计时器电路。

通过调整计时器的参数,如电容、电阻值,可以控制彩灯的亮灭时间。

4.生成控制信号:根据彩灯的数量,设计多路控制信号的生成电路。

可以使用组合逻辑电路、编码器等进行设计。

5.选择逻辑门:根据彩灯的亮灭逻辑关系,选择合适的逻辑门。

在本设计中,我们选择使用与门。

6.设计逻辑门电路:根据彩灯的亮灭逻辑关系,设计逻辑门电路。

通过逻辑门的输出,控制彩灯的状态。

7.完成电路布局和连线:根据电路设计图,完成电路的布局和连线。

8路输出的彩灯循环控制电路数电说明书(内附电路图)

8路输出的彩灯循环控制电路数电说明书(内附电路图)

绪论数字电子技术已经广泛地应用于计算机,自动控制,电子测量仪表,电视,雷达,通信等各个领域。

例如在现代测量技术中,数字测量仪表不仅比模拟测量仪表精度高,功能高,而且容易实现测量的自动化和智能化。

随着集成技术的发展,尤其是中,大规模和超大规模集成电路的发展,数字电子技术的应用范围将会更广泛地渗透到国民经济的各个部门,并将产生越来越深刻的影响。

随着现代社会的电子科技的迅速发展,要求我们要理论联系实际,数字电子逻辑课程设计的进行使我们有了这个非常关键的机会。

随着科学的发展,人们生活水平的提高,人们不满足于吃饱穿暖,而要有更高的精神享受。

不论是思想,还是视觉,人们都在追求更高的美。

特别使在视觉方面,人们不满足于一种光,彩灯的诞生让人们是视觉对美有了更深的认识。

本设计是一个彩灯控制器,使其实用于家庭、商场、橱窗、舞厅、咖啡厅、公共广场等场所的摆设、装饰、广告、环境净化与美化。

本次课程设计在编写时参考了大量优秀教材,并得到太原科技大学机械电子工程学院测控技术与仪器教研室刘畅老师的大力支持,他提出来许多的意见和建议,在此表示衷心的感谢。

由于编者水平有限,本设计说明书难免出现不妥之处,恳请老师和广大读者给与批评并提出宝贵的意见,我将由衷地欢迎与感激。

编者2010年于太科大目录绪论 (1)一、课程设计题目 (3)二、课程设计目的 (4)三、课程设计基本要求: (4)四、课程设计任务和具体功能 (5)五、工作原理 (5)六、设计总框图 (6)七、电路元器件的说明 (6)八、总电路图 (27)九、调试与检测 (28)十、误差分析: (28)十一、设计心得体会。

(28)附录 (28)参考文献 (28)一、课程设计题目:8路输出的彩灯循环控制电路二、课程设计目的:1、巩固和加强“数字电子技术”、“模拟电子技术”课程的理论知识的理解和应用。

2、掌握电子电路的一般设计方法,了解电子产品研制开发的过程。

3、提高电子电路实验技能及Multisim10仿真软件的使用能力。

8路智能照明控制模块说明书

8路智能照明控制模块说明书

8路智能照明控制模块说明书
一、产品简介
8路智能照明控制模块是一款由8路继电器构成的智能控制模块,可以控制8路灯泡的开关。

它采用了智能控制系统,可以根据环境光线的强弱,自动调节灯泡的亮度,使灯光最大化,节省能源。

二、产品特点
1、具有自动调节灯光亮度的功能,可以根据环境光线的强弱自动调节灯泡的亮度,使灯光最
大化,节省能源。

2、支持远程控制,可以通过手机APP远程控制灯光的开关,方便实用。

3、具有定时开关功能,可以设定灯光的开关时间,自动实现定时开关,更加方便实用。

4、安装简单,无需额外的线路,只需将继电器模块安装在灯光控制盒上,即可实现控制。

三、使用方法
1、安装:将继电器模块安装在灯光控制盒上,接通电源,即可实现控制。

2、远程控制:打开手机APP,连接智能照明控制模块,即可远程控制灯光的开关。

3、定时控制:在手机APP上设定灯光的开关时间,模块会自动实现定时开关,更加方便实用。

8路彩灯控制器设计详细讲解(附图)

8路彩灯控制器设计详细讲解(附图)

8路彩灯控制器设计详细讲解(附图)学校:北华大学班级:信息 11-2姓名:王杰学号:28号指导教师:曲萍萍实验日期:2013.5.20—5.24一、软件内容二、实习目的和任务三、设计原理过程四、最终设计方案五、实习心得六、参考文献一、软件内容MAX-Plus?开发软件是美国Altera公司自行设计的第三代课编程逻辑器件的EDA开发工具。

它是一种与器件结构无关的集成设计环境,提供了灵活和高效的界面,允许设计人员选择各种设计输入方法和工具,能够支持Altera公司的MAX、Classic、FLEX以及ACEX系列的PLD器件。

MAX-Plus?开发软件丰富的图形界面和完整的、可即时访问的在线帮助文档,使设计人员能够轻松愉快地学习和掌握MAX-Plus?开发软件,方便地实现设计目的。

MAX-Plus?的特点:1、支持多种操作平台;2、提公开发性的界面;3、提供与PLD 器件结构无关的设计环境;4、提供丰富设计库;5、支持多种输入方式;6、具有高度集成化的开发环境;7、具有模块化的设计工具;8、提供Megacore功能;9、具有Opencore特性MAX-Plus?的主要功能:1、支持PLD器件;2、支持的设计输入方式;3、提供设计编译;4、提供设计验证;5、提供器件的编程和配置MAX-Plus?的设计流程:1、设计输入;2、设计检查;3、设计便衣;4、设计仿真;5、器件编程;6、测试验证;7、修改设计。

二、实习目的和任务实习目的:1、进一步掌握数字电路课程所学的理论知识。

2、熟悉几种常用集成数字芯片的功能和应用,并掌握其工作原理,进一步学会使用其进行电路设计。

3、了解数字系统设计的基本思想和方法,学会科学分析和解决问题。

4、培养认真严谨的工作作风和实事求是的工作态度。

5、数点课程实验是大学中为我们提供的唯一一次动手实践的机会,增强动手实践的能力。

实习任务:设计一个能实现8路彩灯循环显示的彩灯控制器。

具体要求如下:1、8路彩灯的循环花型如下表所示;2、节拍变化的时间为0.5s和0.25s,两种节拍交替运行;3、三种花型要求自动循环显示移存器输出状态编码表节拍序号花型1 花型2 花型3 1 00000000 00000000 00000000 2 10000000 00011000 10001000 3 11000000 00111100 11001100 4 11100000 01111110 11101110 5 11110000 11111111 11111111 6 11111000 11100111 01110111 7 11111100 11000011 00110011 8 11111110 10000001 00010001 9 11111111 10 11111110 11 11111100 12 1111100013 1111000014 1110000015 1100000016 10000000三、设计原理过程(1)总体方案的设计; 在方案一的基础上将整体电路分为四块。

八路彩灯课程设计--八路彩灯控制器的设计

八路彩灯课程设计--八路彩灯控制器的设计
总逻辑电路原理图移位计数器74ls19420进制循环控制器多谐振荡器彩灯显示输出16进制分频计数器u174163nu34qaqbqcqd14131211rco15abcd3456enpent710loadclr91clk2u274163nqaqbqcqd14131211rco15abcd3456enpent710loadclr91clk2u474194nabcd3456slsr72qaqbqcqd15141312clrclk111s0s1910u574ls04n1a1y2a2y3a3ygnd4y4a5y5a6y6avccu674ls09n1a1b1y2a2b2ygnd3y3a3b4y4a4bvccu774ls32ngnd1a1b1y2a2b2ygnd3y3a3b4y4a4bvccvcc5vvccx105vgndgnd2x125vx225vx325vx425v12131416175gndu1074194nabcd3456slsr72qaqbqcqd15141312clrclk111s0s1910x525vx625vx725vx825vgnd11102324x925v25v202174163nqaqbqcqd14131211rco15abcd3456enpent710loadclr91clk23vcc15gnd25229u8a74s10d19678vccu9lm555cmgndgnd1dis7out3rst4vcc8thr6con5tri2c110ufc210nfr11k?r2174k?vcc5vgnd2627vcc181图2四各单元电路设计1时钟脉冲产生电路用555定时器构成多谐振荡器电路输出便得到一个周期性的矩形脉冲其周期为
课程设计报告
课程:数字电路
题目:八路彩灯控制器的设计
院系:物理与电子信息学院
专业: 2011级电子信息科学与技术

八路循环彩灯控制电路设计

八路循环彩灯控制电路设计

课程设计报告书试验大致思路如下:3.器件管脚分配图:图1(4017管脚分配图)CD4017是十进制计数器,它包含译码器。

计数器在时钟禁止输入为低电平时,在时钟脉冲上升沿进位。

在时钟禁止输入为高电平时,时钟被禁止。

复位输入为高电平时,时钟输入独立运行。

该芯片是一个十进制分配器,只要在其脉冲信号输入端接入脉冲信号,每来一个脉冲信号时,该芯片就会从Q0~~Q9~~Q0循环发出高电平,并且能够保持这个脉冲信号没有结束时,一直是高电平。

由此可知,该芯片能够运用于控制端或者是用于循环彩灯等等方面的应用。

引出端功能符号CO:进位脉冲输渊CP:时钟输入端CR:清除端INH:禁止端Q0-Q9 计数脉冲输出端VDD:正电源VSS:地真值表输入输出CP INH CR Q0-Q9 CO× × H Q0↑L LH ↓L计数计数脉冲为Q0-Q4时:CO=HL × L× H L↓× L×↑L保持计数脉冲为Q5-Q9时:CO=L图2(4069管脚分配图)CD4069又称为六反向器,广泛运用于各种电路设计中。

当Vcc=5~10V时,C110uFU1A 4069BCL_5V U2B 4069BCL_5V R210kΩR1200kΩ1234图4图4为电路中的一部分,是用来产生时钟脉冲的多谐振荡器,它仿真图如下图5整个电路的仿真图如下;。

最新八路彩灯控制器数字逻辑

最新八路彩灯控制器数字逻辑

八路彩灯控制器数字逻辑内容摘要节日彩灯经常被用来增添节日气氛,是日常生活中不可缺少的一个节日装饰为了让彩灯自动的出现图案的变化,因此要设计彩灯控制电路来实现。

本课题要设计的是彩灯控制器电路,使彩灯能自动实现3种不同图案闪现的变化。

从来让彩灯更能使节日气氛活跃。

该控制电路控制器有8组输出,每组驱动4只LED;32只LED组成彩灯图案,图案的状态变换有三种;图案的状态变换能实现定时自动切换;图案的状态变换速度有快、慢2种;控制器具有清零的功能。

关键字:LED 自动控制清零目录一、概述 (1)二、方案设计与论证 (2)三、单元电路设计与分析 (3)1.初态产生电路的设计 (3)2.状态变换产生电路的设计 (4)四、总原理图及元器件清单 (5)五、结论 (7)六、心得体会 (8)七、参考文献 (9)一、概述“左后摆动”图案的状态变换由两种状态构成,即 01010101和10101010两种状态,由于每种状态中不相邻的2位轮流在高、低电平中转换,高电平为亮点,低电平为暗点两种状态相互转化就形成了“左右摆动”图案;“暗点移动”图案的状态变换由4种状态构成,即01111111、10111111 、11011111和11101111四种状态,由于每种状态中都有一位低电平(暗点),而且低电平逐位循环右移,所以这4位状态之间的转换就形成了“暗点移动”图案;“逐渐亮再逐渐暗”图案的状态变换由8种状态构成,即00000000、10000000、1……11111100、11111110、11111111、01111111、00111111、00011111……00000001和00000000这16种状态,在这16种状态中,从状态00000000到状态11111111,LED将从左到右逐次点亮,而从状态11111111到状态00000000,LED将又从左到右逐次点暗,以上8种状态就形成了“逐渐亮再逐渐暗”的图案。

通过74LS161十进制同步计数器,构成一个三进制计数器,产生三种图案的初态。

8路彩灯控制器课程设计

8路彩灯控制器课程设计

8路彩灯控制器课程设计1. 引言8路彩灯控制器是一种用于控制多个彩灯的设备,可以实现对彩灯的亮度、颜色、闪烁等功能进行调节。

本课程设计旨在通过设计和实现一个基于Arduino的8路彩灯控制器系统,让学生了解并掌握彩灯控制器的原理和应用。

本文将从以下几个方面进行详细介绍:系统设计概述、硬件设计、软件设计、系统测试与调试以及课程教学建议。

2. 系统设计概述本系统采用Arduino作为主控芯片,通过与8个彩灯模块的连接,实现对彩灯的控制。

系统具有以下特点:•支持多种亮度和颜色调节方式,如PWM调光和RGB颜色混合。

•支持闪烁效果的设置和控制。

•可以通过串口或无线通信进行远程控制。

3. 硬件设计3.1 硬件组成本系统的硬件组成如下:•Arduino UNO开发板:作为主控芯片,负责接收指令并控制彩灯。

•彩灯模块:共8个,每个模块包含一个彩灯和相应的控制电路。

•电源模块:用于为Arduino和彩灯模块提供电源。

3.2 连接方式将Arduino与彩灯模块连接如下:•将8个彩灯模块的控制引脚分别连接到Arduino的数字IO口。

•将彩灯模块的电源引脚连接到电源模块的输出端。

•将Arduino的GND引脚与电源模块的GND引脚相连。

4. 软件设计4.1 控制逻辑系统的控制逻辑如下:1.初始化系统,设置各个IO口的功能和初始化默认参数。

2.进入主循环,等待指令。

3.接收指令并解析,根据指令类型执行相应操作。

4.执行完毕后返回主循环。

4.2 主要功能实现本系统的主要功能包括:•彩灯亮度调节:通过PWM信号控制彩灯亮度,可以实现从全亮到全暗的无级调光效果。

•彩灯颜色调节:通过RGB三基色混合,可以实现多种颜色的选择和调节。

•彩灯闪烁效果:通过控制彩灯的开关状态和亮度,可以实现闪烁效果。

4.3 程序框架系统的程序框架如下:void setup() {// 初始化系统}void loop() {// 等待指令// 解析指令// 执行操作}5. 系统测试与调试在完成硬件和软件设计后,需要进行系统测试与调试,以确保系统功能正常。

plc8位彩灯循环控制

plc8位彩灯循环控制

二、相关知识 (五)数据处理指令
3.移位指令(1)左移位指令。
左移位指令的表示符号
Page 30
精选可编辑ppt
二、相关知识 (五)数据处理指令
3.移位指令(2)右移位指令
右移位指令的表示符号
Page 31
精选可编辑ppt
二、相关知识 (五)数据处理指令
3.移位指令 左移位和右移位指令的使用
Page 32
Page 37
精选可编辑ppt
二、相关知识
(六)高速计数器与高 速脉冲输出指令
1.高速计数器的工作模式与外部输入信号 (1)高速计数器的工作模式 ① 无外部方向输入信号的单相加/减计数器(模式0~2) ② 有外部方向输入信号的单相加/减计数器(模式3~5) ③ 有加计数时钟脉冲和减计数时钟脉冲输入的双相计数器 (模式6~8) ④ A/B相正交计数器(模式9~11)
(2)中断事件与中断指令。 ① 中断事件。
(三)S7-200 CPU控 制程序的构成
中断号
中断描述
优先级分组 按组排列的优先级
32
HSC3 CV=PV
19
29
HSC4 CV=PV
20
30
HSC1方向改变
离散(中等)
21
31
HSC1外部复原
22
33
HSC2 CV=PV
23
10
定时中断0
0
11
21
22
Page 15
描述 从中断程序有条件返回
允许中断 禁止中断 连接中断事件和中断程序 断开中断事件和中断程序 的连接 清除中断事件
Page 16
精选可编辑ppt
三、应用举例 (二)顺序控制功能图在自动送料装车系统中 的应用 3.根据I/O分配画出PLC接线图

8路彩灯移存型控制器的设计

8路彩灯移存型控制器的设计

8路彩灯移存型控制器的设计一、实验目的1.熟悉数字电路中时序逻辑电路与组合逻辑电路的设计。

2.熟悉并掌握用移位寄存器设计彩灯控制的方法。

二、设计任务与要求设计一个8路彩灯控制系统,要求:1.彩灯明暗变换的节拍为0.25和0.5s,两种节拍交替运行。

2.彩灯演示花型为8种(花型自拟)。

3.彩灯用发光二极管模拟。

三、设计过程设计包括三个模块:1.做出一个可以输出频率分别为2Hz(0.5s)和4Hz(0.25s)的时钟。

利用函数信号发生器,可以直接得到一个4Hz的方波,现在需要考虑设计出2Hz的输出,代码如下:library ieee;use ieee.std_logic_unsigned.all;use ieee.std_logic_1164.all;entity clock2 is %不同输出频率的时钟的实体port(-- Input portsclk : in std_logic;-- Output portsclk25:out std_logic;clk50:out std_logic);end clock2;architecture one of clock2 issignal clk50a:std_logic;signal divide_num:bit; %二进制beginprocess(clk)beginif(clk'event and clk='1')thenif (divide_num='1')thenclk50a<='0';divide_num<='0';elseclk50a<='1';divide_num<='1';end if;end if;end process;clk50<=clk50a;clk25<=clk;end one;编译通过后,将其原件例化,得到我们所需要的模块1器件:2.做出彩灯实现部分,参考书上例题,代码如下:library ieee;use ieee.std_logic_unsigned.all;use ieee.std_logic_1164.all;entity colorlight8 isport(-- Input portsclk0 : in std_logic;reset :in std_logic;-- out1:out std_logic;-- out2:out std_logic;-- out3:out std_logic;-- outnum:out integer;-- outnum1:out integer;cout : out std_logic_vector(7 downto 0));end colorlight8;architecture one of colorlight8 issignal lights:std_logic_vector(7 downto 0):="11111111"; signal conditon_num:integer range 0 to 36 ;begincout<=lights;process(clk0,reset)beginif (reset='0') thenconditon_num<=0;elsif(clk0'event and clk0='1')thenif(conditon_num<36) thenconditon_num<=conditon_num+1;elseconditon_num<=0;end if;end if;end process;process(conditon_num)begincase conditon_num iswhen 0 =>lights<="00000000";when 1=>lights<="10000000";when 2=>lights<="11000000";when 3=>lights<="11100000";when 4=>lights<="11110000";when 5=>lights<="11111000";when 6=>when 7=>lights<="11111110";when 8=>lights<="11111111"; when 9=>lights<="00000000";when 10=>lights<="11000000";when 11=>lights<="00110000";when 12=>lights<="00001100";when 13=>lights<="00000011"; when 14=>lights<="00000000";when 15=>lights<="11110000";when 16=>lights<="00001111"; when 17=>when 18=>lights<="10101010";when 19=>lights<="01010101"; when 20=>lights<="00000000";when 21=>lights<="00011000";when 22=>lights<="00111100";when 23=>lights<="01111110";when 24=>lights<="11111111"; when 25=>lights<="00000000";when 26=>lights<="10001000";when 27=>lights<="01000100";when 28=>lights<="00100010";when 29=>lights<="00010001"; when 30=>lights<="00000000";when 31=>lights<="11110000";when 32=>lights<="00111100";when 33=>lights<="00001111"; when 34=>lights<="00000000";when 35=>lights<="10011001";when 36=>lights<="01100110";end case;end process;end one;同理,将其例化:3.做出选择频率的装置:在模块2里,每两个花型之间,用‘00000000’分界,所以以这个为标志,做为选择频率的分界点——即当出现‘00000000’的时候,反馈给选频模块,使它可以变换频率,代码如下:library ieee;use ieee.std_logic_unsigned.all;use ieee.std_logic_1164.all;entity selclock isport(-- Input portsclk25:in std_logic;--clk50:in std_logic;cin:in std_logic_vector(7 downto 0);clock0:out std_logic);end selclock;architecture one of selclock issignal num:std_logic;signal temp:std_logic;begintemp<=cin(7) or cin(6) or cin(5) or cin(4) or cin(3) or cin(2) or cin(1) or cin(0);process(temp)beginif(temp'event and temp='0')thennum<=not num;end if;end process;with num selectclock0<=clk25 when '0',clk50 when '1','1' when others;end one;例化结果如下:现在连接电路:编译通过,进行仿真!四、仿真结果与预期效果一样,八种花型,每两种的频率发生一次改变。

8路LED彩灯控制电路 设计报告

8路LED彩灯控制电路 设计报告

《8路LED彩灯控制》课程设计报告专业:班级:姓名:学号:同组成员:指导教师:2011年 1 月 8 日目录一、课程设计目的 (3)二、课程设计题目描述和要求 (3)三、课程设计报告内容 (3)3.1 器件选择 (3)3.2 实验电路图 (3)3.3 原理分析 (4)3.3.1 脉冲源产生模块 (4)3.3.2 定时器模块 (4)3.3.3 寄存器模块 (4)3.4 具体思路和设计过程 (4)3.4.1 设计思路 (4)3.4.2 具体设计过程 (5)四、焊接与调试 (6)五、总结体会 (6)一、课程设计目的随着社会的发展,人民生活水平不断提高,现代人们越来越注重节能和装饰,因此LED作为一种超节能产品在实际生活中得到广泛应用,它不仅工作电压低,而且使用寿命很长,所以它受到大多数灯光装饰师的青睐。

本设计用8路led设计出的彩灯控制电路具有:低能耗、花色多、性能忧、实用美观等特点,实为家居装饰之首选。

而具体的课程设计(包括电路图设计、电路板焊接、安装与调试),既可以提高我们的动手能力和实际分析问题能力,还有助于我们加深对数字电路的认识和了解,进一步激发学习的兴趣,为后续学习打下坚实基础。

二、课程设计题目描述和要求本设计中的8路LED彩灯控制电路,由555定时器、移位寄存器、计数器等器件构成,主要功能是实现三种花色的交错变换,8路led灯的亮和灭组合起来形成有规律的花色,给人以美感,适用于彩灯装饰。

三.课程设计报告内容3.1 器件选择555定时器一片、十六进制计数器74ls191两片、双向移位寄存器74ls194两片、0.01uf的电容和2.2uf的电容各一个、47k电阻两个、非门74ls04一个、与非门74ls20六个、导线若干。

3.2 实验电路图3.3 原理分析3.3.1 脉冲源产生模块实际上是由555定时器和电容、电阻构成的多谐振荡器,它们负责为后面的各个芯片提供时时脉冲。

脉冲周期T=(R1+R2)Cln2=0.33s3.3.2 定时器模块两块十六进制74ls191计数器接成48进制计数器,上面一块芯片的Q0、Q2、Q3端为后面的移位寄存器提供变换的穿行输入信号;下面一块芯片和中间的非门、与非门共同构成数据处理中端,负责对上方各输出端的信号脉冲进行处理,并且传至寄存器。

8路彩灯控制器的设计说明书

8路彩灯控制器的设计说明书

word格式整理版电子技术(下)课程设计任务书目录摘要 (1)1 绪论 (2)2 总体方案设计 (3)2.1 振荡电路部分 (3)2.2 数列循环部分 (3)2.3 数列显示部分 (3)3 单元模块设计 (4)3.1 脉冲信号产生模块 (6)3.2 快慢节拍控制电路模块 (7)3.3 计数电路模块 (8)3.4 花型控制电路模块 (9)4 系统调试和功能 (36)4.1 系统调试 (36)4.2 功能显示 (37)5 分析和总结 (43)附录一:工具清单 (37)附录二:元器件清单 (37)附录三:主要元器件的引脚图和功能表 (37)摘要通过设计多路彩灯系统来加深对主要器件的理解与应用。

本实验主要由振荡电路产生秒脉冲信号,经分频电路、计数电路、花型控制和显示电路后,由发光二极管模拟输出。

通过系统的设计、元件的选取、参数的选取等,来加深对各主要器件引脚分布、功能等的理解,从而提高电子设计能力的整体水平。

关键词:振荡电路;脉冲信号;分频电路;计数电路;花环电路;彩灯;AbstractThrough the design of many changing lights to deepen our understanding and application of many main parts of integrated circuit. This experiment produce seconds pulse signal mainly by the oscillating circuit .And through the points frequency circuit, count circuit, control and display circuit patterns to output by the lights. Through the design of the system, the selection, the parameters of the component selection, etc, to deepen our understanding of the main device pins distribution and function, so as to improve the overall level of electronic design ability.Key words:Oscillating circuit; The pulse signal; Points frequency circuit; Counts circuit; Garland circuit; Lights;第一章绪论随着科学的发展,人们生活水平的提高,人们不满足于吃饱穿暖,而要有更高的精神享受。

8路彩灯控制器课程设计

8路彩灯控制器课程设计

8路彩灯控制器课程设计一、课程目标知识目标:1. 学生能理解8路彩灯控制器的基本原理,掌握相关电子元件的功能和连接方式。

2. 学生能描述8路彩灯控制器的电路图,并解释其工作原理。

3. 学生了解8路彩灯控制器在现实生活中的应用,并能够举例说明。

技能目标:1. 学生能够正确使用工具和仪器进行8路彩灯控制器的组装和调试。

2. 学生通过动手实践,掌握基本的电路故障排查和解决问题的方法。

3. 学生能够运用所学知识,设计简单的8路彩灯控制程序,实现不同的灯光效果。

情感态度价值观目标:1. 培养学生对电子制作和编程的兴趣,激发创新意识和探索精神。

2. 培养学生团队协作意识,学会与他人共同解决问题,提高沟通与表达能力。

3. 增强学生对科技与生活的联系的认识,培养环保意识和责任感。

课程性质分析:本课程属于电子技术与应用领域,结合实际操作,注重培养学生的动手能力、创新思维和实际应用能力。

学生特点分析:初中年级的学生对新鲜事物充满好奇心,动手能力强,但理论知识相对薄弱,需要通过实践操作来加深理解。

教学要求:1. 理论与实践相结合,注重培养学生的实际操作能力。

2. 教学过程中注重启发式教学,引导学生主动探究、发现问题、解决问题。

3. 关注学生的个体差异,提供个性化的辅导,使每个学生都能在课程中收获成长。

二、教学内容1. 电子元件认知:介绍常用电子元件如电阻、电容、二极管、三极管等,结合教材相关章节,让学生了解其功能及在8路彩灯控制器中的作用。

2. 电路原理:分析8路彩灯控制器的电路图,讲解各部分电路的功能及相互关系,对应教材中电路分析的内容。

3. 组装与调试:指导学生按照电路图组装8路彩灯控制器,学习焊接、接线等基本技能,参照教材相关章节进行实践操作。

4. 编程与控制:介绍简单的编程方法,使学生能够通过编程实现不同的灯光效果,结合教材中编程与控制部分的内容进行教学。

5. 故障排查:教授学生如何分析并解决8路彩灯控制器在运行过程中可能出现的故障,运用教材中故障排查技巧进行实践。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

炫光彩灯控制器
(做一份课设不容易,我就收点文库币,小小慰问一下自己)
学院:信息工程学院
班级:测控0901班
姓名:严海俊
学号:200901420
同组人:王滨
指导老师:
2012年11月30日
炫光彩灯控制器课程设计
一、设计目的
1.熟悉常用芯片的性能及用途。

2.进一步掌握数字电路课程所学的理论知识,对所学理论的巩固及验,进一步的学习。

3.了解数字电路设计的基本思想和方法,学会科学分析和解决问题。

4.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。

5.培养认真严谨的工作作风和实事求是的工作态度,检验自己实践的能力,解决问题的能力及现有知识基础上的创新, 为日后走上工作摸索经验。

二、设计原理
设计一个电路控制彩灯的循环显示,要求八个二极管排成一行,二极管依次亮。

8路炫光彩灯控制电路功能描述:首先点亮第一盏灯,在第一盏灯熄灭之后,点亮第二盏灯,在第二盏灯熄灭之后,再去点亮第三盏灯,依次类推,直到点亮第八盏灯,看上去的效果就像亮点从第一盏。

即依次流向第八盏灯,然后全部熄灭,反复循环这一过程。

三、方案论证:
方案一:原理框图如图1所示。

其中8进制计数电路是利用74LS161N十进制计数器改变而成,通过产生1000的输出信号的状态进行异步置零,完成8进制循环,由一片74LS138芯片进行译码,来输出信号控制彩灯。

其中8进制计数电路是利用74LS161N十进制计数器改变而成,通过产生1000的输出信号的状态进行异步置零,完成8进制循环,由一片74LS138芯片进行译码,来输出信号控制彩灯。

方案二:基本实际思路不变,采用74LS160芯片,但是其输出信
号由两片74LS138芯片进行控制,其中一片进行3-8进制译码,另一片控制循环。

本设计采用方案一,只用两片主要芯片74LS161和74LS138,节省资源。

四、电路设计
1.多谐振荡器电路
采用555定时器,输出一个周期的脉冲。

由多谐振荡器的周期公式T=(R1+2*R2)*Ln2*C可知。

要求灯亮的时间为100ms-120ms,所以输出脉冲的周期也为100ms-120ms之间。

本实验选取的6欧的R1,5欧的R2,10uF的电容,所以输出周期为111.7ms的脉冲。

多谐振荡器电路图如图2。

图2 多谐振荡器示意图
图3 多谐振荡器电路输出信号调试图
2.8进制计数电路
本设计采用74LS16110进制计数器,输出端口为QA,QB,QC,QD(QD 为高位)。

产生0000至1111十六个信号,由于实验内容要求8盏流水灯点亮与熄灭,所以只需利用0000到0111八个信号即可,由于74LS161芯片是异步置数,所以在输出信号为1000时利用反向器74LS04把QD端口的信号反馈到LD`端,把初始信号重新置为0000,完成八进制循环输出。

ENT,ENP端口均接在高电平VCC端,使芯片处于工作状态。

CLR 端接在高电平VCC端,不产生置零作用。

QD端经过74LS04反相器输入到LOAD(LD)端,完成八进制循环作用,CLK端接受多谐振荡器输出的脉冲。

74LS161芯片电路图如图4。

图4 74LS161芯片连接示意图
3.译码器电路
本设计译码器电路采用74LS138芯片,有芯片使能控制端G1,G2A,G2B3个端口,A、B、C三个信号输入端口以及Y0-Y7八个输出端口。

G1口接74LS161芯片QD端经过反相器输出的信号,当74LS161芯片输出信号为0000-0111是,G1口均为高电平,74LS138芯片开启;当74LS161芯片输出信号为1000时,QD端输出高电平,G1口接受低电平,74LS138芯片关闭达到一轮流水灯亮过之后全部熄灭的效果。

G2A,G2B口均接地。

A、B、C三个端口分别接受从161芯片QA、QB、QC三个端口输出的信号,译为0-7八个数字信号,分别从Y0-Y7八
个端口输出。

译码器电路图如图5所示。

图5 译码器电路连接示意图
4.二极管电路
驱动电路是接受74LS138芯片8个输出口的信号经过74LS04芯片反向输出分别连接在8个发光二极管上,每个二极管都串联上一个100欧的电阻,八个输出共同接地。

电路图如图6所示。

图6 二极管电路连接示意图
设计要求灯管点亮的时间为100ms-120ms,二极管发光时间电路调试图如图7。

图7 二极管发光时间调试电路
由图可以看出,发光二级管的发光时间为109.848ms,符合设计要求
图8 总电路图
五、PCB制板
图9 PCB循环彩灯原理图
图10 ERC电气检查无误
图11 PCB封装制板后的图
六、元件的封装表
10个电阻封装都是:AXIAL0.3
8个发光二极管封装都是:SIP-2
2个电容封装都是:RAD0.2
555定时器封装:DIP8
74LS04N封装:DIP16
74LS138封装:DIP-16
74LS160封装:DIP-16
74LS04封装:DIP-14
七、课设心得
此两周的课程设计实习,使我认识到扎实的理论知识室非常重要的,这一点在设计电路图时得到了充分的证明。

课程设计刚开始,拿着选定的题目不知如何入手。

毕竟课程设计不同于实验课,电路图
都要自己设计。

在设计过程中,既有用过的芯片,又有没用过的,只能自己查表,分析功能。

即学即用。

通过这次课程设计,收获很大。

对电子元器件的原理理解有了进一步提高,对电子技术知识融会贯通有了进一步提高。

在对实际问题的抽象处理问题上更有自信了。

在实验环节中,动手能力也得到了提高。

在布局,连线,焊接过程中需要细心和耐心。

在今后的设计中,思维应该更开放,要更大胆地去做。

通过查资料、分析资料及请教老师和同学等多种途径,独立解决问题。

同时,也培养了我认真,严谨的工作作风。

相关文档
最新文档