文档库 最新最全的文档下载
当前位置:文档库 › 基于单片机多控制、多闪烁LED彩灯

基于单片机多控制、多闪烁LED彩灯

基于单片机多控制、多闪烁LED彩灯
基于单片机多控制、多闪烁LED彩灯

四川信息职业技术学院

毕业设计说明书

设计题目:基于单片机多控制

多闪烁LED彩灯

专业:电子信息工程技术

班级:电信08-3 学号: 08190** 姓名:潘 * * 指导教师:张万良

二〇一〇年十二月二十二日

四川信息职业技术学院毕业设计任务书

备注:任务书由指导教师填写,一式二份。其中学生一份,指导教师一份。

目录

摘要.................................................... 错误!未定义书签。第1章方案设计.......................................... 错误!未定义书签。

设计方案............................................ 错误!未定义书签。

方案选择............................................ 错误!未定义书签。第2章硬件设计.......................................... 错误!未定义书签。

直流稳压电源电路.................................... 错误!未定义书签。

单片机最小系统...................................... 错误!未定义书签。

LED彩灯显示电路..................................... 错误!未定义书签。

按键控制电路........................................ 错误!未定义书签。

串口电路............................................ 错误!未定义书签。第3章软件设计.......................................... 错误!未定义书签。第4章系统仿真调试...................................... 错误!未定义书签。

系统仿真............................................ 错误!未定义书签。

仿真调试............................................ 错误!未定义书签。总结.................................................... 错误!未定义书签。参考文献.................................................. 错误!未定义书签。附录1 LED彩灯控制系统仿真电路图......................... 错误!未定义书签。附录2 LED彩灯彩灯控制程序代码........................... 错误!未定义书签。

摘要

本文介绍了一种简易LED彩灯控制系统的软硬件设计过程,本方案以AT89C51单片机作为主控核心,按键控制电路、彩灯显示电路以及单片机最小系统等模块组成的核心主控制电路。利用软件编程烧录程序到单片机来实现对LED彩灯进行控制,本系统亮灯模式多,用户根据操作提示可以随意变换想要的闪烁方式和控制彩灯的闪烁频率。本系统具有电路结构简单、易操作、硬件少、体积小、成本低、低能耗等优点,具有一定的实用和参考价值。

关键词LED彩灯;彩灯控制系统;闪烁方式

第1章方案设计

随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响彩灯效果,因此有必要对现有的彩灯控制器进行改进。

设计方案

彩灯控制器大致可分为两种方案实现。一种是利用电子电路装置控制,另一种是采用单片机控制。

方案一:

根据设计任务要求介绍的彩灯控制电路的基本组成,可以确定彩灯控制器应由振荡电路、计数/时序分配电路、移位位寄存器和彩灯显示五部分组成。其框图如图1-1所示。

图1-1 彩灯循环控制器硬件框图

方案二:

本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计,

来达到本设计的要求。其硬件构成框图如图1-2所示,以单片机为核心控制,由单片机最小系统(时钟电路、复位电路、电源)、按键控制电路、LED发光二极管和5V直流电源电路组成。

供电信号

图1-2 单片机彩灯循环控制系统硬件框图

此设计方案中单片机的P1口接5路按键控制电路,实现彩灯花型的切换功能;单片机的引脚接上一个按钮开关以实现对彩灯闪烁频率的控制,即实现了快慢两种节拍实现花型的变换;单片机上的P2口接八路LED发光二极管组成彩灯电路,显示彩灯循环情况。

方案选择

结合设计任务书比较以上两种方案可知:利用电子电路装置控制,其电路不很复杂,制作相对较容易点,成本也相对较低,但可调性差,亮灯模式少而且样式单调,达不到设计任务要求或实现困难。采用单片机控制其优点是电路集成度高,工作原理简单,清晰明了,自定义编程,控制的图案花样多,移植性好等。

综上,显然方案二各方面优越于方案一,以及为了体现专业优势,本次设计采用第二种方案。

第2章硬件设计

直流稳压电源电路

对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源电路的稳定可靠是系统平稳运行的前提和基础。电子设备除用电池供电外,还采用市电(交流电网)供电。通过变压、整流、滤波和稳压后,得到稳定的直流电。直流稳压电源是电子设备的重要组成部分!本项目直流稳压电源为+5V。如下图所示:直流稳压电源的制作一般有3种制作形式,分别是分立元件构成的稳压电源、线性集成稳压电源和开关稳压电源。下图稳压电源采用的是三端集成稳压器7805构成的正5V直流电源。

图2-1 三端固定式集成稳压电源电路图

AT89C51单片机的工作电压范围:—,所以通常给单片机外接5V直流电源。由于时间关系,此处用3节的干电池供电,在此不在赘述此稳压电源电路图原理。

单片机最小系统

要使单片机工作起来,最基本的电路的构成由单片机、时钟电路、复位电路等组成。单片机最小系统如下图2-2所示。

时钟电路:本系统采用单片机内部方式产生时钟信号,用于外接一个12MHz石英晶体振荡器和2个30pF微调电容,构成稳定的的自激振荡器,其发出的脉冲直接送入内部的时钟电路。

复位电路:确定单片机工作的起始状态,完成单片机的启动过程。单片机系统的复位方式有上电自动复位和手动按键复位。本设计采用手动按键复位,该复位方式同样具有上电自动复位功能。电路如下图所示。

图2-2 单片机最小系统

LED彩灯显示电路

LED彩灯显示电路(如图所示)实际上是由8个发光二极管和8个电阻构成的电路。

发光二极管与电阻对应串联,然后接在与之相对应的P2口上。通过软件编程对P2口输出高低电平来实现不同的闪烁花型。由于发光二极管的导通电压一般为以上,另外,他的工作电流根据型号不同一般为1mA到30mA,电阻选择范围100欧姆~3千欧姆在此我们这里选用560欧姆的电阻。

图2-3 LED彩灯显示电路

按键控制电路

按键控制电路(如图2-4所示)是由6个按键开关构成的。他们分别接在单片机

AT89C51的P1接口和口,Key1﹍Key5接在﹍,Key6接在上。为了一对一的控制LED灯的闪烁方式。当按下开关Key1时, LED彩灯系统闪烁第一种彩灯花型。当按下开关Key2时, LED灯系统闪烁第二种闪烁方式……

当闭合Key6时,彩灯闪烁节拍变慢。

图2-4 键盘控制电路

串口电路

串口电路为单片提供与PC机连接端口,为单片机提供下载程序到单片机程序存储器中。串口原理图如图2-5所示。

串口也称串行通信接口,RS-232是目前最常用的一种串行通讯接口,由于其形状和针脚数量的原因,其接头又被称为DB9接头。RS-232针脚定义: 2 RXD ← Receive Data 接收数据、3 TXD → Transmit Data 发送数据、5 GND — System Ground 系统接地,一般就用到这几个引脚。

图2-5 串口原理图

MAX232芯片是专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v 单电源供电。

MAX23内部结构基本可分三个部分:

第一部分是电荷泵电路:由1、2、3、4、5、6脚和4只电容构成,功能是产生+12v

和-12v两个电源,提供给RS-232串口电平的需要。

第二部分是数据转换通道:由7、8、9、10、11、12、13、14脚构成两个数据通道,其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道,8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS 数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出第三部分是供电:15脚DNG、16脚VCC(+5v)。

在此,本系统的硬件电路已经全部设计完毕。

第3章软件设计

单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多控制、多闪烁方式的LED灯系统循环点亮的现象,我们还需要告诉单片机怎么样进行控制,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的明灭。软件编程是多控制、多闪烁方式的LED灯系统中的一个重要的组成部分,是本设计的重点和难点。下面,我将阐述多控制、多闪烁方式的LED灯系统是如何实现8个LED灯的循环点亮,来介绍实现流水灯控制的软件编程方法。

本设计是以单片机AT89C51为核心控制8个发光二极管5种闪烁方式的变换。硬件电路如图附录1所示,八个发光二极管D1-D8分别接在单片机的-接口上,当给口输出“0”时,发光二极管点亮,当输出“1”时,发光二极管熄灭。可以运用输出端口指令MOV P0,A或MOV P0,#DATA,只要给累加器值或常数值,同理,接在~口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的成流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到闪烁效果。

程序设计流程如图3-1。程序启动时跳转到键盘判断模块程序中,此程序里面包含Key1~Key5的按键情况判断,循环检测直到有按键按下的时候,程序转去相对应按键的彩灯显示的花型模块,与此同时,当按键Key6有闭合时,程序中调用延时程序程序时,给延时参数赋值上另一个值,是延时程序延时时间发生改变,以达到不同快慢节奏闪烁的彩灯。具体程序流程如下图所示。

图3-1 主程序流程图

第4章系统仿真调试

系统仿真

本设计使用的Keil C51软件来进行编程。Keil C51提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。

Proteus的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。

图4-1 仿真电路图

仿真调试

本系统的调试是把在Keil里面写好的程序通过编译不出现任何错误后将生成的后缀名为.HEX的文件加载到AT89C51单片机中。接下来我们将在PROTEUS软件进行软硬件结合的调试。

图4-2 程序编译

下面是在PROTEUS软件仿真系统中的调试结果,如表4-1:

表4-1 测试结果及状态分析

经以上仿真上测试证实,能实现本设计系统要求的预期的功能。

总结

在经过几周的不懈努力中,终于完成了毕业设计任务。通过本设计锻炼了我们的实践能力,也是对以后我们实际工作能力的训练和考察过程。现在是一个高科技的时代,单片机的应用无处不在,这更坚定了我要学好单片机的决心。

本设计本身就比较简单,整个毕业设计的过程中每一步都是自己亲自做过的,在经过遇到问题,思索问题到解决问题的过程中,收获是最多的。以往没有注意到的问题,都在这一次的毕业设计中得以体现,这培养了我的细心,耐心和专心。我觉得能够在这次的毕业设计中学到很多的东西,以往不注意的细节,在这一次中是必须让自己去注意的。也是我这三年来所学到知识的一个体现。我深深知道,每一次的学习实践环节都是那么的来之不易,都是通过老师的深思熟虑后,才给我们定下目标。然后让我们在知识的海洋里翱翔,让我们随着年龄的增长不断的扩充自己的知识领域,也逐渐成熟,逐渐长大,老师同时也教导我们逐渐成为一个能够为身边的人,为家庭,为国家做出点点贡献的人,教导我们学会感恩。所以,我在这次的毕业设计中,认真对待每一个过程,希望自己的认真,自己最后的毕业设计的成果能够回报老师这么多年来的教导,这么多年的奉献。感谢教导我们的所有老师。

最后,由于毕业期间,时间仓促,错误与不妥之处在所难免,敬请老师批评指正。

参考文献

[1] 周国运.单片机原理及应用.北京:中国水利水电出版社,2009

[2] 陈梓城.模拟电子技术基础.北京:高等教育出版社,2007

[3] 陈正义.单片机控制实习[M].北京:人民邮电出版社,2006

[4] 李朝青.单片机原理及接口技术.北京:人民邮电出版社,2006

附录1 LED彩灯控制系统仿真电路图

附录2 LED彩灯彩灯控制程序代码

ORG 0000H

LJMP MAIN

ORG 0040H

MAIN:

MOV P1,#0FFH

MOV A,P1

CJNE A,#b,S1

LCALL K1

S1: CJNE A,#b,S2

LCALL K2

S2: CJNE A,#b,S3

LCALL K3

S3: CJNE A,#b,S4

LCALL K4

S4: CJNE A,#b,MAIN

LCALL K5

LJMP MAIN

K1: MOV A,#01111111b

C1: RL A

MOV P2,A

LCALL Delay

JNB ,K2

JNB ,K3

JNB ,K4

JNB ,Z

LJMP C1

K2: MOV P2,#0FEH

LCALL Delay

MOV P2,#0FCH

LCALL Delay

MOV P2,#0F8H

LCALL Delay

MOV P2,#0F0H

LCALL Delay

MOV P2,#0E0H

LCALL Delay

MOV P2,#0C0H

LCALL Delay

MOV P2,#80H

LCALL Delay

MOV P2,#00H

LCALL Delay

MOV P2,#80H

LCALL Delay

MOV P2,#0C0H

LCALL Delay

MOV P2,#0E0H

LCALL Delay

MOV P2,#0F0H

LCALL Delay

MOV P2,#0F8H

LCALL Delay

MOV P2,#0FCH

LCALL Delay

MOV P2,#0FEH

LCALL Delay

MOV P2,#0FFH

LCALL Delay

LJMP MAIN

Z: LJMP K5

K3: MOV P2,#55H

LCALL Delay

MOV P2,#0AAH

LCALL Delay

MOV P2,#0FFH

LJMP MAIN

K4: MOV P2,#01111110B

LCALL Delay

MOV P2,#00111100B

LCALL Delay

MOV P2,#00011000B

LCALL Delay

MOV P2,#00000000B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#B

LCALL Delay

LJMP MAIN

K5: MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#01111110B

LCALL Delay

MOV P2,#B

LCALL Delay

MOV P2,#00H

LCALL Delay

MOV P2,#0FFH

LCALL Delay

MOV P2,#00H

LCALL Delay

MOV P2,#0FFH

LCALL Delay

LJMP MAIN

Delay: JNB ,D1

mov r5,#01h

LJMP D5

D1: MOV r5,#04h

D5: mov r6,#0ffh D6: mov r7,#0ffh D7: nop

djnz r7,D7

djnz r6,D6

djnz r5,D5

ret

END

四川信息职业技术学院毕业设计(论文)评语

相关文档