BH1750FVI是日本罗姆(ROHM)半导体生产的数字式环境光传感IC。其主要特性有:

  • I2C数字接口,支持速率最大400Kbps
  • 输出量为光照度(Illuminance)
  • 测量范围1~65535 lux,分辨率最小到1lux
  • 低功耗(Power down)功能
  • 屏蔽50/60Hz市电频率引起的光照变化干扰
  • 支持两个I2C地址,通过ADDR引脚选择
  • 较小的测量误差(精度误差最大值+/-20%)

电路连接

由于模块本身已经带有了3.3V稳压芯片和I2C电平转换电路,因此可将模块直接与UNO板的I2C接口相连。对于UNO板,I2C总线的SDA信号线对应A4管脚,SCL时钟线对应A5管脚。

功能测试

BH1750FVI支持单次或连续两种测量模式,每种测量模式又提供了0.5lux、1lux、4lux三种分辨率供选择。分辨力越高,一次测量所需的时间就越长。在单次测量模式时,每次测量之后传感器都自动进入Power Down模式。

以下代码测试了传感器在One Time H-Resolution Mode模式时的功能。

 /*
Measurement of illuminance using the BH1750FVI sensor module
Connection:
Module UNO
VCC <-----> 5V
GND <-----> GND
SCL <-----> A5
SDA <-----> A4
ADD <-----> NC */
#include <Wire.h> #define ADDRESS_BH1750FVI 0x23 //ADDR="L" for this module
#define ONE_TIME_H_RESOLUTION_MODE 0x20
//One Time H-Resolution Mode:
//Resolution = 1 lux
//Measurement time (max.) = 180ms
//Power down after each measurement byte highByte = ;
byte lowByte = ;
unsigned int sensorOut = ;
unsigned int illuminance = ; void setup()
{
Wire.begin();
Serial.begin();
} void loop()
{
Wire.beginTransmission(ADDRESS_BH1750FVI); //"notify" the matching device
Wire.write(ONE_TIME_H_RESOLUTION_MODE); //set operation mode
Wire.endTransmission(); delay(); Wire.requestFrom(ADDRESS_BH1750FVI, ); //ask Arduino to read back 2 bytes from the sensor
highByte = Wire.read(); // get the high byte
lowByte = Wire.read(); // get the low byte sensorOut = (highByte<<)|lowByte;
illuminance = sensorOut/1.2;
Serial.print(illuminance); Serial.println(" lux"); delay();
}

参考资料

什么是“光照度(Illuminance)”BH1750FVI DatasheetArduino - Wire LibraryI2C Tutorial - SparkFun

Arduino I2C + 数字式环境光传感器BH1750FVI的更多相关文章

  1. Arduino I2C + 温湿度传感器AM2321

    (2015.5.17:本日志的内容有所更新,参见<使用Arduino Wire Library读取温湿度传感器AM2321>.) AM2321是广州奥松电子生产的数字式温湿度传感器.虽是国 ...

  2. Arduino I2C + 温湿度传感器HTS221

    主要特性 HTS221是意法半导体(STMicroelectronics)生产的小体积.数字式温湿度传感器IC.该IC目前在官网仍处在“评估”状态.其主要特性: 工作电压:1.7~3.6V 数据输出频 ...

  3. Arduino I2C + 气压传感器LPS25H

    LPS25H是ST生产的MEMS数字气压传感器.主要特性有: 测量范围:260 ~ 1260 hPa绝对气压 分辨率:均方根1 Pa 工作电压:1.7 ~ 3.6 V 功耗:4μA(低分辨率模式)~2 ...

  4. Arduino周边模块:传感器部件(温敏、光敏、湿敏)

    Arduino周边模块:传感器部件(温敏.光敏.湿敏) Arduino周边模块:传感器部件(温敏.光敏.湿敏) Arduino的模数转换 对于Arduino来说,它只认识数字量,模拟量对其来说就是一门 ...

  5. Arduino连接SHT10温湿度传感器--返回值不正常解决办法

    如题目,arduino中连接温湿度传感器,用的是一个github开源项目,地址:点击打开,其实这个就是一个封装好的库,下载后把解压的文件夹复制到Arduino目录下的librarys文件夹内,重启Ar ...

  6. 【Arduino】66种传感器模块系列实验(2)---光敏电阻模块

    实验二:光敏电阻传感器模块我手里这块是三针版的,挺秀气吧 光敏电阻是用硫化隔或硒化隔等半导体材料制成的特殊电阻器,其工作原理是基于内光电效应.光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低, ...

  7. 【Arduino】66种传感器系列实验(1)---干簧管传感器模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和各种模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里 ...

  8. 【Arduino】37种传感器系列实验(4)---振动传感器模块

    ---恢复内容开始--- 37款传感器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器,依照实践(动手试试)出真知的理念,以学习和交流为 ...

  9. Arduino I2C + 温湿度传感器Si7021

      Si7021是Silicon Labs生产的温湿度传感器芯片.其主要特性: 湿度精度:误差典型值+/-2%RH,最大值+/-3%RH(0~80%RH),出厂已校正 温度精度:误差典型值+/-0.3 ...

随机推荐

  1. Java-Runoob:Java 教程

    ylbtech-Java-Runoob:Java 教程 1.返回顶部 1. Java 教程 Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言. Java可运行于 ...

  2. 搭建httpd服务

    实验环境:CentOS7 实验步骤: 安装httpd服务:yum -y install httpd 关闭SELinux:setenforce 0 禁用防火墙策略:iptables -F 启动httpd ...

  3. MySQL简述

    Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一. ...

  4. 第七章 AOP(待续)

    ···············

  5. spring-boot restful put方式提交表单

    使用spring-boot 做接口,如果按restful的路由形式想使用put方式进行表单提交,第一个参数应该为文件参数,代码如下: @PutMapping("/http-put" ...

  6. nginx keepalive 双机

    Nginx+keepalived双机热备(主从模式)   负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可以实现故障转移和高可用环境,避免单点故障,保证网 ...

  7. rpm yum 等命令无响应的解决方法

    yum 安装查询任何东西, rpm 安装查询任何东西,执行后无任何反应,直接卡住,也没任何错误信息给出,只能杀掉进程 # yum install XXXX # yum clean all # rpm ...

  8. 各大IT/IC公司offer比较&nbsp;

    1:本人西电通院2013届毕业硕士,根据今年找工作的情况以及身边同学的汇总,总结各大公司的待遇如下,吐血奉献给各位学弟学妹,公司比较全,你想去的公司不在这里面,基本上是无名小公司了:但无名小公司有时也 ...

  9. SQL语句 表字段的操作 添加,删除,修改表的字段

    alter table 表名 drop constraint 约束名字   //删除字段的原有约束 alter table 表名 add constraint 约束名字 DEFAULT 默认值 for ...

  10. 整理出一个比较实用的SqlHelper类 满足大多数情况的使用

    /// <summary> /// SqlHelper类 by zy 2016-3-11 /// </summary> public sealed class SqlHelpe ...