彩灯控制器设计与实现
- 格式:doc
- 大小:232.00 KB
- 文档页数:4
彩灯控制器设计及实验报告三篇篇一:多路彩灯控制器的设计一课程设计题目(与实习目的)(1)题目:多路彩灯控制器(2)实习目的:1.进一步掌握数字电路课程所学的理论知识。
2.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。
3.了解数字系统设计的基本思想和方法,学会科学分析和解决问题。
4.培养认真严谨的工作作风和实事求是的工作态度。
5.作为课程实验与毕业设计的过度,课程设计为两者提供了一个桥梁。
二任务和要求实现彩灯控制的方法很多,如EPROM编程、RAM编程、单板机、单片机等,都可以组成大型彩灯控制系统。
因为本次实习要求设计的彩灯路数较少,且花型变换较为简单,故采用移位寄存器型彩灯控制电路。
(1)彩灯控制器设计要求设计一个8路移存型彩灯控制器,要求:1.彩灯实现快慢两种节拍的变换;2.8路彩灯能演示三种花型(花型自拟);3.彩灯用发光二极管LED模拟;4.选做:用EPROM实现8路彩灯控制器,要求同上面的三点。
(2)课程设计的总体要求1.设计电路实现题目要求;2.电路在功能相当的情况下设计越简单越好;3.注意布线,要直角连接,选最短路径,不要相互交叉;4.注意用电安全,所加电压不能太高,以免烧坏芯片和面包板。
三总体方案的选择(1)总体方案的设计针对题目设计要求,经过分析与思考,拟定以下二种方案:方案一:总体电路共分三大块。
第一块实现花型的演示;第二块实现花型的控制及节拍控制;第三块实现时钟信号的产生。
主体框图如下:方案二:在方案一的基础上将整体电路分为四块。
第一块实现花型的演示;第二块实现花型的控制;第三块实现节拍控制;第四块实现时钟信号的产生。
并在部分电路的设计上与方案一采用了完全不同的方法,如花型的控制。
主体框图如下:(2)总体方案的选择方案一与方案二最大的不同就在,前者将花型控制与节拍控制两种功能融合在一起,是考虑到只要计数器就可以实现其全部功能的原因,且原理相对简单。
彩灯控制器课程设计一、课程目标本节“彩灯控制器课程设计”旨在通过实践操作和理论学习,实现以下知识目标、技能目标和情感态度价值观目标:1. 知识目标:- 学生能理解彩灯控制器的基本原理和电子元件功能。
- 学生能掌握彩灯控制器的电路连接和编程方法。
- 学生了解彩灯控制器在生活中的应用及其重要性。
2. 技能目标:- 学生能运用所学知识,独立完成彩灯控制器的组装和编程。
- 学生能够通过小组合作,解决在制作彩灯控制器过程中遇到的问题。
- 学生能够运用彩灯控制器设计出具有创意的灯光效果。
3. 情感态度价值观目标:- 培养学生对电子科技的兴趣,激发学生的创新意识和探索精神。
- 培养学生合作、分享、尊重他人意见的良好品质。
- 增强学生的环保意识,让学生认识到节能环保的重要性。
本课程针对初中年级学生,结合电子技术、计算机编程等学科知识,注重实践与理论相结合。
通过本课程的学习,学生能够将所学知识应用于实际操作中,培养创新思维和动手能力。
课程目标具体、可衡量,便于教师进行教学设计和评估,确保学生能够达到预期学习成果。
“二、教学内容”作为标题标识,再开篇直接输出。
二、教学内容根据课程目标,本节“彩灯控制器课程设计”的教学内容将从以下三个方面进行组织:1. 理论知识:- 介绍彩灯控制器的基本原理,包括电路组成、工作原理等。
- 讲解常用电子元件的功能及在彩灯控制器中的应用,如电阻、电容、二极管、三极管等。
- 分析编程控制彩灯的基本方法,涉及编程语言基础和逻辑控制。
相关教材章节:第三章《电子元件及应用》、第四章《数字电路基础》、第六章《编程语言入门》。
2. 实践操作:- 指导学生进行彩灯控制器的组装,熟悉电路连接和调试。
- 带领学生进行编程练习,掌握控制彩灯亮灭、闪烁、颜色变化等基本操作。
- 组织学生进行小组合作,设计具有创意的彩灯控制器项目。
实践操作内容与教材第七章《实践项目:彩灯控制器》相呼应。
3. 应用拓展:- 探讨彩灯控制器在生活、节日装饰、舞台灯光等领域的应用。
实验名称:彩灯控制电路设计与实现实验任务要求:用VHDL 语言设计并实现一个彩灯控制电路,仿真并下载验证其功能。
彩灯有两种工作模式 ,可通过拨码开关或按键进行切换。
(1)单点移动模式:一个点在8个发光二极管上来回的亮(2)幕布式:从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,依次往复设计思路和过程:可以将两种模式分开设计,再用一个控制钮进行切换。
两种模式本质一样,都是循环点亮灯。
可以用状态机设计。
首先明确设计对象的外部特征,输入信号只有时钟信号cp 和切换按钮此处取a;输出为检测的八个彩灯亮暗。
根据设计对象的操作控制步来确定有限状态机的状态。
取初始状态为s0,第一种模式共有14种状态循环,因而可取状态s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13;第二种模式有八种状态,可共用第一种模式中的前八种状态,即为s0,s1,s2,s3,s4,s5,s6,s7。
根据题目要求的循环可以写出各个状态的下一状态,写完整个循环为止。
切换按钮可以用一个If 来总领。
单点移动模式:S0 S5S13 S7S8 S9 S10 S11 S1 S2 S3 S4S12 S6幕布式:流程图:彩灯电路设计语言:library ieee;use ieee.std_logic_1164.all;entity pmd isport(a,cp:in std_logic; %输入信号deng: out std_logic_vector(7 downto 0) %输出灯信号);end pmd;architecture arch of pmd istype all_state is (s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13);%枚举状态机状态 S0 S7 S6 S1 S5 S4S2 S3signal state:all_state; %状态转换符号begin %开始程序process(cp)beginif (cp'event and cp='1')then %时钟信号开始计数if(a='1')then %单点循环模式case state iswhen s0=> state<=s1;deng<="00000001"; %状态循环when s1=> state<=s2;deng<="00000010";when s2=> state<=s3;deng<="00000100";when s3=> state<=s4;deng<="00001000";when s4=> state<=s5;deng<="00010000";when s5=> state<=s6;deng<="00100000";when s6=> state<=s7;deng<="01000000";when s7=> state<=s8;deng<="10000000";when s8=> state<=s9;deng<="01000000";when s9=> state<=s10;deng<="00100000";when s10=> state<=s11;deng<="00010000";when s11=> state<=s12;deng<="00001000";when s12=> state<=s13;deng<="00000100";when s13=> state<=s0;deng<="00000010";when others =>state<=s0;deng<="00000000";end case;Else %切换为幕布式case state iswhen s0=> state<=s1;deng<="00011000";when s1=> state<=s2;deng<="00111100";when s2=> state<=s3;deng<="01111110";when s3=> state<=s4;deng<="11111111";when s4=> state<=s5;deng<="01111110";when s5=> state<=s6;deng<="00111100";when s6=> state<=s7;deng<="00011000";when s7=> state<=s0;deng<="00000000";when others =>state<=s0;deng<="00000000";end case;end if;end if;end process; end arch;输入波形:添加五十分频后的仿真程序:library ieee;use ieee.std_logic_1164.all;entity cd isport(a,clk:in std_logic;q: out std_logic_vector(7 downto 0));end cd;architecture a of cd istype all_state is (s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13);signal state:all_state;signal cnt : integer range 0 to 24999999; %50分频状态signal clk_tmp : std_logic;beginprocess(clk)Begin %开始运行分频信号if (clk'event and clk='1') thenif cnt=24999999 thencnt<=0;clk_tmp<= not clk_tmp;elsecnt<=cnt+1;end if;end if;if (clk_tmp'event and clk_tmp='1')then %分频后运行彩灯程序if(a='1')thencase state iswhen s1=> state<=s2;q<="00000010";when s2=> state<=s3;q<="00000100";when s3=> state<=s4;q<="00001000";when s4=> state<=s5;q<="00010000";when s5=> state<=s6;q<="00100000";when s6=> state<=s7;q<="01000000";when s7=> state<=s8;q<="10000000";when s8=> state<=s9;q<="01000000";when s9=> state<=s10;q<="00100000";when s10=> state<=s11;q<="00010000";when s11=> state<=s12;q<="00001000";when s12=> state<=s13;q<="00000100";when s13=> state<=s0;q<="00000010";when others =>state<=s0;q<="00000000";end case;elsecase state iswhen s0=> state<=s1;q<="00011000";when s1=> state<=s2;q<="00111100";when s2=> state<=s3;q<="01111110";when s3=> state<=s4;q<="11111111";when s5=> state<=s6;q<="00111100";when s6=> state<=s7;q<="00011000";when s7=> state<=s0;q<="00000000";when others =>state<=s0;q<="00000000";end case;end if;end if;end process;end a;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity cd isport(a,clk:in std_logic;q: out std_logic_vector(7 downto 0));end cd;architecture a of cd istype all_state is (s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13); signal state:all_state;beginprocess(clk)beginif (clk'event and clk='1') thenif(a='1') thencase state iswhen s0=> state<=s1;q<="00000001";when s1=> state<=s2;q<="00000010";when s2=> state<=s3;q<="00000100";when s3=> state<=s4;q<="00001000";when s4=> state<=s5;q<="00010000";when s5=> state<=s6;q<="00100000";when s6=> state<=s7;q<="01000000";when s7=> state<=s8;q<="10000000";when s8=> state<=s9;q<="01000000";when s9=> state<=s10;q<="00100000";when s10=> state<=s11;q<="00010000";when s11=> state<=s12;q<="00001000";when s12=> state<=s13;q<="00000100";when s13=> state<=s0;q<="00000010";when others =>state<=s0;q<="00000000";end case;elsecase state iswhen s0=> state<=s1;q<="00011000";when s1=> state<=s2;q<="00111100";when s2=> state<=s3;q<="01111110";when s3=> state<=s4;q<="11111111";when s4=> state<=s5;q<="01111110";when s5=> state<=s6;q<="00111100";when s6=> state<=s7;q<="00011000";when s7=> state<=s0;q<="00000000";when others =>state<=s0;q<="00000000";end case;end if;end if;end process;end a;故障及问题分析:1.编写这个程序时,很自然地想到用一个输入信号控制两种模式的切换,但把这个输入放在哪里,如何放,开始出现了几种想法。
第2章节日彩灯控制器的设计一: 设计目的1.了解节日彩灯控制器的工作原理2.掌握按键输入的消抖处理程序和延时程序的编写3.掌握独立电源设计方法及原理4.掌握电路板的实物焊接二: 设计要求设计4个按键K1, K2, K3,K4K1—上, 按此键则灯由上向下流动。
K2—下, 按此键则灯由下向上流动。
K3—全亮, 按此键则灯全亮。
K4—停止, 按此键则停止流动, 所有灯为暗。
三: 总体方案设计与选择的论证随着人们生活环境的不断改善和美化, 在许多场合可以看到彩色霓虹灯。
LED彩灯由于其丰富的灯光色彩, 低廉的造价以及控制简单等特点而得到了广泛的应用, 用彩灯来装饰街道和城市建筑物已经成为一种时尚。
但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现, 电路结构复杂、功能单一, 这样一旦制作成品只能按照固定的模式闪亮, 不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。
这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。
此外从功能效果上看, 亮灯模式少而且样式单调, 缺乏用户可操作性, 影响彩灯效果, 因此有必要对现有的彩灯控制器进行改进。
(一)设计方案彩灯控制器大致可分为两种方案实现。
一种是利用电子电路装置控制, 另一种是采用单片机控制。
方案一:根据设计任务要求介绍的彩灯控制电路的基本组成, 可以确定彩灯控制器应由振荡电路、计数/时序分配电路、移位位寄存器和彩灯显示五部分组成。
其框图如图1-1所示。
方案二:本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计, 来达到本设计的要求。
其硬件构成框图如图1-2所示, 以单片机为核心控制, 由单片机最小系统(时钟电路、复位电路、电源)、按键控制电路、LED发光二极管和5V直流电源电路组成此设计方案中单片机的P1口接5路按键控制电路, 实现彩灯花型的切换功能;单片机的P1口引脚接上四个按钮开关以实现对彩灯闪烁频率的控制, 即实现了快慢两种节拍实现花型的变换;单片机上的P2口接二十四路LED发光二极管组成彩灯电路, 显示彩灯循环情况。
《数字逻辑电路》实训报告专业:学生姓名:学号:指导教师:彩灯控制电路的设计与制作1 整机设计设计要求(1)设置外部操作开关,它具有控制彩灯亮点的右移、左移、全亮及全灭等功能;(2)彩灯亮点移动时间间隔取1秒;(3)彩灯的布图形状随意;(4)让学号的最后两位编码点亮相应的灯,能实现循环左右移,可控制彩灯亮灭速度。
1.1.1设计任务两片74LS194移位寄存器构成核心部件,74LS194的S0、S1控制彩灯循环的方向,即左移右移,控制端MR可实现清零功能;一片555构成多谐振荡器输出时间脉冲;设计制作一个8路彩灯控制器。
1.1.2性能指标要求彩灯能实现循环左移,右移,全亮,全灭等基本功能,和预置数的扩展功能。
整机实现的基本原理及框图1.2.1基本原理由555构成的多谐振荡器输出时间脉冲提供给74LS194;通过1个拨码开关控制2个74LS194的清零端,实现全亮、全灭功能;通过两组4位共8个拨码开关来控制8个彩灯的预置;通过2个拨码开关来选择S1,S0的状态,分别实现彩灯的左右移动、保持和预置的功能。
1.2.2总体框图2 各功能电路实现原理及电路设计由555构成的多谐振荡器主要用来产生脉冲信号。
555定时器是一种模拟和数字功能相结合的中规模集成器件。
一般用双极性工艺制作的称为555,用CMOS工艺制作的称为7555,除单定时器外,还有对应的双定时器556/7556。
555定时器的电源电压范围宽,可在5~16V工作,最大负载电流可达200mA,7555可在3~18V工作,最大负载电流可达4mA,因而其输出可与TTL、CMOS或者模拟电路电平兼容。
555定时器成本低,性能可靠,只需要外接几个电阻、电容,就可以实现多谐振荡器、单稳态触发器及施密特触发器等脉冲产生与变换电路。
按一下运行键后,可看见输出端是出现高低电平交替,时间间隔是由电路中的电容和电阻决定。
两片74LS194芯片来实现彩灯的左右移功能。
3 制作与调试过程制作:首先读懂老师给的基本原理图后,通过查找资料自行加上时钟信号发生器部分。
学士学位毕业设计(论文)彩灯控制器的设计与实现学生姓名:xxx学号:xxx指导教师:xxx所在学院:信息技术学院专业:电气工程及其自动化中国·大庆2015年05月摘要摘要本文列出了几种常用单片机并逐个分析其优、缺点。
最终根据设计题目的特点选择了AT89S52单片机作为核心处理器。
显示部分使用32个LED小灯并排列成心形,利用时钟电路延时,加入USB接口作为电源,再把它们用软件编程后发出指令,达到设计要求,实现了利用单片机控制LED小灯完成八种闪烁效果。
关键词:单片机 LED小灯ABSTRACTABSTRACTThis article lists several common microcontroller and individually analyze their advantages and disadvantages. Chose the AT89S52 microcontroller as the core processor according to the design characteristics of the subject. LED display section 32 using a small lamp and arranged in heart shape. After then they send out software programming instructions, meet the design requirements, we can use the MCU to complete the eight LED small light flickering effect.Keywords: SCM LED lights目录摘要................................................... I ABSTRACT .............................................. II 目录................................................. III 前言................................................... V 1 绪论. (1)1.1课题的研究背景及意义 (1)1.2基于单片机的彩色小灯特点 (1)2 系统方案的论证与选择 (2)2.1方案一 (2)2.2方案二 (2)2.3方案三 (2)3 单片机的介绍 (4)3.1单片机的简介 (4)3.2单片机的发展史 (4)3.3单片机的工作过程 (5)3.4单片机的应用 (5)3.5几种常见的单片机 (6)4系统的硬件设计 (8)4.1系统总体框图 (8)4.2单片机最小系统设计 (8)4.3供电电路 (14)4.4LED模块 (14)5系统的软件设计 (16)5.1主程序流程图 (16)5.2闪烁效果实现 (16)结论 (18)参考文献 (19)致谢 (20)附录1 (21)前言现在的时代是个技术不断革新的时代,更多的科技走进了人们的生活。
LED彩灯控制器设计课程设计一、课程目标知识目标:1. 学生能理解LED工作原理,掌握LED彩灯控制器的电路构成及功能。
2. 学生能描述常见的电子元件,如电阻、电容、二极管等,并了解它们在LED 彩灯控制器中的作用。
3. 学生能解释程序控制LED灯的原理,掌握基本的编程知识,如循环、条件语句等。
技能目标:1. 学生能够运用所学知识设计简单的LED彩灯控制器电路,并进行调试。
2. 学生能够编写简单的程序,实现LED灯的颜色变换、闪烁等效果。
3. 学生能够通过小组合作,解决设计过程中遇到的问题,提高团队协作能力。
情感态度价值观目标:1. 学生能够培养对电子技术的兴趣,提高创新意识和实践能力。
2. 学生在学习过程中,能够树立安全意识,遵循操作规程,养成良好的实验习惯。
3. 学生能够认识到科技改变生活,增强社会责任感和使命感。
本课程针对初中年级学生,结合电子技术相关知识,注重理论与实践相结合,培养学生的动手能力、创新意识和团队协作精神。
课程目标具体、可衡量,便于学生和教师在教学过程中明确预期成果,为后续教学设计和评估提供依据。
二、教学内容1. LED工作原理及特性:讲解LED的基本结构、发光原理及参数,如电压、电流、亮度等。
相关教材章节:第二章第三节“发光二极管”2. 常见电子元件介绍:介绍电阻、电容、二极管等元件的作用及选型,分析它们在LED彩灯控制器中的应用。
相关教材章节:第一章“电子元件基础”3. LED彩灯控制器电路设计:讲解电路原理图绘制,介绍控制器的核心元件及其功能。
相关教材章节:第三章“数字电路设计基础”4. 程序设计基础:介绍基本的编程知识,如循环、条件语句等,并通过实例讲解如何控制LED灯的颜色变换、闪烁等效果。
相关教材章节:第五章“简易编程与控制”5. 实践操作:指导学生动手搭建LED彩灯控制器电路,编写程序,实现LED 灯的控制。
相关教材章节:第六章“实践操作与调试”6. 小组讨论与展示:组织学生进行小组合作,解决设计过程中遇到的问题,并展示作品。
实验六循环彩灯控制器的设计一、设计目的1、学习用状态机设计特色电路;2、牢固掌握用VHDL语言编写状态机程序的方法和技巧。
二、设计要求1、编写循环彩灯控制器的VHDL源程序;2、在MAX+PLUSII上进行编译、综合、适配、引脚锁定、下载测试;3、在MAX+PLUSII上进行波形仿真的测试;4、写出设计性实验报告。
三、设计提示1、设计一种楼梯照明控制器,该控制器控制红、绿、黄三个发光管循环发光,要求红灯亮2秒,绿灯亮3秒,黄灯亮1秒。
2、引脚锁定及下载测试提示:如果目标器件是EPF10K10,自行锁定引脚。
3、设计的VHDL程序所用时钟频率为1HZ。
四、实验报告要求根据以上的实验内容写出实验报告,包括程序设计、软件编译、仿真分析、硬件测试和详细实验过程;设计原程序,程序分析报告、仿真波形图及其项目分析。
程序清单:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CAIDENG ISPORT(CLK,RST:IN STD_LOGIC;R,G,Y:OUT STD_LOGIC);END CAIDENG;ARCHITECTURE one OF CAIDENG ISTYPE STATE_TYPE IS(S0,S1,S2,S3,S4,S5);SIGNAL STATE:STATE_TYPE;BEGINPROCESS(CLK,RST)BEGINIF RST='1'THEN STATE<=S0;ELSIF CLK'EVENT AND CLK='1' THEN CASE STATE ISWHEN S0=>R<='1';G<='0';Y<='0';STATE<=S1;WHEN S1=>R<='1';G<='0';Y<='0';STATE<=S2;WHEN S2=>R<='0';G<='0';Y<='1';STATE<=S3;WHEN S3=>R<='0';G<='1';Y<='0';STATE<=S4;WHEN S4=>R<='0';G<='1';Y<='0';STATE<=S5;WHEN S5=>R<='0';G<='1';Y<='0';STATE<=S0;END CASE;END IF;END PROCESS;END one;实验结果:。
电子技术课程设计目录第一章设计题目 (3)第二章设计任务和要求 (3)第三章题目分析及内容摘要 (3)第四章整体构思或方案选择 (4)4.1 设计思路 (4)4.2 控制器原理框图 (5)第五章具体实现 (5)第六章各部分定性说明与计算 (5)6.1 音乐节奏控制原理 (5)6.2 音乐音量控制器 (8)6.3 音乐音调控制器 (10)6.4音乐彩灯控制器总体电路图 (13)6.5元件清单表 (14)第七章设计收获、体会和建议 (15)第八章参考文献 (16)一.设计题目课题:音乐彩灯控制器彩灯因为它的色彩而为人的视觉带来了美的享受,可以缓解人的疲劳和紧张心情,当下已经随处可见它的足迹了。
而音乐则是为大家接受的休闲方式,他能安抚认得听觉,让人随着音乐的节奏,音高,音调起伏,而身心放松。
于是可以设想将二者合二为一的效果,既可以听音乐而且在听音乐的同时还能观赏到随着音乐变化而发生相应变化的灯光效果和图案,这种既有视觉又有听觉的享受,将为人们带来更加丰富的休闲效果。
本实验的主要课题是设计出一个彩灯控制器电路,通过对输入的音乐信号的三种处理来达到控制彩灯的效果,分为对音调,音量响度和节奏。
二.设计任务和要求(1) 任务设计一种组合式彩灯控制电路,该电路由三路不同控制方法的彩灯所组成,采用不同颜色的发光二极管作设计实验。
(2) 要求①第一路为音乐节奏控制彩灯,按音乐节拍变换彩灯花样。
②第二路按音量的强弱(信号幅度大小)控制彩灯。
强音时,灯的亮度加大,且灯被点亮的数目增多。
③第三路按音调高低(信号频率高低)控制彩灯。
低音时,某一部分灯点亮;高音时,另一部分灯点亮。
三.题目分析及内容摘要本设计彩灯伴随音乐的节奏、大小、音调而变化的彩灯控制器。
是听众在听音乐的同时还可以观赏到丰富多彩的彩灯变化,制造出视觉与听觉的双重享受。
本文主要包括以下内容:1、设计音乐信号放大电路,将输入的音频信号放大后输入到控制器。
2、555定时器构成单稳态输出实现音乐大小控制彩灯。
一、设计题目彩灯控制器 要求:1、有10只LED ,L 0、L 1、L2、L3、L4、L5、L6、L7、L8、L 9; 2、显示方式:① 先奇数灯依次熄灭; ② 再偶数灯依次熄灭; ③ 再由L 0 到L 9 灯依次熄灭; 3、显示间隔可自定。
注意:由于本题在Multisim10上做的仿真,所以此题仿真电路只能在Multisim10版本或以上运行。
二、实验器材74161 2个 与非门 1个 函数信号发生器1个+5V 电源 2个 74LS138 5个 与门 若干LED 灯10个非门10个三、设计方案 1、按课程设计题目来看,要求实现彩灯的23 种状态,此处可以用一个23 进制的计数器实现,从0 到22 种状态来控制这23 种状态(00000-10110),然后把计数器用译码器译成可以实现的高低电平。
再写出这23 种状态和计数器数字对应的真值表,计算出逻辑式,便可实现题目要求的彩灯控制。
由上分析可知需要一个23进制的计数器,然后需要一个5-32译码器,然后在由门电路连接LED 灯。
如下图所示:2、各个模块的原理(1)、 23 进制计数器:用2 个74161进行并行连接成23 进制计数器; (2)、5-32 译码器:用5 个74LS138 实现5-32 译码功能; (3)、各门电路的连接:根据真值表,用与门将各个电路和LED 灯连接起来。
3、真值表由23进制计数器输入一个五位二进制数(00000-10110),输出彩灯所对应的状态(1表示灯亮,0表示灯灭),对应的真值表如下:10个LED灯各个门电路的连接5-32译码器函数信号发生器23进制计数器L0L1L2L3L4L5L6L7L8L90 1 1 1 1 1 1 1 1 1 11 1 0 1 1 1 1 1 1 1 12 1 0 1 0 1 1 1 1 1 13 1 0 1 0 1 1 1 1 1 14 1 0 1 0 1 0 1 1 1 15 1 0 1 0 1 0 1 0 1 16 1 0 1 0 1 0 1 0 1 07 1 1 1 1 1 1 1 1 1 18 0 1 1 1 1 1 1 1 1 19 0 1 0 1 1 1 1 1 1 110 0 1 0 1 0 1 1 1 1 111 0 1 0 1 0 1 0 1 1 112 0 1 0 1 0 1 0 1 0 113 1 1 1 1 1 1 1 1 1 114 0 1 1 1 1 1 1 1 1 115 0 0 1 1 1 1 1 1 1 116 0 0 0 1 1 1 1 1 1 117 0 0 0 0 1 1 1 1 1 118 0 0 0 0 0 1 1 1 1 119 0 0 0 0 0 0 1 1 1 120 0 0 0 0 0 0 0 1 1 121 0 0 0 0 0 0 0 0 0 122 0 0 0 0 0 0 0 0 0 0四、各个模块的制作1、23进制计数器23进制计数器是由两个16进制计数器构成,并且将23进制计数器的每个状态输出,令其对应LED的每一种状态,计数器实现如下图:图1 23进制计数器注:上图中左侧的5个输出从左到右电位依次升降低。
实验十彩灯控制器设计与实现
一、实验目的
1、进一步掌握VHDL语言的基本结构及设计的输入方法。
2、掌握VHDL语言中状态机的设计与实现。
3、掌握层次化设计混合编程方法和元件例化语句的使用方法。
二、实验内容
1、设计并实现一彩灯控制器,要有多种花型变化(至少设计4种);多种花型可以自动变换,循环往复;彩灯变换的快慢节拍可以选择;彩灯控制器具有清零开关。
2、根据系统设计要求,现设计一个具有6种花型循环变化的彩灯控制器。
系统设计采用自顶向下的设计方法,系统的整体组装设计原理图如图所示,它由时序控制模块和显示控制模块两部分组成。
整个系统有3个输入信号:系统时钟信号CLK,系统清零信号CLR和控制彩灯节奏快慢的选择开关OPT。
16个输出信号LED[15..0],分别用于模拟彩灯。
三、实验步骤
1、设计思路
彩灯控制器共分三个模块:
第一个为快慢控制和分频器
第二个是彩灯花型设计和输出
第三个是整个顶层模块
2、快慢控制和分频器模块
当OPT为0时实现4分频,输出波形如下所示:Opt为1时为8分频
3、彩灯花型设计和输出模块
花型在CLK的上升沿变化4、顶层模块
总的系统仿真波形如下所示:
当CLR有效时,输出为0000状态,当OPT为1时,输出为慢频率的变化速度,当OPT为0时,输出的是快速率的时钟信号,总共6种花型,我们设置为5555、AAAA、8888、CCCC、3333、1111 。
实现了实验目的。