使用瑞萨R7FC080212 芯片开发的
智能感应调光LED
| |
| |
| 本文记述了采用瑞萨电子的R7F0C芯片作为主控,利用光敏电阻感应外部光照强度,实现LED的自动调节,外部光照越强,则LED越亮,反之亦然从系统设计原理、硬件结构等方面进行阐述。 |
目 录
插图索引
表格索引
错误!未找到目录项。
1 调光LED概述调光对于光源来说很重要,不仅是可以在家居中得到一个更舒适的环境,并可以进一步实现节能减排,而且对于LED光源来说,调光也是比其他荧光灯、节能灯、高压钠灯等更容易实现,所以更应该在各种类型的LED灯具中加上调光的功能。
调光正是LED的一个很大的优点。因为在很多场合其实不需要开灯或者至少不需要那么亮,可是灯却开得很亮,例如半夜到黎明时段的路灯;地铁车厢从地下开到郊区地面时车厢里的照明灯;更常见的是在阳光明媚时靠近窗口的办公室、学校、工厂等的荧光灯都还开在那里。这些地方每天不知道要浪费多少电能!过去因为高压钠灯、荧光灯、吸顶灯、节能灯根本无法调光,也只能算了。现在改用LED以后,可以自如调光了,这些电能完全可以节省下来。
1.1. 智能感应调光LED的原理系统利用光敏电阻组成光线强度床安琪,光线照射在光敏电阻上,则呈现的电阻跟光线基本呈正相关,光线越强则电阻较低。而如果光线越暗,则光敏电阻增大。对应的ADC采样值随之变化,此时设置PWM控制的LED的占空比跟随ADC的采样值变化,则实现LED的自动调光。
2 硬件结构根据前面所述的系统设计原理和功能要求,设计硬件连接如下图:
P02——模拟量输入,用ADC采集。光敏电阻上的电压,检测激光光照与否
P04——PWM输出,通过一个功放驱动板,驱动输出LED。这里采用ULN2003A的驱动板。
图 21 智能感应调光LED的硬件连接示意图
图 22 智能感应调光LED的原型开发实物图
3 软件开发设计3.1. 软件流程图根据功能需求,软件流程如下,比较简单:
初始化ADC、PWM、IO引脚——读取ADC的值——将ADC的值设置对应的PWM占空比的值——循环读取ADC的值。
3.2. 代码3.2.1 Main函数/*
adc_result = (ADCRH<<2) + (ADCRL>>6);
led_brightness = adc_result;
//0x03FF - adc_result;
TDR01H = (unsigned char)(led_brightness>>8);
TDR01L = (unsigned char)(led_brightness&0x00ff);
ADM0 |= 0x80;
*/
4 实现效果经过调试和测试后,最终实物效果图如下:
图 41 智能感应调光LED的效果图
视频地址:http://v.youku.com/v_show/id_XODA3MTI2NzIw.html
5 总结与展望本项目利用了瑞萨的MCU完成了智能感应调光LED。理解了市面上的智能感应调光原理。并很好的利用了瑞萨MCU的Timer-PWM、集成ADC的功能。
5.1. 项目扩展性(1)使用RGB的三色LED,实现多路PWM的炫彩LED控制。
(2)采用人体热释红外传感器、震动传感器实现楼道自动感应灯光等应用。
版本历史(Revision History)