const int LEDpin = 8; // kaki LED positif dihubungkan ke pin 8
const int POTpin = A0; // kaki tengah potensiometer dihubungkan ke pin analog A0
int nilaipotensiometer = 0;
int nilaioutput = 0; // asumsi bahwa posisi potensial dimulai paling kiri
void setup() {
// Inisialisasi komunikasi serial dengan kecepatan 9600 bps
Serial.begin(9600);
pinMode(LEDpin, OUTPUT); // Pin LED sebagai OUTPUT
pinMode(POTpin, INPUT); // Pin Potensiometer sebagai INPUT
analogWrite(LEDpin, 128); // Menyalakan LED dengan setengah kecerahan
}
void loop() {
// Mendapatkan nilai pembacaan potensiometer
nilaipotensiometer = analogRead(POTpin);
// Mentransformasi atau memetakan nilai pembacaan potensiometer
// antara 0-1023 (nilai analog) menjadi antara 0-255
// dengan menggunakan fungsi map Arduino
nilaioutput = map(nilaipotensiometer, 0, 1023, 0, 255);
// Mengatur tingkat kecerahan LED antara 0-255
// Cetak hasilnya ke Serial Monitor
Serial.print("\nNilai analog potensiometer (0-1023) = ");
Serial.print(nilaipotensiometer);
Serial.print(" \nTingkat kecerahan LED (0-255) = ");
Serial.println(nilaioutput);
// Tunda 10ms setiap kali ada pergeseran nilai potensiometer
delay(10);
digitalWrite(LEDpin, HIGH); // Nyalakan LED
delay(1000); // Tunggu 1 detik
digitalWrite(LEDpin, LOW); // Matikan LED
delay(1000);
}