×

使用光敏电阻和LED灯的环境光传感器

消耗积分:0 | 格式:zip | 大小:0.63 MB | 2022-11-08

分享资料个

描述

 

我已经使用 Arduino 有一段时间了,我决定是时候从头开始设计我自己的项目了。我修改了一些从 Alex Glow 和 Joe Coburn 在网上找到的电路,因此它们更适合这个项目。请,如果您发现任何问题,或者认为您找到了比我的设计更好的东西,请在下面发表评论,我会回复您。

接线

我有一个光敏电阻连接到模拟引脚 0(任何模拟引脚都可以工作)和面包板右侧的 5V。它通过一个接地的 1K 欧姆电阻。我将面包板另一侧的 LED(任何颜色)连接到数字引脚 13(任何数字引脚都可以)和一个接地的 220 欧姆电阻(100 欧姆也可以)。在第一个 LED 的右侧,以相同的方式连接不同颜色的 LED,只是使用不同的数字引脚。

这个怎么运作

如果光敏电阻读取的值高于 450,它会打印“它很轻!” 在串行监视器上并关闭所有 LED,如下所示:

  if(light > 450) { // If it is bright... 
       Serial.println("It is quite light!"); 
       digitalWrite(13,LOW); //turn left LED off 
       digitalWrite(12,LOW); // turn right LED off 
   } 

如果它读取的值介于 230 和 450 之间,则会打印“It is average light!” 在串行监视器上并打开左侧 LED,如下所示:

   else if(light > 229 && light < 451) { // If it is average light... 
       Serial.println("It is average light!"); 
      digitalWrite(13, HIGH); // turn left LED on 
      digitalWrite(12,LOW);  // turn right LED off 
   }  

这只会让我们考虑到低于 230 的值。如果一个值低于 230,它会打印“它很暗!” 在串行监视器上并打开两个 LED,如下所示:

   else { // If it's dark... 
       Serial.println("It is pretty dark!"); 
       digitalWrite(13,HIGH); // Turn left LED on 
       digitalWrite(12,HIGH); // Turn right LED on 
   }  

我在循环末尾添加了 1000 的延迟,以防止信息过载进入串行监视器,如下所示:

delay(1000); // don't spam the computer!

在上传或运行任何东西之前,请务必查看原理图并检查您的代码。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !