
Recursos do BH1750
Aqui está uma lista dos recursos do sensor BH1750. Para mais informações consulte a ficha técnica do sensor BH1750 .
- Interface de barramento I2C
- A responsabilidade espectral é aproximadamente a resposta do olho humano
- Conversor de iluminação para digital
- Alcance: 1 – 65535 lux
- Baixa corrente pela função de desligamento
- 50Hz / 60Hz Função de rejeição de ruído de luz
- É possível selecionar 2 endereços escravos I2 C diferentes
- Pequena variação de medição (+/- 20%)
- A influência do infravermelho é muito pequena
- Suporta modo de medição contínua
- Suporta modo de medição única
Aqui está a pinagem do BH1750:
| VCC | Alimenta o sensor (3,3V ou 5V) |
| GND | GND comum |
| SCL | Pino SCL para comunicação I2C |
| SDA (Dados) | Pino SDA para comunicação I2C |
| ADICIONAR * | Seleciona o endereço |
O pino ADD é usado para definir o endereço do sensor I2C. Se a tensão nesse pino for menor que 0,7VCC (o pino é deixado flutuando ou conectado ao GND), o endereço I2C é0x23. Mas, se a tensão for superior a 0,7xVCC (o pino está conectado ao VCC), o endereço é0x5C. Resumindo:
- ADD pino flutuante ou conectado a GND→ endereço:0x23
- ADD pino conectado a VCC→ endereço:0x5C
O BH1750 é um sensor de luz ambiente para que possa ser usado em uma ampla variedade de projetos. Por exemplo:
- para detectar se é dia ou noite;
- para ajustar ou ligar/desligar o brilho do LED de acordo com a luz ambiente;
- para ajustar LCDs e brilho da tela;
- para detectar se um LED está aceso;
/*
Example of BH1750 library usage. This example initialises the BH1750 object using the default high resolution continuous mode and then makes a light level reading every second.
*/
#include <Wire.h>
#include <BH1750.h>
BH1750 lightMeter;
void setup(){
Serial.begin(9600);
// Initialize the I2C bus (BH1750 library doesnt do this automatically)
Wire.begin();
// On esp8266 you can select SCL and SDA pins using Wire.begin(D4, D3);
// For Wemos / Lolin D1 Mini Pro and the Ambient Light shield use Wire.begin(D2, D1);
lightMeter.begin();
Serial.println(F("BH1750 Test begin"));
}
void loop() {
float lux = lightMeter.readLightLevel();
Serial.print("Light: ");
Serial.print(lux);
Serial.println(" lx");
delay(1000);
}



