Arduino光敏传感器控制LED灯亮度
目标一:
通过光敏传感器,使得LED亮度根据环境亮度自动调节,环境亮度低则LED灯更亮些
光敏传感器:
光敏传感器共有四个端口:
AO:模拟信号输出
DO:TTL 开关信号输出(亮度大于设定值时DO输出低电平,反之输出高电平)
线路图:
—— 此处没有连接DO端口 ——
相关代码:
int value; //存储通过光敏传感器后电灯亮度值 void setup(){ Serial.begin(9600); pinMode(4,OUTPUT); //4脚为输出脚 } void loop(){ value=analogRead(A0)/4; analogWrite(4,value); }
效果图:
目标二:
使用串口监视器控制LED灯模式:
- A.夜灯模式(LED灯亮度低)
- B.阅读模式(LED灯亮度高)
- C.自适应模式(LED灯亮度自适应)
代码:
int mode; //定义模式(模式0:阅读模式 模式1:夜灯模式 模式2:自适应模式) int value; //存储通过光敏传感器后电灯亮度值 void setup(){ Serial.begin(9600); pinMode(4,OUTPUT); } void loop(){ char LED=Serial.read(); //LED读取输入 if(LED=='A') //判断模式 mode=0; else if(LED=='B') mode=1; else if(LED=='C') mode=2; value=analogRead(A0)/4; control(); //调用contol } void control(){ //三种LED灯模式 if(mode==0){ analogWrite(4,255); } else if(mode==1){ analogWrite(4,90); } else if(mode==2){ analogWrite(4,value); } }