#include <ESP32Servo.h>
#define PIN_POTENTIOMETER 34 // Pin ADC0 pada ESP32 terhubung ke potensiometer
#define PIN_SERVO 18 // Pin GPIO26 pada ESP32 terhubung ke servo
Servo myServo; // Membuat objek servo untuk mengontrol servo
void setup() {
Serial.begin(9600); // Memulai komunikasi serial pada 9600 bps
analogSetAttenuation(ADC_11db); // Mengatur atenuasi ADC ke 11 dB (hingga ~3.3V input)
myServo.attach(PIN_SERVO); // Menghubungkan pin ESP32 ke objek servo
}
void loop() {
int analogValue = analogRead(PIN_POTENTIOMETER); // Membaca nilai dari potensiometer (0 hingga 4095)
int angle = map(analogValue, 0, 4095, 0, 180); // Mengubah nilai potensiometer menjadi sudut servo (0 hingga 180 derajat)
myServo.write(angle); // Mengatur posisi servo sesuai dengan nilai yang diubah
Serial.print("Nilai analog: ");
Serial.print(analogValue);
Serial.print(" => Sudut: ");
Serial.println(angle);
delay(100); // Menunggu 100 ms sebelum membaca nilai lagi
}