#include <LiquidCrystal_I2C.h>
#define led 2
const float GAMMA = 0.7;
const float RL10 = 50;
LiquidCrystal_I2C lcd (0x27,20,4 );
void setup() {
pinMode(led, OUTPUT);
lcd.init ();
lcd.backlight ();
// put your setup code here, to run once:
}
void loop() {
int analogValue = analogRead (A0);
float voltage = analogValue / 1024. *5;
float resistance = 2000 * voltage / (1- voltage/5 );
float lux = pow (RL10 * 1e3 * pow (10,GAMMA) / resistance , ( 1/ GAMMA));
lcd.setCursor (2,0);
lcd.print ("Cahaya:");
if (lux > 50) {
lcd.print ("Terang");
digitalWrite( led, LOW);
}
else {
lcd.print ("Gelap ");
digitalWrite( led ,HIGH );
}
lcd.setCursor (0,1);
lcd.print ("LUX;");
lcd.print (lux);
lcd.print (" ");
delay (100);
// put your main code here, to run repeatedly:
}