硬件准备
LED灯:1个
面包板:1个
光敏电阻:1个
1K电阻:1个
220欧电阻:1个
杜邦线:6根
硬件连线
1、将LED灯和光敏电阻插在面包板上
2、用220欧电阻将LED灯的负极接到带减号的横排插口上
3、用杜邦线将LED灯的正极接到11号引脚
4、将1k电阻的一端接到光敏电阻的一端
5、将1k电阻的另一端接到带加号的横排插口上
6、用杜邦线将光敏电阻与1k电阻相连的那端接到A0接口;
7、用杜邦线将光敏电阻的另一端接到带减号的横排插口上
8、用杜邦线将5V接口接到带加号的横排插口上
9、用杜邦线将GND接口接到带减号的横排插口上
软件程序
int ledpin =11;
int photoresistor = A0;
int val = 0;
int light = 0;
void setup() {
Serial.begin(9600);
pinMode(ledpin,OUTPUT);
}
void loop() {
val = analogRead(photoresistor);
light = val / 4;
Serial.println(light);
//delay(1000);
if (light < 30){
analogWrite(ledpin,0);
}
else{
analogWrite(ledpin,light);
delay(5);
}
}
成品演示视频
有光情况下上电LED灯不亮,遮光越严密,小灯泡越亮。
【Arduino08】感光灯1.0
总结
刚开始,我照着参考图来接线,但我发现图上没有用到1K电阻,且我也读不到光敏电阻的模拟值。因此,我用上课时学的接线方法来进行,成功读到光敏电阻的模拟值。
通过本次实验,我发现不能盲目的相信参考的资料,要有自己的想法。