Arduino基础入门学习——使用BH1750(GY-302)光照强度传感器获取光照强度

使用BH1750(GY-302)光照强度传感器获取光照强度

一、前言

话不多说,先给大家来一句鸡汤(鸡汤来咯!):

所有坚忍不拔的努力迟早会取得报酬的。                  ------安格尔

二、BH1750(GY-302)介绍

BH1750(GY-302)是一种数字型光强度传感器集成电路,专为两线式串行总线接口设计,具备着高分辨率和精确度、低功耗和稳定性强等特点,它的实物图如下所示。

它共有五个引脚,引脚定义如下:

名称 说明
VCC 供电电源正极
GND 负极
SCL ICC通信时钟线
SDA ICC双向数据线
ADDR ICC地址线

BH1750的主要技术规格如下:

BH1750 光照强度传感器内部结构集成了光敏二极管、运算放大器、ADC 采集和晶振等关键组件。当光敏二极管接收到光线时,会产生光伏特效应,将光信号转为电信号,再经由运算放大器放大处理后,电信号被 ADC 采集器转化为数字信号,也就是我们所获取到的光照强度值。

三、准备工作

硬件:

  • Arduino Uno开发板
  • BH1750(GY-302)光照强度传感器一个
  • 杜邦线若干和面包板一个

软件:

  • Arduino IDE(没安装可看我的另一篇博客点击跳转
  • BH1750支持库(BH1750,IDE内部自行下载安装即可)

    电路图:

四、程序代码

cpp 复制代码
#include <BH1750.h>
BH1750 light_sensor;

float light = 0.0;  //用于接收所获取的光照值

void setup() {
  Serial.begin(9600);  //设置串口波特率
  light_sensor.begin();  //启动光照强度传感器(BH1750)工作
}

void loop() {
  light = light_sensor.readLightLevel();  //获取光照强度值
  Serial.print(light);  //串口输出光照值
  Serial.println("Lx");
  delay(2000); //2s延迟再次获取
}

五、运行结果

按照电路图接好线,把上面代码烧录进Arduino后,打开串口调试窗口,设置好波特率9600,可以看到获取到的光照强度。

六、结束语

好咯,对于Arduino中BH1750(GY-302)光照强度传感器的使用就先介绍到这里了,后续我还会更新Arduino的其他内容,然后把所学过的都整合在一个有意思的项目里(毕竟学习都是一个循环渐进的过程嘛),让大家真正的入门Arduino。如果本文有帮助到您,留个痕迹,点个赞即可,我是风行男孩,咱们有缘再见!

相关推荐
长安第一美人6 小时前
C 语言可变参数(...)实战:从 logger_print 到通用日志函数
c语言·开发语言·嵌入式硬件·日志·工业应用开发
广东大榕树信息科技有限公司8 小时前
如何通过国产信创动环监控系统优化工厂环境管理?
运维·网络·物联网·国产动环监控系统·动环监控系统
Coding Peasant9 小时前
GD32E230 I2C从机功能深度解析与实现指南
c语言·stm32·单片机·mcu·arm
盟接之桥11 小时前
盟接之桥--说制造:从“找缝隙”到“一万米深”——庖丁解牛式的制造业精进之道
大数据·前端·数据库·人工智能·物联网·制造
214实验室11 小时前
STM32串口打印使用printf乱码问题
stm32·单片机·嵌入式硬件
沐欣工作室_lvyiyi12 小时前
基于单片机的电厂烟道粉尘浓度检测系统(论文+源码)
单片机·嵌入式硬件·毕业设计
Groundwork Explorer13 小时前
异步框架+POLL混合方案应对ESP32 MPY多任务+TCP多连接
python·单片机
huangql52014 小时前
主播墙状态同步架构设计方案:分层信令与按需订阅
物联网
d111111111d14 小时前
什么是内存对齐?在STM32上面如何通过编辑器指令来实现内存对齐。
笔记·stm32·单片机·嵌入式硬件·学习·编辑器
bai54593615 小时前
STM32 CuberIDE 中断
stm32·单片机·嵌入式硬件