#define port_LDR A0
#define port_LED1 10
#define port_LED2 9
#define port_LED3 8
#define port_LED4 7
int val = 0;
int jeda = 0;
void setup() {
Serial.begin(9600);
pinMode(port_LDR, INPUT);
pinMode(port_LED1, OUTPUT);
pinMode(port_LED2, OUTPUT);
pinMode(port_LED3, OUTPUT);
pinMode(port_LED4, OUTPUT);
pinMode (13,OUTPUT);
pinMode (12,OUTPUT);
pinMode (11,OUTPUT);
LED(0,0,0,0);
}
void loop() {
//---Pembacaan Sensor----
val = analogRead(port_LDR);
jeda = map(val, 1009, 553, 4000, 200); //range 0.2 - 80 lux
//Serial.println(val);
if(val < 554){ //KEPEKATAN 80% LUX
//---menyalakan LED----
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
Serial.println("");
LED(0,0,0,1);
delay(200);
LED(0,0,1,0);
delay(200);
LED(0,1,0,0);
delay(200);
LED(1,0,0,0);
delay(200);
}else if(val > 1010){ //Kepekatan dibawah 0.1%LUX
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, HIGH);
LED(0,0,0,0);
//---Menampilkan Peringatan----
Serial.println("PERINGATAN:INTENSITAS CAHAYA RENDAH");
}else{ //0.2% LUX
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
digitalWrite(11, LOW);
Serial.println("");
//---menyalakan LED----
LED(1,0,0,0);
delay(jeda);
LED(0,1,0,0);
delay(jeda);
LED(0,0,1,0);
delay(jeda);
LED(0,0,0,1);
delay(jeda);
}
}
void LED(bool led1, bool led2, bool led3, bool led4){
digitalWrite(port_LED1, led1);
digitalWrite(port_LED2, led2);
digitalWrite(port_LED3, led3);
digitalWrite(port_LED4, led4);
}