呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,感觉好像是人在呼吸。其广泛应用于手机之上,并成为各大品牌新款手机的卖点之一,起到一个通知提醒的作用。
广泛应用于手机之上,并成为各大品牌新款手机的卖点之一。如果你的手机里面有未处理的通知,比如说未接来电,未查收的短信等等,呼吸灯就会由暗到亮的变化,像呼吸一样那么有节奏,起到一个通知提醒的作用。
电子爱好者可通过简单的电路来实现呼吸灯的效果。
Arduino光敏电阻调节呼吸灯
测试PWM做呼吸灯,以及用光敏电阻做达文西呼吸灯,并输出串口光敏AD值,可作为智能家居中,卧室慢慢亮起的地灯,或根据室内光线调节光亮等效果。
呼吸灯:
[plain] view plain copyvoid setup ()
{
pinMode(13,OUTPUT);
}
void loop()
{
for (int a=1; a《=100;a++) //循环语句,控制PWM亮度的增加
{
analogWrite(13,a);
delay(20); //当前亮度级别维持的时间,单位毫秒
}
for (int a=100; a》=1;a--) //循环语句,控制PWM亮度减小
{
analogWrite(13,a);
delay(20); //当前亮度的维持的时间,单位毫秒
}
delay(500); //完成一个循环后等待的时间,单位毫秒
}
左边是LED呼吸灯,右边是光敏电阻。
[plain] view plain copy#define ADpin A0
#define LED 13
int ADBuffer = 0;
void setup()
{
pinMode(LED,OUTPUT);
Serial.begin(9600); //波特率9600
}
void loop()
{
ADBuffer = analogRead(ADpin); //读取AD值
Serial.print(“GMAD = ”);
Serial.println(ADBuffer);
if(ADBuffer 《 180) //ADBuffer值大于设定值,相当于光照强度小于设定值
{
for (int a=1; a《=100;a++) //循环语句,控制PWM亮度的增加
{
analogWrite(LED,a);
delay(20); //当前亮度级别维持的时间,单位毫秒
}
for (int a=100; a》=1;a--) //循环语句,控制PWM亮度减小
{
analogWrite(13,a);
delay(20); //当前亮度的维持的时间,单位毫秒
}
delay(500);
}
else
{
digitalWrite(LED,LOW); //关闭LED
}
delay(500); //延时500ms
}
上一篇:Arduino使用光敏电阻实验
下一篇:Mentor赞助高级CMOS技术冬季大师班
推荐阅读最新更新时间:2024-05-03 02:21
- 【EEWORLD第二十三届】2011年02月社区明星人物揭晓!
- 免费申请评测:欧时电子(RS Components)树莓派3来袭,待你玩耍带你飞
- 一大波MCU开发板正在靠近,速来——瑞萨电子设计大赛(2015)
- 测评有礼!动手实战:全网征集TI毫米波雷达测评者
- 有奖直播|保护嵌入式设备与系统的完整性和可靠性——英飞凌 OPTIGA™ TPM 安全解决方案
- 半导体品牌知名度问卷调查
- 艾睿照明设计工具初体验:与LED设计的亲密接触!
- Microchip 喊你快来打造你的理想型单片机,智能门铃、百元京东卡等【80份】好礼等你赢!
- LPC4370重磅来袭 有奖问答赢好礼!
- 文晔科技有奖直播:C2000在电机控制中的应用 等你来看!