基于单片机的艺术彩灯系统设计

时间:2022-09-25 07:19:14

基于单片机的艺术彩灯系统设计

A Kind of Neon Light Control System Based on SCM

Lv Dongteng;Rao Qunhua

(Shaanxi Vocational & Technical College of National Defense Industry,Xi'an 710302,China)

摘要:本文设计了一种新型的艺术彩灯控制系统,该系统使用单片机作为控制核心,采用了PWM脉宽调制技术。在系统硬件电路中增加了过零检测,利用三极管电路控制彩灯颜色的变化和组合。改进了传统艺术彩灯制作工艺要求严格,色彩变化单一的缺点。通过实验,该系统运行稳定,易于扩展。

Abstract: A kind of neon light control system is designed, the control core of this system is SCM, and the system adopts PWM pulse width modulation technology. It increased the zero-crossing detection, controlled change and combination of neon light by using transistor circuit. The strictness of production process of traditional neon light, and the disadvantage of a single color change were improved. The new systems are stable and more versatile through the experiment.

关键词:艺术彩灯 控制系统 单片机 PWM

Key words: neon light;control system;SCM;PWM

中图分类号:TP2 文献标识码:A文章编号:1006-4311(2011)19-0157-02

0引言

在我们的日常生活当中,各式各样的艺术彩灯随处可见,艺术彩灯具有结构简单,成本低廉等一系列优点,在目前居家个性化的要求下,它具有很好的市场前景。

1系统概述

彩灯可以通过定时或随用户要求来变换不同的色彩。传统的彩灯一般只有3种颜色,分别对应3种颜色的灯泡,当需要其中某种颜色的时候,点亮这种颜色的灯泡,熄灭其他颜色的灯泡。目前市面最为常用的彩色灯大都利用惰性气体在电极作用下变色的原理制作,工艺要求严格。本案例采用三基色原理,选用价格低廉的51系列的单片机控制基色LED灯泡从而实现丰富的色彩变化。该系统供电电源为220V市电;能实现一定时间的指令延时;能实现对彩灯亮度的控制以及对彩灯色彩变化周期的控制;允许用户对彩灯的初始颜色状态和颜色变化周期进行设置。为了达到对艺术彩灯的灯光明暗控制,我们采用的方法是利用PWM脉宽调制技术来调节LED的工作电压的占空比。为了实现比较精确的控制和避免硬件电路的结构过于复杂,本次设计我们主要采用软件调制的方法,即通过软件来实现PWM脉宽调制技术,编写软件程序来生成所需要的PWM波形。

2系统硬件电路构成

整个硬件电路主要由单片机、系统电源电路、外部按键和LED控制电路几部分组成(此外还有RC振荡器电路)。系统硬件框图如图1所示。

2.1 系统主控芯片该系统采用台湾义隆电子公司生产的EM78P153E单片机。EM78P153E也是51系列的单片机,它同样是8位的单片机,其内部集成了频率可编程的RC振荡器和复位电路,这样可以大大减小电路的体积,片内有1024×13位的程序存储器,4个内部校准RC振荡器,32×8位片内寄存器组(SRAM,一般寄存器)。两组双向I/O端口,P6x和P7x。8位定时/计数器(TCC),其信号源,触发边缘可以编程选择,溢出产生中断[2]。EM78P153E的指令系统只有58条指令,比普通51系列单片机要少很多,这样可简化软件设计。结构图如图2所示。

2.2 系统电源电路的设计本系统在电源电路中采用电容降压,全桥整流。220V的交流市电经过5V的稳压管即可得到单片机所需的5V直流工作电压[3]。同时交流检测电路也是在电源电路上完成的,它是利用一个1兆欧的电阻直接与单片机的I/O接口相连,检测交流过零。由于系统完全依靠单片机内部的RC振荡器,会受温度的影响,一致性不好,长时间运行会使彩灯变化不一致,所以通过检测同一交流电,能保证所有的同时上电的彩灯同步变化。电路设计如图3所示。

2.3 LED控制电路的设计LED控制电路的设计相对简单,即通过控制三极管的导通和截止来控制LED的亮灭状态。设蓝色LED和绿色LED由两个三极管控制,一个NPN型,一个PNP型。当与单片机I/O口连接的NPN截止时,控制蓝色LED和绿色LED的PNP三极管也截止,这两色LED便点亮;相反,如果单片机I/O口输出高电平,,PNP的CE极间导通,接在PNP间的LED则熄灭。两个PNP三极管间的电阻要选的恰当,截止的时候要求在电阻上产生的压降小于几个LED的点亮电压。而红色LED只用一个NPN型三极管来控制,工作原理和蓝色LED和绿色LED的相似。下面仅给出蓝色LED的控制电路。(如图4)

3系统软件实现及调试

3.1 控制系统的主程序设计彩灯系统上电后首先完成整个系统的初始化过程,然后从单片机的外部拨码开关读入用户定义设定值,系统进入循环,由一个状态进入另一个状态。系统总共定义了8种状态,分别实现不同的颜色变化。这8种状态分别是每进入一个状态,执行相应代码,这种状态的连续变化就使得彩灯的色彩状态也相应地不断变化。这8种状态分别是:1.红色LED渐亮;2.绿色LED熄灭;3.红色LED渐暗4.蓝色LED渐暗;5.绿色LED渐暗;6.红色LED渐亮;7.蓝色LED渐暗;8.红色LED渐暗。根据三基色原理,以上8种状态在循环时彩灯分别显示为:1.红色;2.黄色;3.绿色;4.青色;5.蓝色;6.紫色;7.红色;8.白色。同时为了避免出现所有的LED灯泡同时熄灭的状态出现,在设计中将状态8的最终结果定义为彩灯发出白色的光,即红色,绿色和蓝色LED灯泡熄灭后同时发光,并达到最大值,最终稳定在白光色。

3.2 PWM子程序设计如系统主流程图所示:单片机上电后,初始化各寄存器。完成初始化后,系统读取外部拨码开关状态,初始变化周期并跳转到各相应状态的分支子程序。在读取外部拨码开关状态值前,先使彩灯发出白色光,作为彩灯的初始状态。完成单个状态的执行后,按照系统流程顺序跳至下一状态不断循环。系统循环进入不同的状态,每一个状态都类似一个单片机中断程序,它有独立的动作流程,流程的核心是PWM调制,利用两个计数器的比较来控制各个基色LED的点亮/熄灭。PWM子程序设计如下:

------------------------

LOOP-T1:WDTC

CALL DELAY; PWM计数器开始记数

CALL DETECT-AC;交流检测

MOV A,PWM-C1;CNT1、CNT2比较

SUBA,PWM-C2;

JBS0X03,0

JMPLT1; 比较输出

BS PORT5,1;

JBSFLAG,DIRECT-F;状态是否跳转

JMPLOOP-T1;

BC FLAG,DIRECT-F;

JMPLOOP-T20;进入T2

-------------------------------

3.3 系统综合调试在系统综合调试的时候应注意由于红色、绿色、蓝色LED亮度各不相同,实际调试的时候要视LED的各项具体参数搭配调色才能使彩灯在红、绿、蓝全亮的时候搭配出基本接近白色的颜色。红色LED比较容易点亮,从暗到亮的过程比较突然,所以红色相对于蓝色和绿色可以稍微放慢一点变化的速度,从而可以使得彩灯系统的总体变化比较协调。

4结束语

本系统选用EM78P153E型号的单片机,外部按键采用拨码开关控制,系统电源电路采用全桥整流电路。实现了红、绿、蓝、黄、青、紫、白七种颜色的循环显示。如果要让彩灯实现更加复杂的功能和色彩的显示更加鲜艳,则可根据需要在本设计的基础上进行相应的软硬件扩展。通过验证,该系统运行稳定,成本低廉,可靠性达到控制要求,市场应用前景广阔。

参考文献:

[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2005.

[2]魏克新.自动控制综合应用技术[M].北京:机械工业出版社,2007.

[3]童诗白.模拟电子技术基础[M].北京:高等教育出版社,2003.

[4]冯建华.单片机应用系统设计与产品开发[M].北京:人民邮电出版社 2004.

[5]王兆安.电力电子技术[M].北京:机械工业出版社,2005.

上一篇:高校大学生职业生涯教育模式构建与实现途径分... 下一篇:串行口通信技术应用探究