const int lampuPins[] = {18, 2, 4, 5};
const int potensiometerpin = 13;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.println("===================");
  for (int i = 0; i < 4; i++){
    pinMode(lampuPins[i], OUTPUT);
  }
}

void loop() {
  // Membaca nilai dari potensiometer
  int nilaiPotensiometer = analogRead(potensiometerpin);
  Serial.println(nilaiPotensiometer);
  Serial.println("================");

  // Mengonversi nilai potensiometer ke dalam rentang delay (50 - 500 ms)
  int kecepatanDelay = map(nilaiPotensiometer, 0, 4095, 500, 100);
  Serial.println(kecepatanDelay);

  // Menjalankan lampu berjalan dengan kecepatan yang ditentukan
  for (int i = 0; i < 4; i++) {
    digitalWrite(lampuPins[i], HIGH);
    delay(kecepatanDelay);
    digitalWrite(lampuPins[i], LOW);
    delay(kecepatanDelay);
  }
}
Loading
esp32-devkit-v1