Arduino|Arduino光敏传感器控制LED灯亮度

Arduino光敏传感器控制LED灯亮度 目标一:
通过光敏传感器,使得LED亮度根据环境亮度自动调节,环境亮度低则LED灯更亮些
【Arduino|Arduino光敏传感器控制LED灯亮度】光敏传感器:
Arduino|Arduino光敏传感器控制LED灯亮度
文章图片
光敏传感器共有四个端口:
AO:模拟信号输出
DO:TTL 开关信号输出(亮度大于设定值时DO输出低电平,反之输出高电平)
线路图:
Arduino|Arduino光敏传感器控制LED灯亮度
文章图片
—— 此处没有连接DO端口 ——
相关代码:

int value; //存储通过光敏传感器后电灯亮度值void setup(){ Serial.begin(9600); pinMode(4,OUTPUT); //4脚为输出脚 }void loop(){value=https://www.it610.com/article/analogRead(A0)/4; analogWrite(4,value); }

效果图:
Arduino|Arduino光敏传感器控制LED灯亮度
文章图片

目标二:
使用串口监视器控制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=https://www.it610.com/article/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); } }

Arduino|Arduino光敏传感器控制LED灯亮度
文章图片

    推荐阅读