LED流水灯设计
流水灯电路的制作

流水灯电路的制作流水灯是一种光电转换装置,通过一系列的LED灯组成,可以在不同的时间间隔内依次点亮,形成像水流一样的效果,因此得名“流水灯”。
下面我将介绍流水灯电路的制作过程。
首先,我们需要准备以下材料和工具:1. Arduino控制板(如Arduino UNO)2. Jumper wires(杜邦线)3.电阻(220欧)4. LED灯(3mm直径和5mm直径,不同颜色)5.面包板6.铁丝钳和钳子(辅助工具)接下来,按照以下步骤制作流水灯电路:1. 将Arduino控制板插入面包板的两侧,并通过杜邦线将GND(地线)引脚与面包板上的负极连接。
2.将220欧的电阻通过杜邦线连接到面包板上,一端与GND(地线)相连,另一端空置。
3.通过杜邦线将LED灯连接到面包板上。
LED灯有一个长脚和一个短脚,长脚是阳极(正极),短脚是阴极(负极)。
将LED灯的阳极连接到电阻的空置端,阴极连接到GND(地线)。
4.重复步骤3,将其他的LED灯连接到面包板上。
你可以选择不同颜色的LED灯,以获得更丰富的效果。
确保每个LED灯的阳极连接到电阻的空置端,而阴极连接到GND(地线)。
5. 通过杜邦线将Arduino控制板的数字引脚与面包板上的LED灯连接。
根据你想要的效果,可以将LED灯连接到不同的数字引脚上。
例如,将第一个LED灯连接到数字引脚2,第二个LED灯连接到数字引脚3,依此类推。
6. 将Arduino控制板通过USB线连接到计算机,并开启Arduino IDE编程软件。
7. 在Arduino IDE中编写相应的代码,以控制流水灯的效果。
以下是一个简单的流水灯代码示例:```const int ledPin1 = 2; // 设置第一个LED灯的数字引脚const int ledPin2 = 3; // 设置第二个LED灯的数字引脚const int ledPin3 = 4; // 设置第三个LED灯的数字引脚//以此类推...void setupinMode(ledPin1, OUTPUT);pinMode(ledPin2, OUTPUT);pinMode(ledPin3, OUTPUT);//初始化其他LED的引脚void loodigitalWrite(ledPin1, HIGH); // 点亮第一个LED灯delay(100); //等待100毫秒digitalWrite(ledPin2, HIGH); // 点亮第二个LED灯delay(100); //等待100毫秒digitalWrite(ledPin3, HIGH); // 点亮第三个LED灯delay(100); //等待100毫秒//以此类推...逐个点亮其他LED灯digitalWrite(ledPin1, LOW); // 关闭第一个LED灯delay(100); //等待100毫秒digitalWrite(ledPin2, LOW); // 关闭第二个LED灯delay(100); //等待100毫秒digitalWrite(ledPin3, LOW); // 关闭第三个LED灯delay(100); //等待100毫秒//以此类推...逐个关闭其他LED灯```8. 将上述代码上传到Arduino控制板,并观察LED灯是否能够像流水灯一样依次点亮和熄灭。
可中断LED流水灯课程设计

摘要本设计是可中断LED流水灯的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED灯的动态设计和开发过程。
通过该芯片控制一个行LED灯按一定顺序亮,文中详细介绍了LED显示的设计思路。
单片机控制系统程序采用单片机汇编语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。
当然流水灯一般只是在用芯片做控制时起修饰作用,不能很好体现单片机的强大功能。
这里的流水灯只是单片机应用中的最基础的一方面。
LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点在车站、证券所、运动场馆、交通干道及各种室内外显示场合的信息发布,公益宣传,环境参数实时,重大活动倒计时等等得到广泛的应用。
经实践证明,该系统显示误差小,性能稳定,结构合理,扩展能力强。
关键词:汇编语言;AT89C51单片机; LED;中断程序1绪论单片机的发展大致可分为四个阶段:第一阶段:单片机探索阶段。
以Intel公司MCS-48,Motorola公司6801为代表,属低档型8位机。
第二阶段:单片机完善阶段。
以Intel公司MCS-51,Motorola公司68HC05为代表,属高档型8位机。
此阶段,8位单片机体系进一步完善,特别是MCS-51系列单片机在世界和我国得到了广泛的应用,奠定了它在单片机领域的经典地位,形成了事实上的8位单片机标准结构。
第三阶段:8位机和16位机争艳阶段,也是单片机向微控制器发展的阶段。
此阶段Intel公司推出了16位的MCS-96系列单片机,世界其他芯片制造商也纷纷推出了性能优异的16位单片机,但由于价格不菲,其应用面受到一定的限制。
相反MCS-51系列单片机,由于其性能价格比高,却得到了广泛的应用,并吸引了世界许多知名制造厂商,竟相使用以80C51为内核,扩展部分测控系统中使用的电路技术、接口技术、A/D、D/A和看门狗等功能部件,推出了许多与80C51兼容的8位单片机。
声控LED流水灯设计报告

声控LED流水灯设计报告一、设计背景声控技术在现代科技应用中越来越广泛,它能让设备能根据声音的强弱和频率进行响应和触发。
LED 流水灯则是一种常见且有趣的LED灯效。
本设计将结合这两个方面,设计一款声控LED 流水灯,通过声音的输入改变流水灯的亮度和模式,给用户带来更丰富的体验。
二、设计要求1. 声控响应能力设计的声控LED 流水灯需要能够根据环境中的声音进行响应和触发操作。
对于声音的响应需要较高的灵敏度和准确性,能够识别声音的强弱和频率。
2. 流水灯的效果流水灯是一种连续闪烁的灯效,具有流动和渐变的特点。
设计的声控LED 流水灯需要能够呈现出这种效果,并且能够根据声音的输入改变流水灯的亮度和模式。
3. 灯光控制声控LED 流水灯需要能够通过外部控制信号调整灯光的亮度和颜色。
用户可以通过声音控制模块设置灯光的亮度,或者通过其他接口连接微控制器来实现更多的控制方式。
三、设计方案1. 硬件设计1.1 声音传感器为了实现声控功能,需要使用声音传感器来感知环境中的声音。
选择一个灵敏度较高的传感器,并设置适当的阈值,以便能够准确地识别声音。
1.2 LED 灯珠LED 灯珠是声控LED 流水灯的关键部件,需要选择亮度高、色彩丰富的LED 灯珠。
LED 灯珠的数量和排列方式可以根据实际需求进行设计。
1.3 控制电路声控LED 流水灯需要一个控制电路来控制LED 灯珠的亮度和模式。
控制电路可以使用普通的微控制器,例如Arduino,通过PWM(脉宽调制)来控制灯光的亮度和模式。
2. 软件设计2.1 声音分析算法声音分析算法是声控LED 流水灯的核心。
通过采集环境中的声音信号,对声音的强弱和频率进行分析,从而判断用户的操作意图,并触发相应的灯光效果。
2.2 灯光效果控制算法灯光效果控制算法用于根据声音输入调整流水灯的亮度和模式。
可以根据声音的强弱和频率来改变灯光的亮度和闪烁频率,实现流水灯的流动和渐变效果。
3. 系统集成将硬件和软件进行集成,通过控制电路连接声音传感器和LED灯珠,通过软件算法进行声音分析和灯光控制。
led点阵花流水灯课程设计

led点阵花流水灯课程设计一、课程目标知识目标:1. 让学生理解LED点阵的基本原理和电路组成;2. 掌握流水灯的设计方法,包括编程和电路连接;3. 了解点阵花流水灯在实际应用中的功能与作用。
技能目标:1. 学会使用相关软件进行电路设计和编程;2. 能够独立完成LED点阵花流水灯的制作与调试;3. 提高学生动手操作能力和问题解决能力。
情感态度价值观目标:1. 培养学生对电子制作的兴趣和热情,激发创新意识;2. 培养学生团队合作精神,学会互相交流、分享经验;3. 增强学生对科技改变生活的认识,提高社会责任感。
课程性质:本课程为实践性较强的课程,结合理论知识,锻炼学生动手能力和创新思维。
学生特点:针对中学生,具备一定的物理知识和电子制作基础,对新鲜事物充满好奇心。
教学要求:教师需引导学生掌握基本原理,注重实践操作,鼓励学生思考、创新,提高课堂互动性。
将课程目标分解为具体的学习成果,便于教学设计和评估。
1. 理论知识:- 介绍LED点阵的原理、结构和应用;- 讲解点阵花流水灯电路的组成和功能;- 概述编程控制LED点阵的基本方法。
2. 实践操作:- 使用相关软件(如Arduino)进行电路设计和编程;- 学习如何将LED点阵与微控制器连接,实现流水灯效果;- 动手制作LED点阵花流水灯,进行调试与优化。
3. 教学大纲:- 第一章:LED点阵原理及电路组成(1课时)- 第二章:流水灯设计方法与编程(2课时)- 第三章:LED点阵花流水灯制作与调试(2课时)4. 教材关联:- 《电子技术基础》第四章:数字电路基础;- 《Arduino编程与实践》第三章:数字输出与LED控制。
教学内容安排和进度:- 第一周:理论学习,了解LED点阵原理及电路组成;- 第二周:实践操作,学习流水灯设计方法与编程;- 第三周:实践操作,制作LED点阵花流水灯并进行调试与优化。
教学内容旨在确保学生掌握科学性和系统性的知识,结合教材章节,使学生在实践中提高技能,达到课程目标。
流水灯led毕业设计

流水灯led毕业设计流水灯(LED)毕业设计引言:在现代科技发展的背景下,LED(Light Emitting Diode,发光二极管)作为一种新型照明技术,被广泛应用于各个领域。
在本文中,将介绍一个基于流水灯(LED)的毕业设计项目,探讨其设计思路、实现方法以及应用前景。
一、设计思路1.1 设计目标流水灯作为一种常见的照明装饰,常用于舞台灯光、建筑物照明等场合。
本设计旨在通过使用LED灯珠,实现一个具有良好视觉效果的流水灯,同时考虑到节能环保的特点。
1.2 设计原理流水灯的工作原理是通过控制LED灯珠的亮灭顺序和时间间隔,使得灯珠在空间上形成流动的效果。
为了实现这个目标,需要使用微控制器、电路板和LED 灯珠等元件。
二、实现方法2.1 硬件设计在硬件设计方面,需要考虑以下几个关键点:(1)LED灯珠的选择:选择高亮度、低功耗的LED灯珠,以确保流水灯的亮度和节能性。
(2)电路板设计:设计合理的电路板,将LED灯珠与微控制器相连,以实现流水灯的控制和调节。
(3)电源供应:选择适当的电源供应方式,确保流水灯的正常工作。
2.2 软件设计在软件设计方面,需要编写程序控制LED灯珠的亮灭顺序和时间间隔。
可以使用C语言或者其他编程语言,通过控制微控制器的输出口,实现流水灯的效果。
三、应用前景流水灯作为一种照明装饰,具有广泛的应用前景。
随着人们对照明环境的要求越来越高,流水灯的市场需求也在不断增加。
在舞台演出、商业广告、城市景观等领域,流水灯都有着广泛的应用。
而且,由于LED灯珠具有节能环保的特点,流水灯的使用也符合现代社会对绿色环保的追求。
结论:通过对流水灯(LED)毕业设计的介绍,我们可以看到LED照明技术在流水灯领域的应用前景十分广阔。
通过合理的硬件设计和软件编程,可以实现一个具有良好视觉效果的流水灯。
同时,流水灯的使用还能够满足节能环保的需求,具有广泛的市场潜力。
相信在未来的发展中,LED流水灯将会在照明装饰领域发挥更加重要的作用。
3组12只LED流水灯电路设计与制作

3组12只LED流水灯电路设计与制作(姓名:黄丽琳学号:20101041101)(姓名:廖雨学号:20101041120)2013年06月17日3组12只LED流水灯电路设计与制作(姓名:黄丽琳学号:20101041101;姓名:廖雨学号:20101041120)摘要:3组12只LED流水灯是特别针对电子装配与调试技能设计出来的,值得学习和电路分析。
本文分析了该流水灯电路的特点及其电路工作原理的说明.关键字:3组12只LED流水灯;电路设计;循环。
1 引言随着科学技术的发展,电力电子设备与人们的工作、生活的关系日益密切。
各种小套件层出不穷,功能多样。
本文所设计的电子制作可以说是电子初学者学习电子的最佳入门制作!其制作方式容易,趣味横生,更能提高初学者的动手能力!让初学者在制作学习中感受电子技术带来的乐趣!2 系统的功能描述这款3组12只LED流水灯具有制作容易、有趣易学的特点,电路焊接成功后,装入电池,即可正常工作,3组12只发光二极管便会被轮流点亮,不断的循环发光,达到流动的效果。
3 设计原理3.1 电路工作原理说明:本电路是由3只三极管组成的循环驱动电路。
每当电源接通时,3只三极管会争先导通,但由于元器件存在差异,只会有1只三极管最先导通.这里假设V1最先导通,则V1集电极电压下降,使得电容C2的左端下降,接近0V.由于电容两端的电压不能突变,因此此时V2的基极也被拉到近似0V,V2截止,V2的集电极为高电压,故接在它上面的发光二极管LED5—LED8被点亮。
此时V2的高电压通过电容C3使V3基极电压升高,V3也将迅速导通,因此在这段时间里,V1、V3的集电极均为低电压,因此只有LED5-LED8被点亮,LED1-LED4、LED9—LED12熄灭。
但随着电源通过电阻R3对C2的充电,V2的基极电压逐渐升高,当超过0。
7V时,V2由截止状态变为导通状态,集电极电压下降,LED5-LED8熄灭。
SOPC技术LED流水灯设计
Sopc_LED实验指导一.实验目的:1.掌握NIOS II软核的定制流程。
2.掌握NIOS II的开发流程。
3.熟识NIOS II IDE 开发环境的使用。
4.掌握基本的软件的调试方法。
5.掌握通过寄存器形式对硬件进行控制,可以更透彻地看清NIOS II 开发过程。
二.实验内容:1.PIO 模块的构建。
2.软件编程,通过寄存器形式对硬件进行控制。
3.下载程序并硬件调试。
4. 扩展实验:程序功能通过SOPC建立的软核来运行程序功能:LED 显示控制。
通过PIO 直接控制8 个LED 产生流水灯效果三.实验简介:这一节,我将给大家了解第一个与硬件有关的程序,虽然内容简单,却极具代表性。
我将采用一种寄存器的操作方案,让大家感受到开发NIOS跟单片机一样的简单,看透NIOS II开发的本质,尽量避免使用NIOS II IDE提供的API,这样做有很多好处。
首先,有单片机开发经验的人应熟悉这种操作方案,其次,它是硬件试验部分的第一课,通过这个简单的实验,可以让你对单片机的操作有一个感官上的了解,可以说意义不同寻常。
这一节,我也通过LED 实验来带大家进入NIOS II 的开发世界,感受NIOS 的魅力所在,下面我们开始吧。
四.实验内容:1.硬件开发第一步,我们要在软核中加入PIO 模块。
打开我们上一次建的Quartus 工程,如下图红圈所示(如果你没保留上次的工程,需要按照上次指导书重新再做一个下面的。
)双击上图的hello_word后进入了SOPC BUILDER界面,如下图所示点击下图所示红圈处PIO(Parallel I/O)点击后,如下图所示,红圈1处是你需要的PIO口的宽度,即你需要几个IO口,这里面我设置为8,即我要控制8个LED,红圈2是选择输出方式,我选择为输出(Output)。
接下来,点击Finish,完成PIO模块的构建,然后将其改名为LED,如下图所示接下来,需要自动分配一下基地址,上一次已经讲过,如下图所示接下来,双击cpu,看下图红圈的地址为下图的。
【LED】流水灯的设计与制作
摘要本设计是一种基于89C52单片机的彩灯控制方案,实现对彩灯的控制。
本方案以89C52单片机作为主控核心,由编程实现亮灯循环模式。
由在显示模块上有8个彩灯,根据用户需要可以编写若干种亮灯模式.本系统具有体积小、硬件少、电路结构简单及容易操作和阅读等优点。
该彩灯控制器实际应用效果较好,亮灯模式多。
与其他彩灯相比,具有体积小、价格低、低能耗等优点。
在能源比较匮乏的今天,彩灯的循环控制在显示方面更表现出一种节约能源的魅力.这将使彩灯具有更广阔的发展天地。
关键字:89C51 循环彩灯a a 89c52 89c52 8 8 a 。
, a .: 89C51目录绪论 31流水灯方案设计与选择 31、1 设计要求 31、2 系统功能 31、3 方案选择 32 流水灯设计过程 42、1 元件选取 42、2 硬件设计 42、2、1 单片机介绍 42、2、2 流水灯总图 52、3 软件设计 62、3、1 编程介绍 62、3、2 编程选择 10参考文献 11绪论当今时代足一个新技术层出不穷的时代,在电子领域尤其足自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
1流水灯方案设计与选择1、1设计要求本次毕业设计要求设计一个流水灯,其设计要求如下:(1)、用8个发光二极管作为显示电路。
(2)、实现动态显示。
(3)、能连续循环显示。
1、2 系统功能流水灯可直接与220 V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内模块提供12 V工作电源,另一方面为主控模块单片机系统提供5 V工作电源。
整个系统工作由软件程序控制运行。
上电后,流水灯按程序设计好的模式进行显示,由全灭→按程序显示→全都熄灭为一个周期。
然后循环继续工作。
1、3 方案选择可只采用89C51作为主控芯片,将P1分别接8个实现显示,可用C语言或者汇编语言编程实现。
51八只LED灯做流水灯实验
51八只LED灯做流水灯实验第一节:单片机在上电初始后,其各端口输出为高电平。
如果我们现在想让接在P1.0口的LED1亮,那么我们只要把P1.0口的电平变为低电平就可以了。
想让LED1灭,LED0亮,只需将P1.0升高,P1.1变低,LED 1就熄灭LED2随后既点亮!依始类推如下所示8只LED变会一亮一暗的做流水灯了。
本实验在“SP-5 1实验板”学习套件上的相关图纸:P1.0低、P1.0高、P1.1低、P1.1高、P1.2低、P1.2高、P1.3低、P1.3高、P1.4低、P1.4高、P1.5低、P1.5高、P1.6低、P1.6高、P1.7低、P1.7高、返回到开始、程序结束。
我们不能说P1.1你变低,它就变低了。
因为单片机听不懂我们的汉语的,只能接受二进制的“1、0......”代码。
我们又怎样来用二进制语议论使单片机按我们的意思去工作呢?为了让单片机工作,只能将程序写为二进制代码交给其执行;早期单片机开发人员就是使用人工编写的二进制代码交给单片机去工作的。
今天,我们不必用烦人的二进制去编写程序,完全可以将我们容易理解的“程序语言”通过“翻译”软件“翻译”成单片机所需的二进制代码,然后交给单片机去执行。
这里的“程序语言”目前主要有汇编和C两种;在这里我们所说的“翻译”软件,同行们都叫它为“编译器”,将“程序语言”通过编译器产生单片机的二进制代码的过程叫编译。
前面说到,要想使LED1变亮,只需将对应的单片机引脚电平变为低电平就可以了。
现在让我们将上面提到的8只LED流水灯实验写为汇编语言程序。
“汉语”语言汇编语言开始:star:P1.0低clr p1.0P1.0高setb p1.0P1.1低clr p1.1P1.1高setb p1.1P1.2低clr p1.2P1.2高setb p1.2这里用到了四条汇编指令:clr、 setb、 ljmp 、end;clr:是将其后面指定的位清为0;setb:是将其后面指定的位置成1;ljmp:是无条件跳转指令,意思是:跳转到指定的标号处继续运行。
LED流水灯设计
LED流水灯设计流水灯(also known as running lights)是一种常见的LED灯设计,它由一系列LED灯组成,可以连续地亮起和熄灭,就像水流般流动。
流水灯设计常见于节日装饰、舞台演出和彩灯效果等场合,具有独特的美观效果。
下面将介绍流水灯的原理、设计步骤以及相关应用。
一、流水灯原理流水灯的原理基于LED灯的亮灭控制和串并联电路的设计。
LED灯的亮灭控制是通过直流电源及驱动电路实现的,而流水灯的流动效果则是通过不同的亮灭顺序实现的。
具体原理如下:1.LED灯亮灭控制:LED灯是一种直流电源下的电子元件,在正向电流的作用下,LED灯发光;而在反向电流下,LED灯熄灭。
通过控制LED灯的电流流向,可以实现其亮灭控制。
2.串并联电路:将多个LED灯连接在一起时,可以采用串联或并联的方式。
串联时,LED灯依次连接在电路中,电流在各个LED灯之间流动;并联时,LED灯同时连接在电路中,电流在各个LED灯之间分流。
流水灯设计通常采用串联电路,通过控制电流流向的方式,实现LED灯的亮灭顺序。
二、设计步骤流水灯的设计步骤包括电路设计和程序编写两个方面。
具体步骤如下:1.电路设计:首先确定流水灯的LED灯数量和排列方式,然后根据输入电压和LED灯额定电压选择适当的电阻,用于限流并防止过电流。
接下来,根据串联电路的特性,设计LED灯的串联方式和连接顺序。
最后,根据电路设计,连接LED灯和电阻。
2. 程序编写:使用相应的开发工具,编写控制LED灯亮灭顺序的程序。
程序可以通过控制IO口电平的高低实现LED灯的亮灭控制。
流水灯设计中常用的控制方式有定时控制和状态机控制。
定时控制是通过设定每个LED灯的亮灭时间来实现,例如每隔100ms亮灭一个LED灯;状态机控制是通过设置多个状态,根据当前状态判断下一个LED灯的亮灭顺序。
三、相关应用流水灯设计在日常生活和各种场合都有广泛的应用1.节日装饰:流水灯常用于节日装饰,如圣诞节、新年等,给人们带来欢乐和节日气氛。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机课程设计报告 LED流水灯的设计专业:姓名:学号:姓名:学号:姓名:学号:2015年月日目录LED流水灯的设计 (1)第一章绪论 (2)1.1 设计目的 (2)1.2 设计任务 (2)1.3 设计方法 (2)第二章设计内容与所用器件 (3)2.1 基本功能 (3)LED彩灯...................................................... 错误!未定义书签。
2.2 循环移位法 (3)第三章硬件系统设计 (4)3.1 单片机时钟电路 (4)第四章软件设计 (5)4.1 汇编语言和C语言的特点及编程 (5)4.2 LED显示原理 (5)第五章系统调试与存在的问题 (8)5.1 程序下载 (8)5.2 硬件调试 (8)5.3 软件调试 (9)总结 (10)参考文献 (11)LED流水灯的设计[摘要]:当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且比较容易出错。
计算器作为一种快速通用的计算工具方便了用户的使用。
计算器可谓是我们最亲密的电子伙伴之一。
本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。
单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。
在工业生产中。
单片微型计算机是微型计算机称单片机,特别适用于控制领域,故又称为微控制器。
本系统就是充分利用了8051芯片的I/O引脚。
系统以采用MCS-51系列单片机Intel8051为中心器件来设计LED流水灯系统,实现8个LED霓虹灯的左、右循环显示,并实现循环的速度可调。
[关键字]:单片机技术;系统设计;LED流水灯第一章绪论1.1 设计目的通过本次课题设计,应用《单片机原理及应用》等所学相关知识及查阅资料,完成简易LED流水灯系统设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。
通过本次设计的训练,可以使我在基本思路和基本方法上对基于MCS-51单片机的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。
1.2 设计任务在本次课程设计中,主要完成如下方面的设计任务:1、掌握MCS-51系列8051的最小电路及外围扩展电路的设计方法;2、了解单片机数据转换功能及工作过程;3、设计LED流水灯系统,实现8个LED霓虹灯的左、右循环显示;4、完成主要功能模块的硬件电路设计。
1.3 设计方法本课题使用STC89C52RC单片机时无须外扩存储器。
因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。
如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。
因此,要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。
由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。
第二章设计内容与所用器件2.1 基本功能利用STC89C52RC作为主控器组成一个LED流水灯系统,实现8个LED霓虹灯的左、右循环显示。
可选器件51系列单片机、电容C104、4.7K、18Ω和1K的电阻、LED灯、按键、晶振等。
总体框架图2.2 循环移位法在上个程序中我们是逐个控制P1端口的每个位来实现的,因此程序显得有点复杂,下面我们利用循环移位指令,采用循环程序结构进行编程。
我们在程序一开始就给P1口送一个数,这个数本身就让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果啦。
由于8051系列单片机的指令中只有对累加器ACC中数据左移或右移的指令,因此实际编程中我们应把需移动的数据先放到ACC中,让其移动,然后将ACC移动后的数据再转送到P1口,这样同样可以实现“流水”效果。
具体编程如下所示,程序结构确实简单了很多。
第三章硬件系统设计硬件系统是指构成微机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。
单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。
本设计选用以STC89S52RC单片机为主控单元。
显示部分:8个LED 灯循环亮灭。
3.1 单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。
在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚X1,输出端为引脚X2,在芯片的外部跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。
此电路采用12MHz的石英晶体。
时钟电路如下图所示:时钟电路第四章软件设计4.1 汇编语言和C语言的特点及编程本设计是硬件电路和软件编程相结合的设计方案,选择合适的编程语言是一个重要的环节。
在单片机的应用系统程序设计时,常用的是汇编语言和C语言。
机硬件,程序可读性和可移植性比较差。
而C语言虽然执行效率没有汇编语言高,但语言简洁,使用方便,灵活,运算丰富,表达化类型多样化,数据结构类型丰富,具有结构化的控制语句,程序设计自由度大,有很好的可重用性,可移植性等特点。
在本设计中采用C语言编写软件程序。
4.2 LED显示原理LED 点阵具有亮度高、发光均匀、可靠性好、接线简单、拼装方便等优点,能构成各种尺寸的大屏幕显示器。
因此,它被广泛应用于大型LED 智能显示屏、智能仪器仪表和机电一体化设备的显示单元中,取得了较好的效果。
由于它经济、小型的显示系统,同时要求使用方便灵活,方便地组成了由多块大屏幕LED 显示器构成的显示系统,该系统可广泛用于商场、车站、码头及其它公共场合。
LED 显示屏由 LED 点阵显示器构成。
它是以发光二极管为像素,按照行与列的顺序排列而成的显示器件,采用逐行(或逐列) 扫描方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可显示各种图形或文字信息。
此设计中LED灯的显示为动态显示。
我们采用的是共阴极LED灯,在’0’时LED灯发光。
‘1’的时候熄灭,我们通过改变每个接口的’0’、’1’状态,来实现LED灯的亮灭、从而实现整个LED灯系统,呈流水状亮灭。
我们还可以采用各种不同颜色的LED灯,使我们的实验结果更加绚丽多彩,增加视觉效果。
4.3 源程序#include <reg52.h>sbit ADDR0 = P1^0;sbit ADDR1 = P1^1;sbit ADDR2 = P1^2;sbit ADDR3 = P1^3;sbit ENLED = P1^4;void main(){unsigned int i = 0;unsigned char dir = 0;unsigned char shift = 0x01;ENLED = 0;ADDR3 = 1;ADDR2 = 1;ADDR1 = 1;ADDR0 = 0;while (1){P2 = ~shift;for (i=0; i<20000; i++);if (dir == 0){shift = shift << 1; if (shift == 0x80) {dir = 1;}}else{shift = shift >> 1; if (shift == 0x01) dir = 0;}}}第五章系统调试与存在的问题5.1 程序下载下载后的效果图5.2 硬件调试常见故障:1、逻辑错误:它是由设计错误或加工过程中的工艺性错误所造成的。
这类错误包括错线、开路、短路等。
2、元器件失效:有两方面的原因:一是器件本身已损坏或性能不符合要求;二是组装错误造成元件失效,如电解电容、集成电路安装方向错误等。
3、可靠性差:因其可靠性差的原因很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不起振动;走线和布局不合理也会引起系统可靠性差。
4、电源故障:若样机由电源故障,则加电后很容易造成器件损坏。
电源故障包括电压值不符合设计要求,电源引线和插座不对,功率不足,负载能力差等。
调试方法:包括多级调试和联机调试。
在调试过程中要针对可能出现的故障认真分析,直至检查出原因并排除。
本次硬件调试过程中,对所出现的问题进行了认真的分析和改正,最后能够很好的达到设计要求的效果。
5.3 软件调试软件调试一般分为以下四个阶段:1、编写程序并查错;2、在汇编语言的编译系统中编译源程序3、对程序进行编译连接,并及时发现程序中存在的错误;4、改正错误。
在软件调试过程中,对出现的错误进行了认真的分析和修改,多次调试成功后,能够很好的达到既定的设计效果。
此系统可以改进为可以通过对开关的调节来控制流水灯的调向、加速、减速、变亮、变暗,这是一个比较难的挑战。
总结经过一段时间的努力,我们顺利的完成了这次单片机课设。
这是一个磨练意志的过程。
从课题的选择开始,计算器的设计、硬件和软件系统的设计、到最后的Proteus软件仿真完成,这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大的锻炼。
一方面通过C51单片机等一些器件的设计让我学习和掌握了单片机技术的基础知识和技术要点,也使以前学的很多知识都得到了运用;另一方面在用Proteus软件画电路图时,然后再转换成一维的WORD中进行编辑,这个过程中让我掌握了计算机辅助的设计技术。
当然,这是一个需要不断的尝试,不断的校核,不断的修改,最后完成一个合理的设计的过程。
需要的是细心和耐心。
在很大程度上培养了我拼搏的工作精神。
使我受益匪浅,更加明确了自己专业的方向。
通过本次课设,我不仅学到了关于单片机技术方面的许多专业知识,同时也让我感觉到团队合作的重要性。
其实如何有效和快速的找到资料也是课设给我的启发,利用好图书馆和网络,是资源的到最好的利用。
与他人交流思想是取得成功的关键,在交流中,不仅强化了自己原有的知识体系,也扩展了自己的思维。
课设是一个通过思考、发问、自己解惑并动手、提高的过程。