//Program Motor servo
//By Rifki Haitami XI TEK 1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <ESP32Servo.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
Servo myServo;
const int servoPin = 5;
const int Anomali_Merah = 25;
const int Rimuru_Tempest = 26;
int servoAngle = 90;
void setup() {
lcd.init();
lcd.backlight();
myServo.attach(servoPin);
myServo.write(servoAngle);
pinMode(Anomali_Merah, INPUT_PULLUP);
pinMode(Rimuru_Tempest, INPUT_PULLUP);
lcd.setCursor(0, 0);
lcd.print("Deteksi Danger");
}
void loop() {
// Anomali Merah ditekan
if (digitalRead(Anomali_Merah) == LOW) {
servoAngle -= 3;
if (servoAngle < 0) {
servoAngle = 0;
}
myServo.write(servoAngle);
delay(200);
}
// Rimuru Tempest ditekan
if (digitalRead(Rimuru_Tempest) == LOW) {
servoAngle += 3;
if (servoAngle > 180) {
servoAngle = 180;
}
myServo.write(servoAngle);
delay(200);
}
// Tampilan di LCD
void updateLCD();
lcd.setCursor(0, 1); // baris kedua yk ges ya
lcd.print("Angle: "); // buat teks
lcd.print(servoAngle); // buat sudut
lcd.print(" "); // ctrl + delete
}