Arduino光敏电阻

课上老师布置一个小作业,光控灯,不如抽空搞一下。

1.准备

检测周围的光照我们用的是光敏电阻,光敏电阻的阻值可以因为光照的增强而下降,入射光强、电阻减小、入射光弱、电阻增大。这样就可以实现光电转换。但是光敏的阻值一般很大,所以我们需要串联一个1K欧姆的电阻来读取光敏电压。

2.连接图

IMG_20171020_215814_HDR.jpg

没来的及搞电路图,不过连线还是很简单的。
VCC->电阻->光敏->GND,然后在电阻和光敏连接点之间接出一根线连接A0口读取数据。

3.代码

void setup() {
  // put your setup code here, to run once:
  //初始化
   Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
   //读取A0口的值
   int sensorValue = analogRead(A0);
   //输出 
  Serial.println(sensorValue);
   delay(1000);
}

4.效果

在监视器里可以显示数据。

5.LED灯

Led灯是单独接线的,从3引脚接到LED到GND,通过PWM控制,pwm数据就是光敏电阻读取的数据的运算255-sensorValue/4,代码如下。

int led = 3;
void setup() {
  // put your setup code here, to run once:
   Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
   int sensorValue = analogRead(A0);
   analogWrite(led,255-sensorValue/4);
   Serial.println(sensorValue);
   delay(500);
}

效果图:

VEditor_20171020224416.gif

做完才发现搞反了,环境越暗灯越暗,我这个智商啊……不说了。
童鞋们把255-去掉就好了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我选取的光敏电阻光阻值应该在1-400kΩ左右,暗阻值在2MΩ以上。(实验估计,下面会提到) 目的[1] 学习Ar...
    yigoh阅读 11,350评论 10 6
  • Arduino Due有14个数字I/O,6个模拟I/O,一个复位开关,一个ICSP下载口,7-12v电源供电。 ...
    麦牛2013阅读 3,406评论 0 8
  • 泰安市二〇一一年初中学生学业考试物理试题 一、选择题:以下每题给出的4个选项中,只有一个选项正确,选对得3分;多选...
    校园生活随记阅读 989评论 0 0
  • 这是一个没有什么卵用但是又舍不得删掉的APP 诗色顾名思义就是像诗一样记录颜色 整个APP就是展示色块并且给每一个...
    鲁比碎碎念阅读 890评论 0 0
  • 大家是不是又忙了一天,几乎没有把手脚停下来。但不管你们是不是,我是这样的。 现在,终于可以坐下来...
    阿杜阿云阅读 222评论 0 1