#include <LiquidCrystal_I2C.h>
int kolom = 16;
int baris = 2;
LiquidCrystal_I2C lcd(0x27, kolom, baris);
#include <Servo.h>
Servo myservo;
int ledPin = 13; // pilih pin untuk LED
int inputPin = 2; // pilih pin unruk PIR Sensor
int pirState = LOW; // program di mulai, dengan status sensor tidak mendeteksi apapun
int val = 0; // variable untuk membaca status pin
void setup() {
pinMode(ledPin, OUTPUT); // LED Sebagai output
pinMode(inputPin, INPUT); // Sensor Sebagai Input
Serial.begin(9600);
lcd.init(); // Untuk menyalakan program LCD
lcd.backlight(); // Untuk Menyalakan Lampu LCD
}
void loop() {
val = digitalRead(inputPin); // baca value input
if (val == HIGH) { // cek jika sensor mendeteksi suatu gerakan
digitalWrite(ledPin, HIGH); // Menyalakan LED
if (pirState == LOW) { // Stasus Sensor Dari Tidak mendeteksi apapun berubah jadi kondisi mendeteksi
pirState = HIGH;
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Gerakan");
lcd.setCursor(0,1);
lcd.print("Terdeteksi");
}
} else {
digitalWrite(ledPin, LOW); // Mematikan LED
lcd.setCursor(0,0);
lcd.print("Gerakan Tidak");
lcd.setCursor(0,1);
lcd.print("Terdeteksi");
if (pirState == HIGH) {
lcd.clear();
pirState = LOW;
}
}
}