为了使电力得到高效利用,本文提出一种基于单片机的智能LED台灯设计。该台灯具有手动、自动两种调节方式。硬件设计部分分为单片机控制模块、按键模块、照明模块、光敏模块、LED指示模块等多个部分。单片机主控制芯片选用STC89C51RC,通过按键模块来调整工作模式和LED的亮度,照明模块选用12草帽型白光LED,光敏模块选用ADC0832芯片实现对光敏信号的采集,并利用PWM控制技术对LED进行光度的自动调节。通过单片机C语言编程进行软件设计将程序下载到单片机内。 In order to make use of electricity efficiently, this design of intelligent LED lamp which is based on STC89C51RC single-chip microcomputer is proposed in this paper. The lamp has two types of regulation, manual regulation and automatic regulation. The hardware design part consists of SCM control module, keyboard module, lighting module, photosensitive module, LED module and so on. SCM master control chip chooses STC89C51RC. Through the key module, SCM adjusts the working mode and the LED brightness. Lighting module uses white LED in the type of 12 straw hats. Photosensitive module uses ADC0832 chip to implement the light signal acquisition, and uses PWM dimming technology to automatically adjust the luminosity of LED. Through programming SCM C language, the software is designed and the procedure is loaded into SCM.
张景扩1,彭龑2,陈冬君1,许理1
1四川理工学院自动化与电子信息学院,四川 自贡
2四川理工学院计算机学院,四川 自贡
收稿日期:2016年2月1日;录用日期:2016年2月23日;发布日期:2016年2月26日
为了使电力得到高效利用,本文提出一种基于单片机的智能LED台灯设计。该台灯具有手动、自动两种调节方式。硬件设计部分分为单片机控制模块、按键模块、照明模块、光敏模块、LED指示模块等多个部分。单片机主控制芯片选用STC89C51RC,通过按键模块来调整工作模式和LED的亮度,照明模块选用12草帽型白光LED,光敏模块选用ADC0832芯片实现对光敏信号的采集,并利用PWM控制技术对LED进行光度的自动调节。通过单片机C语言编程进行软件设计将程序下载到单片机内。
关键词 :STC89C51RC单片机,LED,PWM控制
随着能源的短缺,节能环保越来越被大家所重视。目前有许多台灯设计不合理,以至于能源被大大浪费。为了使电力得到高效利用,本文提出一种基于单片机的智能LED台灯设计,该台灯具有手动、自动两种调节方式,能够在保证正常实用的状况下又能使电力得到充分利用 [
智能LED台灯是以STC89C51RC单片机为控制芯片。STC89C51RC为40引脚双列直插式芯片,增强型8051单片机,工作电压3.3 V~5.5 V,片内集成4 K字节ROM和256字节RAM,具有EEPROM功能,两个定时/计数器,具有看门狗功能,工作频率范围为0~40 MHz,实际工作频率可达48 MHz,有32个通用I/O口,具有价格低廉、兼容性强、超强抗干扰能力、超低功耗等优点 [
STC89C51单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。内部时钟方式如图2。在STC89C51单片机内部有一振荡电路,只要在单片机的XTAL1(18)和XTAL2(19)引脚外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频率和快速起振,电容值在5~30 pF,典型值为30 pF。晶振CYS的振荡频率范围在1.2~12 MHz间选择,典型值为12 MHz和6 MHz。
当在STC89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充放电来实现的。只要Vcc的上升时间不超过1 ms,就可以实现自动上电复位。除了上电复位外,有时还需要按键手动复位。本设计用按键手动复位。按键手动复位有电平方式和脉冲方式两种 [
图1. 系统整体结构框图
图2. 时钟电路
图3. 复位电路
电源Vcc接通而实现的。按键手动复位电路见图3。时钟频率用11.0592 MHZ时C取10 uF,R取10 kΩ。
三极管在实际的放大电路中使用时,还需要加合适的偏置电路。首先是由于三极管BE结的非线性(相当于一个二极管),基极电流必须在输入电压 大到一定程度后才能产生(对于硅管,常取0.7 V)。当基极与发射极之间的电压小于0.7 V时,基极电流就可以认为是0。但实际中要放大的信号往往远比0.7 V要小,如果不加偏置的话,这么小的信号就不足以引起基极电流的改变(因为小于0.7 V时,基极电流都是0)。如果我们事先在三极管的基极上加上一个合适的电流(叫做偏置电流,上图中那个电阻Rb就是用来提供这个电流的,所以它被叫做基极偏置电阻),那么当一个小信号跟这个偏置电流叠加在一起时,小信号就会导致基极电流的变化,而基极电流的变化,就会被放大并在集电极上输出[
LED的亮度受电流控制,通过控制电流调节LED灯亮度。利用公式
单片机键盘有独立键盘和矩阵式键盘两种:独立键盘每一个I/O口上只接一个按键,按键的另一端接电源或接地(一般接地),这种接法程序比较简单且系统更加稳定;而矩阵式键盘式接法程序比较复杂,但是占用的I/O少。本设计选用了独立式键盘接法。
独立式键盘的实现方法是利用单片机I/O口读取口的电平高低来判断是否有键按下。将常开按键的一端接地,另一端接一个I/O口,程序开始时将此I/O口置于高电平,平时无键按下时I/O口保护高电平。当有键按下时,此I/O口与地短路迫使I/O口为低电平。按键释放后,单片机内部的上拉电阻使I/O口仍然保持高电平[
光敏电阻又称光导管,常用的制作材料为硫化镉,另外还有硒、硫化铝、硫化铅和硫化铋等材料。这些制作材料具有在特定波长的光照射下,其阻值迅速减小的特性。这是由于光照产生的载流子都参与导电,在外加电的作用下作漂移运动,电子奔向电源的正极,空穴奔向电源的负极,从而使光敏电阻器的阻值迅速下降。光敏电阻器是利用半导体的光电导效应制成的一种电阻值随入射光的强弱而改变的电阻器,又称为光电导探测器;入射光强,电阻减小,入射光弱,电阻增大。还有另一种入射光弱,电阻减小,入射光强,电阻增大。
图4. 三极管驱动LED电路
光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。常用的光敏电阻器硫化镉光敏电阻器,它是由半导体材料制成的。光敏电阻器对光的敏感性(即光谱特性)与人眼对可见光 (0.4~0.76) μm的响应很接近,只要人眼可感受的光,都会引起它的阻值变化 [
ADC0832是CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑。利用它可直接输入8个单端的模拟信号分时进行A/D转换。ADC0832的参考电压设置成5 V,时钟信号通过单片机P3.3口利用定时器中断输出 [
软件任务设计要和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务由软件完成,在硬件定下来后,软件的设计就要配合硬件来进行 [
系统初始状态下工作在自动检测外部亮度模式,此时系统根据光敏电阻的检测然后再将信号送至模数转换芯片内并调节LED灯的亮度。如果系统模式按键按下,系统工作模式为手动模式即亮度受手动调节而变化。
图5. 光敏电阻电路
图6. ADC0832模数转换电路
图7. 软件流程图
由于自动模式下的亮度随着外围光源的变化而变化,也就是外部的亮度增加LED的亮度降低,但是这种降低不是无尽的降低,当外部的亮度增加到一定情况下,LED灯则会熄灭。反之当外部亮度降低的时候,LED灯逐渐变亮,当暗度到一定的情况下则LED灯亮度保持最大不会改变[
手动模式下分为增加亮度和降低亮度两种情况,而每一种情况为七个档位,增加亮度模式下一档为最暗七档为亮度最大。当按下降低亮度的时候则LED灯的亮度会降低直至熄灭。
基于C51单片机的PWM调光台灯以STC89C51作为主控芯片,设置手动控制、自动控制。在手动控制时,分为多个档,输出不同的PWM占空比实现了对光度的手动调节。在自动控制时,通过ADC0832模拟数字转换芯片不断检验光敏电阻的电压来间接测量感应光度,将电压和预设的阈值进行对比,调整PWM的占空比实现了对光度的自动调节[
自贡市科技计划项目:新型节能绿色照明系统的研究与开发2011G051。
张景扩,彭龑,陈冬君,许理. 基于51单片机的智能LED台灯设计The Design of Intelligent LED