Image
3 Temmuz, 2026

PWM, Dijital ve Analog Sinyal Nedir?

PWM, Dijital ve Analog Sinyal Nedir? Arduino ile Temel Sinyal Türleri

Arduino ile elektronik projelerine başlayanların karşılaştığı en önemli kavramlardan bazıları dijital sinyal, analog sinyal ve PWM sinyalidir. Sensörlerden veri okumak, LED yakmak, motor sürmek veya RGB LED kontrol etmek gibi birçok uygulamada bu sinyal türleri kullanılır.

Bu yazıda dijital, analog ve PWM sinyallerinin ne olduğunu, aralarındaki farkları ve Arduino’da nasıl kullanıldıklarını örneklerle inceleyeceğiz.

Sinyal Nedir?

Elektronikte sinyal, devre elemanları arasında bilgi taşıyan gerilim seviyeleridir. Arduino’nun pinlerinden çıkan veya sensörlerden gelen bilgiler belirli gerilim değerleriyle ifade edilir.

Bu gerilimler kullanım amacına göre dijital, analog veya PWM sinyali olabilir.

Dijital Sinyal Nedir?

Dijital sinyal yalnızca iki farklı duruma sahiptir:

  • LOW: 0 Volt
  • HIGH: 5 Volt veya 3.3 Volt

Başka bir ifadeyle dijital sinyal yalnızca açık veya kapalı bilgisini taşır. Arduino’da dijital sinyaller genellikle LED, buton, röle ve dijital sensörlerin kontrolünde kullanılır.

Örneğin aşağıdaki kod Arduino’nun 13. pinine bağlı LED’i yakar:

digitalWrite(13, HIGH);

Aşağıdaki kod ise LED’i söndürür:

digitalWrite(13, LOW);

Dijital sinyalde ara değerler bulunmaz. Bir pin ya HIGH seviyesindedir ya da LOW seviyesindedir.

Dijital sinyal LOW ve HIGH seviyeleri
Fotoğraf 1: Dijital sinyal yalnızca LOW ve HIGH seviyelerinden oluşur.

Analog Sinyal Nedir?

Analog sinyal, belirli bir aralıkta sürekli değişebilen gerilim değerlerinden oluşur. Arduino Uno’da analog girişler varsayılan olarak 0 ile 5 Volt arasındaki gerilimi okuyabilir.

Arduino Uno, analog girişlerden gelen gerilimleri 10 bit çözünürlükle sayısal değere dönüştürür. Bu nedenle okunan değerler 0 ile 1023 arasında olur.

Gerilim Arduino Okuma Değeri
0 Volt 0
2.5 Volt Yaklaşık 512
5 Volt 1023

Arduino’da analog veriler analogRead() fonksiyonu ile okunur. Örneğin A0 pinine bağlı bir potansiyometrenin değerini okumak için aşağıdaki kod kullanılabilir:

int deger = analogRead(A0);

Bu kod A0 pinindeki gerilim değerini okuyarak 0 ile 1023 arasında bir sayı döndürür.

Analog sinyaller genellikle aşağıdaki sensör ve devre elemanlarında kullanılır:

  • Potansiyometre
  • LDR ışık sensörü
  • Sıcaklık sensörü
  • Gaz sensörü
  • Basınç sensörü
Analog sinyal sürekli değişen gerilim grafiği
Fotoğraf 2: Analog sinyal belirli bir aralıkta sürekli değişebilir.

PWM Sinyali Nedir?

PWM, İngilizce Pulse Width Modulation ifadesinin kısaltmasıdır. Türkçede Darbe Genişlik Modülasyonu olarak adlandırılır.

PWM, dijital pinler kullanılarak analog benzeri çıkış elde etmeyi sağlayan bir tekniktir. Arduino Uno’da gerçek analog çıkış bulunmaz. Bunun yerine PWM yöntemi kullanılarak LED parlaklığı, RGB LED renkleri veya DC motor hızı kontrol edilebilir.

PWM sinyali çok hızlı şekilde HIGH ve LOW seviyeleri arasında geçiş yapar. Bu geçişlerde sinyalin açık kalma süresi değiştirilerek ortalama gerilim etkisi değiştirilmiş olur.

PWM Oranı Etkisi
%0 PWM Sürekli LOW, LED sönük
%25 PWM Düşük parlaklık
%50 PWM Orta parlaklık
%75 PWM Yüksek parlaklık
%100 PWM Sürekli HIGH, tam parlaklık

İnsan gözü bu hızlı anahtarlamayı algılayamaz. Bu nedenle LED’in çok hızlı yanıp sönmesi yerine parlaklığı değişiyormuş gibi görünür.

PWM sinyalinde farklı duty cycle oranları
Fotoğraf 3: PWM sinyalinde HIGH kalma süresi değiştirilerek ortalama çıkış etkisi ayarlanır.

Duty Cycle Nedir?

PWM sinyalinde en önemli kavramlardan biri Duty Cycle, yani görev döngüsüdür. Duty Cycle, sinyalin bir periyot boyunca ne kadar süre HIGH seviyesinde kaldığını ifade eder.

%25 Duty Cycle

■■□□□□□□

Sinyal zamanın %25’inde HIGH seviyesindedir.

%50 Duty Cycle

■■■■□□□□

Sinyal zamanın yarısında HIGH seviyesindedir.

%75 Duty Cycle

■■■■■■□□

Sinyal zamanın %75’inde HIGH seviyesindedir.

Duty Cycle arttıkça LED daha parlak yanar veya motor daha hızlı döner.

Arduino’da PWM Nasıl Kullanılır?

Arduino’da PWM çıkışı analogWrite() fonksiyonu ile oluşturulur. Arduino Uno’da PWM değeri 0 ile 255 arasında ayarlanabilir.

Örneğin aşağıdaki kod LED’i tamamen söndürür:

analogWrite(9, 0);

Aşağıdaki kod LED’i yaklaşık %50 parlaklıkta yakar:

analogWrite(9, 128);

Aşağıdaki kod LED’i tam parlaklıkta yakar:

analogWrite(9, 255);

Arduino Uno’da PWM Destekleyen Pinler

Arduino Uno üzerinde PWM destekleyen pinlerin yanında genellikle ~ işareti bulunur. PWM destekli pinler şunlardır:

  • D3
  • D5
  • D6
  • D9
  • D10
  • D11

Bu pinlerde analogWrite() fonksiyonu ile PWM çıkışı alınabilir.

Arduino Uno üzerinde PWM destekleyen pinler
Fotoğraf 4: Arduino Uno üzerinde PWM destekleyen pinler.

Dijital, Analog ve PWM Arasındaki Farklar

Dijital, analog ve PWM sinyalleri benzer projelerde kullanılabilse de çalışma mantıkları birbirinden farklıdır.

Özellik Dijital Sinyal Analog Sinyal PWM Sinyali
Değer Aralığı LOW / HIGH Sürekli değişir 0 - 255
Gerçek Analog mu? Hayır Evet Hayır, analog benzeri çıkış etkisi oluşturur
Arduino Fonksiyonu digitalWrite() / digitalRead() analogRead() analogWrite()
Kullanım Alanı LED, buton, röle Sensör okuma LED parlaklığı, motor hızı, RGB LED

Hangi Durumda Hangisi Kullanılır?

Dijital Sinyal Nerede Kullanılır?

  • LED yakma ve söndürme
  • Buton okuma
  • Röle kontrolü
  • Dijital sensörler

Analog Sinyal Nerede Kullanılır?

  • Potansiyometre okuma
  • LDR ışık sensörü okuma
  • Gaz sensörü okuma
  • Basınç sensörü okuma
  • Sıcaklık sensörü okuma

PWM Sinyali Nerede Kullanılır?

  • RGB LED kontrolü
  • LED parlaklığı ayarlama
  • DC motor hız kontrolü
  • Fan hız kontrolü

Sık Yapılan Hatalar

Arduino’ya yeni başlayanların en sık yaptığı hatalardan biri, analogWrite() fonksiyonunun gerçek analog çıkış ürettiğini düşünmektir.

Aslında Arduino Uno üzerinde gerçek analog çıkış bulunmaz. analogWrite() fonksiyonu PWM sinyali üretir.

Bir diğer yaygın hata ise PWM desteklemeyen pinlerde analogWrite() kullanmaya çalışmaktır. Arduino Uno’da PWM etkisi almak için D3, D5, D6, D9, D10 ve D11 pinleri tercih edilmelidir.

İpucu: LED parlaklığı ayarlamak, RGB LED rengi oluşturmak veya motor hızını değiştirmek istiyorsanız PWM destekli pinleri kullanmanız gerekir.

Sık Sorulan Sorular

Arduino Uno’da gerçek analog çıkış var mı?

Arduino Uno’da gerçek analog çıkış yoktur. Analog çıkışa benzer etki elde etmek için PWM sinyali kullanılır.

analogRead() ile analogWrite() aynı şey mi?

Hayır. analogRead() analog girişlerden veri okumak için kullanılır. analogWrite() ise PWM çıkışı oluşturmak için kullanılır.

PWM sinyali LED parlaklığını nasıl değiştirir?

PWM sinyali LED’i çok hızlı şekilde açıp kapatır. HIGH kalma süresi arttıkça LED daha parlak, azaldıkça daha düşük parlaklıkta görünür.

Her Arduino pininde PWM kullanılabilir mi?

Hayır. Arduino Uno’da PWM için D3, D5, D6, D9, D10 ve D11 pinleri kullanılmalıdır.

Sonuç

Dijital, analog ve PWM sinyalleri Arduino projelerinin temel yapı taşlarıdır. Dijital sinyaller yalnızca açık ve kapalı bilgisi taşırken, analog sinyaller sürekli değişen değerleri ifade eder. PWM ise dijital pinler kullanılarak analog benzeri çıkış elde edilmesini sağlayan bir tekniktir.

Bu kavramları doğru öğrenmek; LED kontrolü, motor sürme, sensör okuma ve robotik projeler gibi birçok uygulamayı daha kolay anlamanızı sağlar. Arduino ile geliştireceğiniz projelerde hangi sinyal türünü kullanmanız gerektiğini bilmek, daha doğru ve verimli devreler tasarlamanıza yardımcı olur.

Arduino Projeleri İçin Gerekli Ürünleri İnceleyin

Arduino Uno, sensör modülleri, RGB LED, motor sürücü, jumper kablo, breadboard ve direnç çeşitleriyle kendi elektronik projelerinize kolayca başlayabilirsiniz.

Robomer Ürünlerini İncele