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

相关推荐
凉、介21 分钟前
Linux 设备驱动匹配机制
linux·笔记·单片机·学习·操作系统·嵌入式
KaifuZeng35 分钟前
模电面试问题汇总二
单片机·嵌入式硬件·面试·模电·通信与接口协议
冰茶丿40 分钟前
状态机在嵌入式系统中的应用:不只是switch-case这么简单
数据库·嵌入式硬件·mongodb
是摆烂第一名呀1 小时前
【RK3506】RGB屏幕与背光调试记录
linux·arm开发·驱动开发·嵌入式硬件
KaifuZeng1 小时前
模电面试问题汇总三
单片机·嵌入式硬件·面试·模电
2401_854151551 小时前
STM32 复用功能(AF)配置的常见误区
stm32·单片机·嵌入式硬件
菠萝地亚狂想曲1 小时前
STM32_gitea workflow
stm32·嵌入式硬件·gitea
剑藏锋1 小时前
嵌入式学习(46)-基于STM32F407Hal库的DMA乒乓缓存机制
stm32·单片机·学习
Zevalin爱灰灰2 小时前
USB协议介绍及使用(基于STM32)
stm32·单片机·嵌入式硬件
Zevalin爱灰灰2 小时前
J-Link+Ozone调试教程
stm32·嵌入式硬件·调试