基于单片机智能彩灯控制系统设计_第1页
基于单片机智能彩灯控制系统设计_第2页
基于单片机智能彩灯控制系统设计_第3页
基于单片机智能彩灯控制系统设计_第4页
基于单片机智能彩灯控制系统设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 绪论 随着人们生活水平的提高,环境的不断改善和美化,在许多场合可以看到很多彩色的霓虹灯。特别是当今充满竞争的时代,各地政府为吸引游客和投资者,在城市的沿街、沿道、沿河、沿线等地用霓虹灯造景,实施"亮化工程",以美化环境、树立城市形象     但是目前市场上各种式样的led彩灯多半是采用全硬件电路实现,电路结构复杂、功能单一,这样一旦制成成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。同时这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。此外从功能上来看,亮灯模式少

2、而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改进。 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。由于这里不能上传完整的毕业设计(完整的应包括毕业设计说明书、相关图纸cad/proe、中英文文献及翻译等),此文档也稍微删除了一部分内容(目录及某些关键内容)如

3、需要其他资料的朋友,请加叩扣:贰二壹伍八玖壹壹五一近年来,彩灯对于美化、亮化城市有着不可轻视的重要工作。因此作为城市装饰的彩灯需求量越来越大,对与彩灯的技术和花样也越来越高。但传统的彩灯控制电路一般是由数字电路组成,这种彩灯控制器电路结构复杂、成本较高、功率损耗大,此外从功能效果上看,彩灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改进。而单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。led彩灯具有成本低、发光纯度高、发光热量小、耗电量低、超长寿命的特点。所以利用单片机作led彩灯控制,不仅是使控制花样、路

4、数大大增加,成本也很低,而且对环境能源没有污染,有着很大的发展前景。本方案是一种基于at-89c51单片机的彩灯控制方案,实现对led彩灯的控制。主要以at-89c51单片机作为主控核心与发光二极管、晶振、复位、电源等组成电路,利用软件编辑实现彩灯流水灯的效果。 2 系统总体设计方案实验总体电路构造方案比较简单,主要包括键盘控制电路(用脉冲按键开关对电路进行控制)和显示电路(单片机控制发光二极管的显示)。图1.1 实验方案图按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。at89c52单片机是美国atmel 公司生产的低电压、高性能cmos 8 位单片

5、机,具有丰富的内部资源:4kb 闪存、128bram、32 根i/o 口线、2 个16 位定时/计数器、5 个向量两级中断结构、2 个全双工的串行口,具有4.255.50v 的电压工作范围和024mhz工作频率,使用at89c52单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。2.1总体方案的设计经过分析问题及初步的整体思考,拟定以下二种方案:方案一:总体电路共分三大块。第一块实现花型的演示;第二块实现花型的控制及节拍控制;第三块实现时钟信号的产生。主体框图如下: 花型演示电路花型

6、控制节拍控制电路时钟信号电路方案二:在方案一的基础上将整体电路分为四块。第一块实现花型的演示;第二块实现花型的控制;第三块实现节拍控制;第四块实现时钟信号的产生。并在部分电路的设计上与方案一采用了完全不同的方法,如花型的控制。主体框图如下:花型演示电路花型控制电路节拍控制电路时钟信号电路2.1总体方案的选择 方案一与方案二最大的不同就在,前者将花型控制与节拍控制两种功能融合在一起,是考虑到只要计数器就可以实现其全部功能的原因,且原理相对简单。如此设计,其优点在于:设计思想比较简单。元件种类使用少,且都较熟悉易于组装电路。缺点则是:中间单元电路连线过于繁多,容易出错。且可能出现线与线关系。要避免

7、这些,则势必造成门电路使用过多。导致电路不稳定,抗干扰能力下降。而后者则将以上两种功能分开设计,各单元电路只实现一种功能。其优点在于:电路设计模块化,易于检查电路,对后面的电路组装及电路调试带来方便。缺点则是:节拍控制电路采用可编辑逻辑电路,原理相对复杂,不易理解。花型控制电路简单,花型也比较简单。基于以上原因,加上为了成功的实现课程设计,我选择了连线少,易于组装和调试的方案二。方案一:采用各类数字电路来组成键盘控制系统,进行信号处理,如选用cpld等可编程逻辑器件。本方案电路复杂,灵活性不高,效率低,不利于系统的扩展,对信号处理比较困难。方案二:过单片机控制二极管的闪烁,通过中断来改变模式同

8、时串行输出数码管。p0,p1口接16个二极管,p3口接扩展板的数码显示接口。 该方案简单,易于设计和控制。 3 系统硬件设计3.1 at89c51单片机3.1.1:芯片介绍at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器,俗称单片机。at89c2051是一种带2k字节闪烁可编程可擦除只读存储器的单片机。单片机的可 擦除只读存储器可以反复擦除100次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚

9、相兼容。由于将多 功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,at89c2051是它的一种精简版本。at89c单片机 为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.1.2主要特性:·与mcs-51 兼容 ·4k字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年·全静态工作:0hz-24hz·三级程序存储器锁定·128*8位内部ram·32可编程i/o线·两个16位定时器/计数器·5个中断源 ·可编程串行通道·低功耗的闲置和掉

10、电模式·片内振荡器和时钟电路 3.1.3管脚说明 2.1.3at89c51引脚路 vcc:供电电压。 gnd:接地。 p0口:p0口为一个8位漏级开路双向i/o口 p1口:p1口是一个内部提供上拉电阻的8位双向i/o口, p2口:p2口为一个内部上拉电阻的8位双向i/o口,p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。p3口也可作为at89c51的一些特殊功能口,p3口同时为闪烁编程和编程校验接收一些控制信号。 rst:复位输入。/psen:外部程序存储器的选通信号。 xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向

11、振荡器的输出。3.1.4振荡器特性: xtal1和xtal2分别为反向放大器的输入和输出。按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。at-89c51单片机是美国atmel公司生产的低电压、高性能cmos 8位单片机,具有丰富的内部资源:4kb闪存、128bram、32根i/o口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.255.50v的电压工作范围和024mhz工作频率,使用at-89c51单片机时无须外扩存储器。因此,本彩灯控制系统实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复

12、位、电源等电路和必要的软件组成的单个单片机。其具体硬件组成如图1所示。图1彩灯硬件原理图从图1中可以看出,如果要让接在p1.0口的led1亮起来,那么只要把p1.0口的电平变为低电平就可以了;相反,如果要让接在p1.0口的led1熄灭,就要把p1.0口的电平变为高电平;同理,接在p1.1p1.7口的其他7个led的点亮和熄灭的方法同led1。因此,要实现彩灯功能,我们只要将发光二极管led1led8依次点亮、熄灭,8只led灯便会一亮一暗的做彩灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“彩灯”

13、效果了。3.2 控制器模块本系统控制器芯片采用at89c51单片机,其管脚图如图3所示。d8-d6:数据输入线。reset:复位端口。t0,t1:计数器端口外部计数脉冲输入线。xtal1,xtal2:时钟电路。vcc:供电电压。gnd:接地。图3 89c51功能说明图at89c51是一种带4k字节闪存可编程可擦除只读存储器(fperomflash programmable and erasable read only memory)的低电压、高性能cmos 8位微处理器,俗称单片机。at89c2051是一种带2k字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100

14、0次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,at89c2051是它的一种精简版本。at89c单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。at89c51具有以下特性:与mcs-51 兼容,4k字节可编程闪烁存储器,寿命:1000写/擦循环,数据保留时间:10年,全静态工作:0hz-24mhz,三级程序存储器锁定,128×8位内部ram,32可编程i/o线,两个16位定时器/计数器,5个中断源,可编程串行通道,低功耗

15、的闲置和掉电模式、片内振荡器和时钟电路。3.3 按键模块采用如下所示电路来实现控制花样彩灯的复位,按下开关,单片机复位,花样彩灯按模式一闪烁。图电源电路有三端稳压器7805和电容组成,外部电池供电,bat接7v左右的电压,稳压输出5v的电压。电源电路如图4所示。图4.电源电路3.4 led显示模块led显示电路由单片机89c51的p0口,p1口和p2口与发光二极管相连,低电平二极管发光。led显示电路如图2所示。图2.led显示电路3.5硬件元件清单系统元器件清单见表2。表2 系统元器件清单器件数量器件数量at89c511晶振器1led8排阻(4.7k)8电容(30pf)2电阻(100k)1电

16、容(10uf)1开关14软件设计与仿真本系统程序包括主程序、键盘扫描子程序、发送键码子程序、发送数据子程序、接收命令子程序等。主程序用于系统初始化,子程序调度等。键盘扫描子程序用于扫描键盘状态,将被按键的位置号存入缓冲器中。发送键码子程序用于将缓冲区键的接通码或断开码发送给单片机接口。发送数据子程序用于将数据发给单片机接口。接收命令子程序用于接收单片机接口发来的键盘命令。4.1主程序设计程序流程图:中断程序:主程序: 4.2 仿真软件简介proteus是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,

17、该软件的特点是:(1)实现了单片机仿真和spice电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、rs232动态仿真、i2c调试器、spi调试器、键盘和lcd系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(2)支持主流单片机系统的仿真。目前支持的单片机类型有:arm7(lpc21xx)、 8051/52系列、avr系列、pic10/12/16/18系列、hc11系列以及多种外围芯片。(3)提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些

18、功能;同时支持第三方的软件编译和调试环境,如keil c51 uvision2、mplab等软件。(4)具有强大的原理图绘制功能。总之,该软件是一款集单片机和spice分析于一身的仿真软件,功能极其强大。proteus7.5是目前最好的模拟单片机外围器件的工具,可以仿真51系列、avr、pic等常用的mcu及其外围电路(如lcd、ram、rom、键盘、马达、led、ad/da、部分spi器件、部分iic器件等)。软件编译采用keil c51软件,keil c51是美国keil software公司出品的51系列兼容单片机c语言软件开发系统,与汇编相比,c语言在功能上、结构性、可读性、可维护性上

19、有明显的优势,因而易学易用。用过汇编语言后再使用c来开发,体会更加深刻。keil c51软件提供丰富的库函数和功能强大的集成开发调试工具,全windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到keil c51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。4.3 仿真结果 先按复位键,系统初始化,然后8个led开始按照要求闪烁,分别按下列模块点亮:模块1:循环单向闪烁,只有一个灯亮模块2:循环单向闪烁,只有两个灯亮模块3:循环往复闪烁,只有一个灯亮模块4:全亮全灭模块5:顺次点亮或者熄灭, 多个灯亮模块6:顺

20、次点亮或者熄灭,多个灯亮,一次点亮两个模块7:双端对称往返闪烁4.4 系统调试在调试过程中主要是对程序的修改,特别是延时子程序。开始延时较短时,当按下开关时,led开始闪烁。如果延时较长则led闪烁更慢。通过修改程序,将延时调到适中,系统正常工作。4.5 误差分析设定预设值后,记录模式一的数据,每次送出的数据是不同,具体的数据如下表1所示 p1.7p1.6p1.5p1.4p1.3p1.2p1.1p1.0说明l8l7l6l5l4l3l2l111111110l1亮11111101l2亮11111011l3亮11110111l4亮11101111l5亮11011111l6亮10111111l7亮01

21、111111l8亮后面几种模式的实验结果基本和理论值一样,没什么误差。结束语与市面上大多数的led彩灯相比,该种彩灯具有更好的灯光装饰效果,性价比更高,与普通的全硬件led彩灯相比具有更好的经济效益。应用主控模块输出的控制信号去控制灯管内的l ed板模块工作,使得产品性能稳定,便以安装容易操作。由于控制程序存储在89c51单片机 的电可擦除flash闪存eprom中,如果用户需要更改系统的亮灯模式model_i,无须改变系统硬件电路,只需修改其中程序即可,是一种很有发展前途的彩灯控制器。通过花样彩灯的制作,给我最大的体会是对一个程序整体的把握和控制,只有将子程序有效的结合起来,才能完成设计的目

22、的。另外,在程序的调试过程中,我也遇到了很多意想不到的困难,在老师的帮助和自己的不懈努力下,我对伟福这款仿真软件有了更深的认识,将困难一一克服,使程序编译成功,仿真实现。 通过对本次毕业论文的编写,使我明白应用主控模块输出的控制信号去控制灯管内的l ed板模块工作,使得产品性能稳定,便以安装容易操作。由于控制程序存储在89c51单片机 的电可擦除flash闪存eprom中,如果用户需要更改系统的亮灯模式model_i,无须改变系统硬件电路,只需修改其中程序即可,是一种很有发展前途的彩灯控制器。通过编写论文,使我对单片机实现彩灯的原理及其使用问题有了更深刻的认识,是我从中体会到单片机原理及技术应

23、用的课题的重要意义,值得我们探讨,使我更深的理解和学会综合运用单片机技术、模拟电子电路、数字电子电路、传感器,软件技术、计算机软件编程技术,设计彩灯。通过设计全面地培养与锻炼电子信息工程专业学生综合运用本专业知识分析问题和解决问题的能力。参考文献1王幸之 钟爱琴. at89系列单片机原理与接口技术m.北京:北京航空航天大学出版社,2004.2谭浩强.c程序设计(第二版)m.北京:清华大学出版社,1999.3赵亮.单片机c语音编程与实例m.北京:人民邮出版社,2004.4房小翠、王金凤.单片机实用系统设计技术m.北京:国防工业出版社,1999.5康华光.电子技术基础数字部分(第四版)m.北京:高

24、等教育出版社,1998.6张毅刚.单片机原理及应用m.北京:高等教育出版社,2003.7李广第,朱月秀,王秀山.单片机基础m.北京:北京航空航天大学出版社,2001.8杨振江.a/d、d/a转换器接口技术与实用电路m.西安:西安电子科技大学出版社.9梅笙,李玮.基于at89c52控制的数控直流电流源的设计j.电子测试,2007(2):19-23.10张鑫.单片机原理及应用m.电子工业出版社,2005.11matthew r, robin t. microprocessor controlled power supplyj. electronic world wireless world, 19

25、94,95 (1639) : 524527.12kuo b c. automatic control systemm. 3th ed. new jersy  prentice hall, 1975. 致谢本次毕业设计的成功得益于很多人的帮助,在此,我要向他们提出感谢!首先,我要感谢教的xx老师,感谢他给我认真讲解这门课,让我学到了很多的知识。再次,我也要感谢知道我们这次设计的指导老师,得助于他悉心的指导,我才能更轻松更顺利的完成这次课程设计。第三,我要感谢身边同学们的帮助,碰到不懂的问题时,使他们给与我耐心的讲解,让我明白一些问题。过几个月的忙碌和学习,本次毕业论文设计已经接近尾声。

26、作为一个大专生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有指导教师的的督促指导,想要完成这个设计是难以想象的。在这里首先要感谢我的论文指导老师。老师平日里工作繁多,但在我做毕业设计的每个阶段,从选题到查阅资料,论文提纲的确定,中期论文的修改,后期论文格式调整等各个环节中都给予了我悉心的指导。除了敬佩杨老师的专业水平外,他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。最后还要感谢大学来所有的学院老师,是在他们的教诲下,我喜欢上了这个专业,掌握了坚实的专业知识基础,为我以后的扬帆远航注入了动力。感谢和我一起生活的室友,是你们让我们的寝室充满快乐

27、与温馨,为学习和生活提供了很好的环境。“君子和而不同”,我们正是如此!愿我们以后的人生都可以充实、多彩与快乐!谢谢你们!附录:程序清单#include<reg52.h>#define uint unsigned intvoid delay(uint);main() uint fre=0x04; uint fre1,fre2; uint comp1=0xfe,comp2=0x80; while(1) /*- 模块一:循环单向闪烁,只有一个灯亮 执行3次,转入下一种闪烁 -*/ p1=0xfe; while(1!=fre-) fre1=0x08; while(1!=fre1-) delay(30000); p1<<=1; p1|=0x01; if(p1=0x7f) delay(30000); p1=0xfe; /*- 模块2:循环单向闪烁,只有两个灯亮 3次,转入下一种闪烁执行 -*/ p1=0xfc; while(3!=fre+) fre2=0x04; while(1!=fre2-) delay(30000); p1<<=2; p1|=0x03; if(p1=0x3f) delay(30000); p1=0xfc; /*- 模块3:循环往复闪烁,只有一个灯亮 执行3次,转入下一种闪烁 -*/ p1=0xfe; fre1=0x04; wh

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论