#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
// Define pin untuk potensiometer dan LED
const int potPin = A0; // Pin untuk potensiometer
const int ledPin1 = 2; // Pin untuk LED 1
const int ledPin2 = 3; // Pin untuk LED 2
const int ledPin3 = 4;
const int ledPin4 = 5;
const int ledPin5 = 6;
void setup() {
myservo.attach(11);
}
void loop() {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 100);
myservo.write(val);
// Baca nilai dari potensiometer
int potValue = analogRead(potPin);
// Map nilai potensiometer (0-1023) ke rentang (0-100)
int percentage = map(potValue, 0, 1023, 0, 100);
// Matikan kedua LED terlebih dahulu
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
// Jika nilai potensiometer 0%, nyalakan LED 1
if (percentage >= 0 && percentage <= 10) {
digitalWrite(ledPin1, LOW);
}
else if (percentage >= 10 && percentage <= 20) {
digitalWrite(ledPin1, HIGH);
}
// Jika nilai potensiometer antara 51% hingga 100%, nyalakan LED 2
else if (percentage > 21 && percentage <= 40) {
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
}
else if (percentage > 41 && percentage <= 60) {
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
}
else if (percentage > 61 && percentage <= 80) {
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
}
else if (percentage > 81 && percentage <= 100) {
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, HIGH);
}
// Tunda untuk stabilitas
delay(100);
}