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。如果本文有帮助到您,留个痕迹,点个赞即可,我是风行男孩,咱们有缘再见!

相关推荐
老梁agent1 天前
企业生产级 AI Agent 系统设计:能力、架构与演进路径
物联网·agent
老梁agent1 天前
当 Agent 要动手了:工业实时控制的三层安全护栏设计
物联网·agent
神奇啊龙2 天前
我的第一个 TinyGo 项目:ESP32-C3 + DHT11 + SSD1306
物联网·嵌入式
老梁agent2 天前
工业 Agent 的边缘部署:Ollama + LangChain4j 本地推理方案
物联网·边缘计算·agent
老梁agent4 天前
MCP 协议实战:用标准化方式让 Agent 调用工业工具
物联网·agent·mcp
老梁agent7 天前
一个 Agent 不够用?工业场景下的多 Agent 路由模式实战
物联网·agent
老梁agent8 天前
从 0 到 22 篇:工业 Agent 的六大设计原则
物联网·agent
老梁agent10 天前
Agent 如何看懂时序数据?时间序列查询的 Tool 设计模式
物联网·agent
FreakStudio11 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
✎ ﹏梦醒͜ღ҉繁华落℘16 天前
单片机基础知识---stm32单片机的优先级
stm32·单片机·mongodb