第三十二篇、基于Arduino uno,获取光敏电阻传感器的原始值和光照强度——结果导向

0、结果

 说明:先来看看串口调试助手显示的结果,第一个值是原始的模拟电压值,第二个值是含光量,也就是光照强度,如果是你想要的,可以接着往下看。

1、外观

说明:虽然光敏电阻传感器形态各异,但是原理和代码都是适用的,只是接线可能不同。


2、连线

说明:只需要连接三根线。
uno————光敏电阻传感器


如果你的光敏电阻长这样:

接线方式如下:

说明:只需要连接三根线。
uno————光敏电阻传感器

3、源程序

说明:采用非阻塞方式编写,一定时间检测一次光照信息,并将对应功能进行函数化,方便移植。

/****************************************光敏电阻 part****************************************/
/*
  注意:
  光越亮,值越小;光越暗,值越大;
*/
#define photosensitivePin A0                            //定义模拟口A5
#define phTimeInterval 1000                             //检测一次的时间间隔     

unsigned long phTimes = 0;                              //记录设备运行时间
int photosenVal = 0;                                    //光照度数值
int photoContent = 0;
/****************************************set up and loop part*********************************/
void setup(){
  Serial.begin(9600);                                   //设置串口波特率为9600

  Serial.println("设备上线!");
}
void loop(){
  getPhData();                                          //获取光敏电阻的值
}
/****************************************光敏电阻 part****************************************/
/*获取光敏电阻的值*/
void getPhData() {
  if (millis() - phTimes >= phTimeInterval) {           //一定时间检测一次
    phTimes = millis();
    photosenVal = analogRead(photosensitivePin);        //获取原始值
    photosenVal = constrain(photosenVal, 10, 1024);     //原始值限制在一定范围
    photoContent = map(photosenVal, 10, 1024, 100, 0);  //映射到对应的区间

    Serial.print("原始数据: ");                          //串口打印对应的值
    Serial.print(photosenVal);                          //串口打印对应的值
    Serial.print(" ,光照强度: ");                       //串口打印对应的值
    Serial.print(photoContent);                         //串口打印对应的值
    Serial.println(" %");                               //串口打印对应的值
  }
}

4、注意事项

说明:如果有什么问题可以评论@我,我将帮助你。如果你的光敏电阻不是集成的模块,那么就需要采取第二种方式连接线路,电阻10K左右的就够了。特别注意的是:光照强度最强光,我是拿手机灯光模拟的,如果你想改,可以拿最强光照着光敏电阻,然后看原始值,就可以更改光照强度,基本上最强光也就那么亮了。

5、基本原理

        光敏电阻是一种依据光线明暗程度变化而改变阻值的电阻器件,其原理是基于半导体中的内照效应。

        在光敏电阻的半导体材料中,掺入了一些能够响应光线的掺杂物。当这些掺杂物受到光线的作用时,会产生载流子,从而影响电阻器的电阻值。具体来说,当有光照射在光敏电阻上时,电荷载流子就会在半导体中产生并向外扩散,使材料本身的电阻值降低。反之,如果没有光照射在光敏电阻上时,电荷载流子的数量就很少,此时材料的电阻值较高。

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值