Paso 5: LED, LCD 1602 y BH1750
Código:
/*
Este es un codigo simple para probar senosr de luz BH1750FVI
se comunican usando el protocolo I2C
Esta biblioteca permite 2 dirección del dispositivo esclavo
Dirección 0x23
dirección secundaria 0x5C
conectar este sensor como siguiendo:
VCC >>> 3.3V
SDA >>> A4
SCL >>> A5
addr >> A3
Tierra >>> tierra
Escrito por: Mohannad Rawashdeh
*/
En primer lugar definir la biblioteca:
#include < BH1750FVI.h > / / Biblioteca de Sensor
#include < Wire.h > / / Librería I2C
uint16_t Light_Intensity = 0;
Llamar a la función
#define LedPin 9 / LED de conexión con conector D9
LightSensor BH1750FVI;
int SensorValue = 0;
void setup() {}
Pon tu código de instalación, para ejecutar una vez:
Serial.Begin(9600);
llamada de comenzar la función para activar el sensor.
LightSensor.begin();
/*
La dirección de este sensor
puede utilizar 2 dirección diferente
Device_Address_H "0x5C"
Device_Address_L "0x23"
usted debe conectarse Addr pin A3.
*/
LightSensor.SetAddress(Device_Address_H); Dirección 0x5C
Para ajustar al esclavo en otra dirección, descomentar esta línea
lightMeter.SetAddress(Device_Address_L); Dirección 0x5C
//-----------------------------------------------
/*
configurar el modo de trabajo de este sensor
Seleccione el modo siguiente:
Continuous_H_resolution_Mode
Continuous_H_resolution_Mode2
Continuous_L_resolution_Mode
OneTime_H_resolution_Mode
OneTime_H_resolution_Mode2
OneTime_L_resolution_Mode
La hoja de datos recomendada para uso Continuous_H_resolution_Mode
*/
LightSensor.SetMode(Continuous_H_resolution_Mode);
pinMode(9,OUTPUT) / / Connect LED con resistor de 100 ohm
con conector D9
}
void loop() {}
Pon tu código principal, para ejecutar varias veces:
llamar a función de GetLightIntensity(), por lo que el sensor Lee
el valor de la intensidad y
Light_Intensity=LightSensor.GetLightIntensity();
Delay(50);
SensorValue=map(Light_Intensity,0,2000,255,0);
SensorValue=constrain(SensorValue,255,0);
digitalWrite(LedPin,SensorValue);
listo para otra lectura.
}
En el anexo de la biblioteca que puede encontrar LCD _BH1750 código, conecte un LCD1602 y BH1750 juntos
Código:
/*
Este es un codigo simple para probar senosr de luz BH1750FVI
se comunican usando el protocolo I2C
Esta biblioteca permite 2 dirección del dispositivo esclavo
Dirección 0x23
dirección secundaria 0x5C
conectar este sensor como siguiendo:
VCC >>> 3.3V
SDA >>> A4
SCL >>> A5
addr >> A3
Tierra >>> tierra
Escrito por: Mohannad Rawashdeh
*/
En primer lugar definir la biblioteca:
#include < BH1750FVI.h > / / Biblioteca de Sensor
#include < Wire.h > / / Librería I2C
#include < LiquidCrystal.h >
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
uint16_t Light_Intensity = 0;
Llamar a la función
LightSensor BH1750FVI;
void setup() {}
Pon tu código de instalación, para ejecutar una vez:
Serial.Begin(9600);
LCD.Begin (16, 2);
llamada de comenzar la función para activar el sensor.
LightSensor.begin();
LightSensor.SetAddress(Device_Address_H); Dirección 0x5C
LightSensor.SetMode(Continuous_H_resolution_Mode);
lcd.setCursor (0, 0);
LCD.Print ("Sensor BH1750");
lcd.setCursor (1, 1);
LCD.Print ("por favor espere...");
Delay(3000);
LCD.Clear();
}
void loop() {}
Pon tu código principal, para ejecutar varias veces:
LCD.Clear();
lcd.setCursor (0, 0);
LCD.Print ("intensidad =");
lcd.setCursor (5, 1);
Light_Intensity = LightSensor.GetLightIntensity();
LCD.Print(Light_Intensity);
LCD.Print ("Lux");
Delay(2000);
}
Este Video para ella