Menu
CoddyTech

Bir LED'i PWM ile kıs

Coddy'nin Arduino Journey'sinin Çıkışlar bölümünün bir parçası. Ders 1 / 24.

digitalWrite() iki düzey bilir: açık veya kapalı. Bir LED'in loş yanmasını sağlamak için kart, pini saniyede yüzlerce kez açıp kapatır. Gözünüz titreşimi takip edemez ve ortalamayı görür: zamanın dörtte biri boyunca açık olan bir pin, dörtte bir parlaklıkta görünür.

Bu numaraya PWM, darbe genişliği modülasyonu denir. Pinin açık olduğu süre oranı, görev döngüsü olarak adlandırılır.

analogWrite(pin, value) bunu 0 ile 255 arasında bir sayıyla ayarlar:

analogWrite(9, 0);    // her zaman kapalı
analogWrite(9, 64);   // zamanın dörtte birinde açık
analogWrite(9, 127);  // zamanın yaklaşık yarısında açık
analogWrite(9, 255);  // her zaman açık

Bir değer yazdıktan sonra kart, yeni bir değer yazana kadar, delay() sırasında bile pini kendi başına darbeli şekilde açıp kapatmaya devam eder. analogWrite() pini kendiliğinden çıkış yapar; setup() içindeki pinMode(9, OUTPUT) ise yine de pinin ne için kullanılacağını belirtir.

challenge icon

Görev

Kolay

Kırmızı LED, 9 numaralı pinde. Tam parlaklığının dörtte biri kadar yanmasını sağla:

  • 255'in dörtte biri yaklaşık 64'tür
  • analogWrite() ile yaz

İzlemek için Run'a, ardından Check'e bas.

Kendin dene

const int ledPin = 9;

void setup() {
  pinMode(ledPin, OUTPUT);
  // LED'in parlaklığını burada dörtte birine ayarla
}

void loop() {
  // tekrarlanacak bir şey yok: pin kendi kendine darbeler üretmeye devam eder
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Çıkışlar bölümündeki tüm dersler

Kendi başına pratik yap: Arduino playground