Blink Pattern (Çoklu Blink) Uygulaması

Bu başlık altında daha önce geliştirdiğimiz Blink uygulamasına iki adet LED ekleyerek, bunların sırasıyla yanmalarını ve sönmelerini sağlayacağız. Uygulama için ihtiyacımız olan devre elemanları aşağıdaki gibidir:

  • LED x 3
  • Direnç (330 Ohm) x 3

Bu bileşenleri temin ettikten sonra devremizi aşağıdaki gibi oluşturalım.

 

Yukarıda görülen devrede bağlantı işlemi aşağıdaki gibi yapılmıştır.

  • Soldaki LED’in Anot yani (+) bacağı 12 nolu dijital pine bağlandı.
  • Ortadaki LED’in Anot yani (+) bacağı 11 nolu dijital pine bağlandı.
  • Sağdaki LED’in Anot yani (+) bacağı 10 nolu dijital pine bağlandı.

Devremizin kodu aşağıdaki gibidir.


int leftLed = 12;
int middleLed = 11;
int rightLed = 10;

void setup() {    
          
pinMode(leftLed, OUTPUT);
pinMode(middleLed, OUTPUT);
pinMode(rightLed, OUTPUT);

}

void loop() {

digitalWrite(leftLed, HIGH);
delay(100);

digitalWrite(leftLed, LOW);
digitalWrite(middleLed, HIGH);
delay(100);

digitalWrite(middleLed, LOW);
digitalWrite(rightLed, HIGH);
delay(100);

digitalWrite(rightLed, LOW);
delay(500);

}

Kodların açıklaması aşağıdaki gibidir.


int leftLed = 12;
int middleLed = 11;
int rightLed = 10;

Yukarıda int tipinde 3 adet değişken tanımladık. Değişkenlere sırasıyla LED’lerimizin (+) bacağını bağladığımız dijital pinlerin sayısal değerlerini değer olarak atadık.


void setup() {

pinMode(leftLed, OUTPUT);
pinMode(middleLed, OUTPUT);
pinMode(rightLed, OUTPUT); 

}

pinMode komutu, pin ve mode olmak üzere iki parametre almaktadır. Pin parametresi, modunu ayarlamak istediğimiz pin bilgisini; mode parametresi ise belirtilen pinin giriş(INPUT) veya çıkış (OUTPUT) olarak ayarlanmasını sağlamak için kullanılır. Yukarıda verilen üç pinMode komutu ile 12, 11 ve 10 nolu pinler çıkış olarak ayarlanmıştır.


void loop() {

… 

digitalWrite(leftLed, LOW);
digitalWrite(middleLed, HIGH);
delay(100);

…

}

digitalWrite komutu, dijital pine HIGH veya LOW değer göndermek için kullanılır. Pin çıkış olarak yapılandırılmış ise HIGH değerine karşılık dijital çıkış 5V olarak ayarlanır. LOW değerine karşılık ise 0V olarak ayarlanır.

delay komutu parametre olarak milisaniye değerini alır. Belirtilen milisaniye kadar programın beklemesini sağlar.

Bu uygulama hakkında ayrıntılı bilgiler edinmek için kanalımda yayınladığım şu videoyu izlemenizi tavsiye ediyorum.