Arduino+0.96OLED+GY30(BH1750)光照强度采集光照传感器 光控灯实验

该博客介绍了如何使用Arduino UNO、0.96英寸OLED显示器和GY-30光照传感器进行光控灯实验。通过电路连接,实现实时显示光照强度,并根据强度自动控制LED灯的开关和亮度。当光照强度超过特定阈值时,通过PWM调节灯光亮度,并使用u8glib库在OLED屏上显示状态。同时,实验还涉及串口通信,将数据发送到APP端展示。
摘要由CSDN通过智能技术生成

Arduino+0.96OLED+GY30光照传感器Module UNO

一、电路连接

VCC <-----> 5V
GND <-----> GND
SCL <-----> A5
SDA <-----> A4
ADD <-----> NC
OLED接线方式:
VCC<————>3.3V
GND<————>GND
SCL<————>SCL
SDA<————>SDA
LED1<————>10
LED2<————>11

二、实验材料

Uno R3开发板
GY-30光照传感器
面包板及配套连接线
2个LED灯
1个0.96OLED

三、功能

1、OLED实时显示光照强度
2、当光照强度大于600LX时关灯
3、当光照强度大于200小于600时打开冷光灯,并随着光强度变化而变化,强度越大灯光越暗(PWM调节),同时OLED显示开关状态;
4、当光照强度小于200时打开暧光灯关闭冷光,并随着光强度变化而变化,强度越大灯光越暗(PWM调节),同时OLED显示开关状态;
5、使用u8glib库操作OLED屏
6、串口实时发送相应标志数据,可通过ESP8266发送到APP端显示参数
特点:无需人为干预的自动控制设备。
在这里插入图片描述在这里插入图片描述在这里插入图片描述0.96寸OLED汉字显示设置在这里插入图片描述

四、参考示例

/*
Measurement of illuminance using the BH1750FVI sensor module
Connection:
Module        UNO
VCC    <----->    5V
GND    <----->    GND
SCL    <----->    A5
SDA    <----->    A4
ADD    <----->    NC
OLED接线方式: 
VCC<————>3.3V 
GND<————>GND 
SCL<————>SCL 
SDA<————>SDA
LED1<————>10
LED2<————>11
LingShun LAB*/
#include "U8glib.h" 
#include <Wire.h>
// OLED库 
#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

U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);    // I2C 
const unsigned char pinMotorCW  = 10;   // 接控制电机顺时针转的 H 桥引脚
const unsigned char pinMotorCCW = 11;   // 接控制电机逆时针转的 H 桥引脚

byte highByte = 0;
byte lowByte = 0;
unsigned int sensorOut = 0;
unsigned int illuminance = 0;
unsigned int Warm_Empty = 0; //暧光 变量
unsigned int Cold_Empty = 0;//冷光
int ledValue = 0;  //保存LED灯占空比

const   uint8_t bitmap_g []   U8G_PROGMEM  ={
     
0x01,0x00,0x21,0x08,0x11,0x08,0x09,0x10,0x09,0x20,0x01,0x00,0xFF,0xFE,0x04,0x40,
0x04,0x40,0x04,0x40,0x04,0x40,0x08,0x42,0x08,0x42,0x10,0x42,0x20,0x3E,0xC0,0x00//"光",0
};   
const   uint8_t bitmap_q []   U8G_PROGMEM  ={
     
0x00,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值