/*
04 - Lampu Tidur
Menggunakan potensiometer untuk mengatur tingkat kecerahan sebuah LED.
*/
int ledPin = 6; //pin yang terhubung dengan LED
int potPin = A0; //pin yang terhubung dengan potensiometer
int potPosition; //variabel ini akan menyimpan nilai dari tegangan masukan ke A0 yang berdasarkan posisi dari knob potensiometer
int calibratedpotPosition; //variabel ini akan menyimpan nilai yang telah diskalakan/terkalibrasi dari nilai potPosition
void setup() {
Serial.begin(115200); //inisialisasi komunikasi serial pada 115200 bits per second.
pinMode(ledPin, OUTPUT); //Menentukan pin 6 sebagai output untuk sebuah LED.
}
void loop() {
potPosition = analogRead(potPin); //membaca tegangan dari pin A0 dan menyimpannya sebagai nilai potPosition
Serial.println(potPosition); //menampilkan nilai potPosition pada serial monitor
calibratedpotPosition = map(potPosition, 0, 1023, 0, 255); //menskalakan nilai potPosition dari 0 - 1023 menjadi 0 - 255.
//fungsi map() penggunaanya untuk sebuah bilangan skala yang linear.
//map(inputValue, fromMin, fromMax, toMin, toMax);
analogWrite(ledPin, calibratedpotPosition); //menggunakan fungsi analogWrite untuk dapat mengeluarkan output tegangan linear
//dari sebuah pin digital/PWM antara 0 - 255 atau 0 - 5V.
}