Arduino实现光控灯

实验原理:光敏电阻器的阻值随入射光线(可见光)的强弱变化而变化;发光二极管的亮度也会随着电流的强弱变化而变化;这两者通过程序的结合便可以实现发光二极管亮度随环境光照强弱而变化的效果。

实验材料:
Arduino实现光控灯_第1张图片
接线:
Arduino实现光控灯_第2张图片
代码内容:
/*
AutoLed
通过光敏电阻检测环境光,进而控制LED灯亮度
*/

int ledPin = 10;

int sensorValue = 0; //保存读到的传感器模拟值
int ledValue = 0; //保存LED灯占空比

void setup()
{
pinMode(ledPin, OUTPUT); //数字口要选择带~号的具有pwm功能的输出口
}

void loop()
{
sensorValue = analogRead(A0); //读取A0模拟口的数值
ledValue = map(sensorValue, 400, 800, 0, 200); //将400到800之间的数据映射成0到200之间的数据
analogWrite(ledPin, ledValue); //PWM控制LED灯亮度
delay(100);
}

实验效果演示:
添加链接描述

你可能感兴趣的:(物联网,光控灯)