美文网首页
Arduino提高篇09—数字光强传感器

Arduino提高篇09—数字光强传感器

作者: TonyCode | 来源:发表于2019-11-29 08:57 被阅读0次
    数字光照传感器

    光敏电阻是常用的光感元件,但是其感应范围比较窄,响应速度慢,且受外界干扰较大。要接收强光时,需要更加精准的数字光照传感器。本篇介绍GY-30模块的使用,其板载BH1750数字光传感器专用IC。

    1. 光强传感器介绍

    GY-30模块基于BH1750FVI芯片,模块采用IIC通讯方式,内置16bit ADC转换器,可以直接数字输出,光照强度范围:0~65525 lx,勒克斯「lux,通常简写为lx」是照度的国际单位。

    GY-30模块

    主要特点

    • 内置16Bit ADC转换器。
    • IIC通讯协议,直接输出数字量。
    • 供电:3~5V。
    • 范围:0~65535lx。
    • 不区分环境光源,接近视觉灵敏度的分光特性。
    • 板载通信电平转换。

    2. 实验材料

    • Uno R3开发板
    • 配套USB数据线
    • 面包板及配套连接线
    • 数字光强传感器GY-30模块

    3. 实验步骤

    1. 根据原理图搭建电路图。

    GY-30模块的VCC、GND分别连接开发板的5V、GND,模块的SDA、SCL分别连接开发板的A4、A5引脚,模块的ADD引脚不连接。

    实验原理图如下图所示:

    实验原理图

    实物连接图如下图所示:

    实物连接图

    2. 新建sketch,拷贝如下代码替换自动生成的代码并进行保存。

    /*
     * BH1750
     * 数字光照传感器实验
     */
     
    #include <Wire.h> //IIC
    
    int BH1750address = 0x23;
    byte buff[2];
    uint16_t val = 0;
    
    void setup()
    {
      Wire.begin();
      BH1750_Init(BH1750address);
      Serial.begin(9600);
    }
    
    void loop()
    {
      if (2 == BH1750_Read(BH1750address))
      {
        if (buff[0] == 255 && buff[1] == 255)
        {
          val = 65535;
        } else {
          val = ((buff[0] << 8) | buff[1]) / 1.2; //芯片手册中规定的数值计算方式
        }
    
        Serial.print(val, DEC);
        Serial.println("[lx]");
      }
      delay(500);
    }
    
    int BH1750_Read(int address) 
    {
      int i = 0;
      Wire.beginTransmission(address);
      Wire.requestFrom(address, 2);
      while (Wire.available())
      {
        buff[i] = Wire.read();  // receive one byte
        i++;
      }
      Wire.endTransmission();
      return i;
    }
    
    void BH1750_Init(int address)
    {
      Wire.beginTransmission(address);
      Wire.write(0x10);
      Wire.endTransmission();
    }
    

    3. 连接开发板,设置好对应端口号和开发板类型,进行程序下载。

    程序下载

    4. 实验现象

    打开串口监视器,波特率设置成与程序中相一致的9600。监视器中将显示环境光强度,可以通过遮挡或照射模块来改变光强度。

    实验现象

    相关文章

      网友评论

          本文标题:Arduino提高篇09—数字光强传感器

          本文链接:https://www.haomeiwen.com/subject/qlfhwctx.html