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

相关推荐
VekiSon7 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天8 小时前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技8 小时前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
czhaii9 小时前
STC AI8052U单片机特点
单片机
MAR-Sky9 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
北京耐用通信10 小时前
破解AGV多协议互联难题:耐达讯自动化Profinet转Devicenet网关如何实现高效协同
人工智能·科技·物联网·网络协议·自动化·信息与通信
项目題供诗11 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
国产化创客11 小时前
ESP32平台web服务器开发框架选型与分析
物联网·智能家居·智能硬件
羽获飞11 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技12 小时前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技