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çıkBir 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.
Görev
KolayKı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
}
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
1Parlaklık
Bir LED'i PWM ile kıs~ ile işaretlenmiş PWM pinleriBir LED'i yavaşça yakYavaşça yak ve söndürDüğmeli ışık ayarıKendi başına pratik yap: Arduino playground