基于AT89C51单片机的LED彩灯控制器设计

发布者:创意旅程最新更新时间:2011-05-14 关键字:LED彩灯  AT89C51单片机  彩灯控制器  模块设计 手机看文章 扫描二维码
随时随地手机看文章

  1引言

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

  本文提出了一种基于AT89C51单片机的彩灯控制方案,实现对LED彩灯的控制。本方案以AT89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。在主控模块上设有8个按键和5位七段码LED显示器,根据用户需要可以编写若干种亮灯模式,利用其内部定时器T0实现一个基本单位时间为5 ms的定时中断,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号,然后驱动各种颜色的灯亮或灭。该新型LED彩灯及其控制器是上海某公司委托开发产品,产品实际应用效果较好,亮灯模式多,用户可以根据不同场合和时间来调节亮灯频率和亮灯时间。与普通LED彩灯相比,具有体积小、价格低、低能耗等优点。

  2系统功能

  新型LED彩灯分为2部分,即彩灯控制器(主控模块)和管内LED板模块(受控模块)。彩灯控制器可直接与220 V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供12 V工作电源,另一方面为主控模块单片机系统(彩灯控制器)提供5 V工作电源。整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯时间和灯光闪动频率。

  上电后系统经过初始化,查询是否有功能切换键按下:有,则进入用户设定模式状态;无,则进入默认缺省工作状态。在用户设定模式状态下,用户可以根据个人爱好及不同场合的需要来指定调用哪些模式,并且可以改变每种模式的时间Ti、频率Fi参数,如果用户想进入缺省状态模式,只需按一下功能切换键即可跳入缺省模式,程序会自动顺序调用亮灯模式;在缺省工作状态下,LED彩灯控制器按照程序设定好的若干亮灯花样模式程序Model_i顺序调用往下走,从第Model_1模式开始工作,自Model_1到Model_2……到Mod el_n为一个亮灯周期,然后再回到Model_1循环继续工作,同样如果想进入用户设定模式状态,只需按下功能切换键即可。整个n种亮灯模式时间可以看作一个大周期T,其中的每一种花样工作模式Model_i(i=1,2,…,n)时间为小周期Ti,对于每一个模式编写一个独立工作子程序Model_i,其中设定了LED三色灯(红、绿、蓝)的点亮时刻(RED_on,GREEN_on,BLUE_on)和熄灭时刻(RED_off,GREEN_off,BLU E_off),以及模式工作时间Ti以及该模式LED闪烁频率Fi。5位七段码显示器的前2位(L1,L2)显示当前工作模式的序号Model_i;后3位(L3,L4,L5)七段码 显示三色LED的工作状态,若该颜色灯点亮则对应七段码显示位为“1”,反之熄灭时则显示位为“灭”即不显示,对系统工作状态起到了很好的实时监控作用。

  因此在LED彩灯上电工作后,用户可以方便地通过主控模块上的显示器知道LED彩灯当前工作模式Model_i,工作时间Ti,频率Fi等实时参数。若实际应用需要根据不同场合和时间来改变彩灯闪亮效果,用户可以通过主控模块上的按键来设定LED不同的闪烁频率Fi和亮灯时间Ti,以便符合实际需要。此外如果用户对某一种模式感兴趣需要仔细观看该种亮灯模式,可以通过键盘选定任意第Model_i模式使系统循环重复工作在该花样模式下。

  3硬件设计

  新型LED彩灯系统包括2大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)。前者是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;后者是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明灯管内。

基于AT89C51单片机的LED彩灯控制器设计

  3.1主控模块电路设计

  主控模块电路如图1所示。主控模块主要设计器件有89C51,5个七段码LED显示器,8个按键,2个稳压器(提供12 V,5 V电压),1个信号输出驱动模块芯片(MC4049)等。通过软件设计,使单片机P0口作为三色LED驱动信号输出口及移位时钟CLOCK信号,P3口为按键输入口,P2口、P1口与5位七段码LED相接作为显示器的输出口。

  3.2管内LED板模块设计

  管内LED板模块电路见图2。管内LED板模块设计主要器件有LED彩灯(红、绿、蓝)、移位触发模块芯片CD4076等。根据实际应用彩灯长度需要,可将不同数量的该管内LED模块实现级连,组成一个完整的LED彩灯。考虑到功率损耗,LED板模块之间接口处用信号正向驱动模块芯片MC4049连接。每个LED板模块上均匀分布3种颜色 LED灯,在实际制作PCB时采用红、绿、蓝3色互隔焊接方式,在电路板上把LED发光管按顺序L1(红)、L2(绿)、L3(蓝)、L4(红)、L5(绿)、L6(蓝)……依次均匀焊在板上成一条直线。为了得到更多的花样模式效果,可以使红绿2种灯从前往后驱动点亮闪烁,蓝灯从后往前驱动点亮闪烁,这样具有很好的动感视觉效果。

基于AT89C51单片机的LED彩灯控制器设计

  4软件设计

  新型LED彩灯控制器最大特点在于所有亮灯模式均由软件控制完成。系统中软件可以分为主程序和中断服务子程序。上电后在缺省状态以顺序调用Model_i花样亮灯模式流程为主程序,以一个单位时间5 ms的T0定时为中断服务子程序。在这个5 ms的T0定时基础上,可以根据需要来确定各种模式工作时间Ti,以及确定在各种亮灯模式Mode l_i内点亮和熄灭各种颜色LED灯的时刻:Red_on,Red_off,Green_on,Green_off,Blue_on,blue_off以及Clock(移位翻转脉冲)等。整个系统软件由主程序( Main)、各个模式子程序(Model_i)、5 ms中断服务子程序(T0 Interrupt)、键盘扫描处理子程序(Key Board)、显示子程序(Display)等程序组成。利用T0定时器作为定时基本单位,根据模式需要计算好各控制信号的发生时刻,根据不同的模式Mo del_i可以设定不同的工作时间Ti和脉冲翻转频率Fi通过P0口输出,使各色L ED灯的驱动时刻与移位触发的翻转时刻步调一致,使LED彩灯按照设计的模式工作。

  除了T0定时中断之外,程序的大部份时间是在处理按键的查询和LED显示的延时。8个按键分别为:4个参数按键(Fi增、减按键,Ti增、减按键),3个模式改变按键(模式上翻UP、模式下翻DOWN、模式保持KEEP),1个功能切换按键。在每次的T0定时中断服务子程序里,需要对各个时间寄存器和模式寄存器进行加1或者清,为主程序查询作准备,同时查询是否已中断6次(30 ms),若30 ms到了,则对参数按键查询一次,是否有时间Ti频率Fi增减键按下并进行相应子程序处理。

  主程序除了调用各种子模式子程序(Model_i),调用LED显示子程序(Display)和延时子程序(Delay)之外,还一直保持查询是否有功能切键按下以及是否有模式改变按键按下,一旦有功能切换键和模式改变键按下,就会进入相应的按键处理。 主程序流程如图3所示。亮灯模式子程序Model_i可以编写若干(n种),只要控制好各色灯触发和熄灭时刻就可以组合成各种亮灯效果。Model_i程序流程如图4所示。

 

基于AT89C51单片机的LED彩灯控制器设计

基于AT89C51单片机的LED彩灯控制器设计

  下面以第一种模式工作为例。

基于AT89C51单片机的LED彩灯控制器设计

基于AT89C51单片机的LED彩灯控制器设计

基于AT89C51单片机的LED彩灯控制器设计

基于AT89C51单片机的LED彩灯控制器设计

  5结语

  与市面上大多数的LED彩灯相比,该种彩灯具有更好的灯光装饰效果,性价比更高,与普通的全硬件LED彩灯相比具有更好的经济效益。应用主控模块输出的控制信号去控制灯管内的L ED板模块工作,使得产品性能稳定,便以安装容易操作。由于控制程序存储在89C51单片机 的电可擦除Flash闪存EPROM中,如果用户需要更改系统的亮灯模式Model_i,无须改变系统硬件电路,只需修改其中程序即可,是一种很有发展前途的彩灯控制器。

关键字:LED彩灯  AT89C51单片机  彩灯控制器  模块设计 引用地址:基于AT89C51单片机的LED彩灯控制器设计

上一篇:基于89C51的IC卡读写器设计与实现
下一篇:基于89C51的摄像镜头控制电路设计

推荐阅读最新更新时间:2024-03-16 12:35

36-基于51单片机LED彩灯控制器设计
具体实现功能 具体功能: (1)至少10个发光管4种花样自动变换,循环往复; (2)彩灯花样变换的快慢节拍可以手动和自动方式控制,手动控制按钮按一次转换一次;自动控制方式每15秒变换一次,1分钟循环一遍; (3)系统复位清零开关。 单片机介绍 51单片是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16
[单片机]
36-基于51<font color='red'>单片机</font>的<font color='red'>LED</font><font color='red'>彩灯控制器</font>设计
软开关双向DC/DC变换模块设计思路
 新型软开关双向DC/DC变换器结构框图如图1所示,该变换器结构的前级是270V直流母线,本变换器由升压输出滤波电路、PS-FB-ZVS-PWM变换器、降压输出滤波环节、UC3875控制电路、驱动电路、反馈检测电路、辅助电源电路、保护电路、蓄电池充电控制电路、监控电路等部分组成。   图1 PS-FB-ZYX-PWM双向DC/DC变换器结构图   (1)升压电路。   升压电路主电路采用推挽电路设计,其电路如图2所示。   图2 升压电路主电路   推挽式变换器电路由两个正激式变换器电路组成,它们工作时相位相反。在每个周期里,两个晶体管交替导通和截止,在各自导通的半个周期内,分别把能
[电源管理]
软开关双向DC/DC变换<font color='red'>模块设计</font>思路
单片机之流水灯 AT89C51
流水灯是单片机入门必学的一个实验。这里面主要涉及的操作就是移位操作,还有就是对延时的控制。在没有接触定时器的时候,可以用for语句来进行延时,当然并不能做到精准延时,可以通过在试验箱上的实验现象,来修改延时时间的长短。 #include reg51.h #define uchar unsigned char #define uint unsigned int void delay() { uchar m,s,n; for(m=20;m 0;m--) for(s=20;s 0;s--) for(n=248;n 0;n--); } /*上面这个延时到底延时了多长时间,可以通过keil中的反汇编看到。晶振为12
[单片机]
基于单片机AT89C51的时间/位移换向控制器设计
引言 在实际生产过程中,常常要用到具有自动换向功能的控制部件,如机械加工中的往返运行(位移),直流电源的正反向输出,电动机的正反转运行等现象,都是当正向(或反向)运行到一定时间或一定位置时,自动换为反向(或正向)运行,周而复始的过程。实现这一过程的自动化,就是设计一套控制电路,再配以位移传感器或时间继电器。目前市场现有的时间继电器虽然可以用多个组合来满足一些使用场合的要求,但仍存在着重复计时误差大,稳定可靠运行性不高,使用不方便灵活等问题。为此,笔者研发了以单片机为核心组成的时间/位移换向控制器SWHX-1,该系统具有成本低等特点,可完全且克服以上不足。 电路组成及工作原理 SWHX-1的内部电路如图1所示。该系统分为输入输
[单片机]
AT89C51单片机电机转速测量系统仿真
单片机电机转速测量系统仿真统采用单片机中T1计数器对转速脉冲进行计数。定时器T1 工作于外部事件计数方式,对转速脉冲计数; T0 工作于定时器方式。每到1 s 读1 次计数值,此值即为脉冲信号的频率,根据式( 1) 可计算出电机的转速。转速检测装置的软件系统主要包括: 测速主程序、数据处理子程序和显示子程序。单片机上电后,系统进入准备状态。首先进行初始化,然后读取脉冲数据进行运算,将转速显示在LCD上。需要这款仿真及C语言程序的爱好者可从文章配图左上角网址上了解。 该单片机电机转速测量系统仿真仿真采用测频法“M法”测量电机转速。即在一定测量时间T内,测量脉冲发生器(替代输入脉冲)产生的脉冲数m1来测量转速,计算式如下:n=6
[单片机]
<font color='red'>AT89C51</font><font color='red'>单片机</font>电机转速测量系统仿真
手机应用中的OLED驱动器和模块设计
在发现电子发光机理的十年后,有机发光二极管(OLED)技术最终商用在手机,MP3和数码相机中。按Display Search的数据报告, 从2001年第一颗单芯片OLED驱动器起, 2003年有超过一千七百万颗IC用在手机显示上.今年,OLED也开始应用在手机的主显示屏上。OLED在手机显示上的应用正取得腾飞性的增长, 预计今年OLED模块的使用数量将超过3三千万片。   与OLED技术和发展相呼应,OLED的驱动器也日益扮演着重要的角色。不只是从低占空比上升到支持高占空比, 而且应用了诸如每个RGB电流的控制、更宽的IC工作温度 (-45到80℃) 、内部DC-DC升压、以及图形加速指令等一些特性。Solomon Sys
[电源管理]
手机应用中的OLED驱动器和<font color='red'>模块设计</font>
浅议在直流电源模块设计中的难点
热处理 这应该是 电源模块 设计的最大局限性,也是最容易被用户所忽略的地方。市场的现状是客 户没几个真正懂电源,因而,给很多电源厂家玩文字游戏的空间。大家都知道,工业级电源模块跟军品模块的最大区别就在于工作温度,工作温度又分环境温度和元 器件温度。以元器件温度来说,行业共识是最高只能达到125摄氏度;而环境温度比较合理的标注应该是-40到+85摄氏度(当然,并不是所有的电源厂家都能做到这一点,但顶级电源供应商都能做到)。游戏开始了:前段时间有个案子,客户问我说怎么你们的工作温度这么窄(-40到+85)?说是谁谁的模块可以做到120度云云……费了我好大的功夫才给客户解释清楚!游戏二:淡化处理“功率将额”。咋一看,两款产品设计规格一
[电源管理]
浅议在直流电源<font color='red'>模块设计</font>中的难点
基于PlCl6LF874单片机的电容测量模块设计
  电容式传感器已广泛应用于工业、医学、军事等领城。但目前大部分电容测量方法集成化水平低、精度低,因而对电容特别是对微小电容的精确测量始终是一个很重要的内容。振荡法电路结构简单、抗干扰能力差,板间内电容影响测量结果;电桥法利用电桥平衡原理测量电容,测量结果受桥臂电容性能影响较大。本文用到美国 Micmchip公司PICl6LF874单片机,该单片机采用RISC精简指令集、哈佛总线结构、流水线指令方式,具有抗干扰能力强、功耗低、高性能、价格低等特性。   1 PICl6LF874单片机   PICl6系列单片机采用精简指令集(Reduced InstrucTIon Set Computer,RISC)结构,突破了传统单片机对PC
[单片机]
基于PlCl6LF874<font color='red'>单片机</font>的电容测量<font color='red'>模块设计</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved