#define LED_PIN 25
#define POT_PIN 34
#define PWM_FREQ 5000 //PWM frekansı 5000 Hz (saniyede 5000 titreşim)
#define PWM_RESOLUTION 8 // 8 bit çözünürlük = 2⁸ = 256 seviye 0–255
void setup() {
Serial.begin(115200);
// Doğru LEDC başlatma
ledcAttach(LED_PIN, PWM_FREQ, PWM_RESOLUTION);
//LED pinini PWM moduna alır,5000 Hz frekansta, 8 bit çözünürlükte çalıştırır
ledcWrite(LED_PIN, 0);//Başlangıçta LED’i kapatır (0 = %0 parlaklık).
}
void loop() {
int potValue = analogRead(POT_PIN); // Potansiyometreden analog değer okur. 0 – 4095 arası (12 bit ADC),
int pwmValue = map(potValue, 0, 4095, 0, 255); //Potansiyometre değeri 0–4095 arası, PWM ise 0–255 arası çalışıyor.
float percent = (pwmValue / 255.0) * 100.0;
//Yani pot çevirildikçe LED parlaklığı orantılı artıyor.
ledcWrite(LED_PIN, pwmValue);//0 → Kapalı, 128 → Yarı parlak, 255 → Tam parlak
Serial.print("Pot: ");
Serial.print(potValue);
Serial.print(" | PWM: ");
Serial.print(pwmValue);
Serial.print(" | Parlaklik: %");
Serial.println(percent);
delay(200);
delay(10); //10 ms bekler (gereksiz yüklenmeyi önler)
}