5.00 / 1 oy

Arduino'da ledleri sırayla yakma örneği

Daha önce Arduino'da led yakma örneği yapmıştık, ama bu sefer çok sayıda ledi yanyana yakarak bir led ışık hareketi oluşturacağız. 10 adet led'i breadboard üzerinde yanyana önce soldan sağa, sonra da soldan sağa doğru akacak şekilde yakıp söndürecek bir kod yazacağız. Kullanacağımız Arduino component'leri şunlar olacak:

- Arduino Uno R3

- Breadboard

- Dirençler

- 10 adet farklı renklerde led

- 21 adet jumper kablo

Projenin hazırlanma mantığı şu: Breadbooard'un bir tarafına sırasıyla led lambaları ekliyoruz ve tümünün artı bacağına denk gelen kısımdan breadboard'un karşısına birer 220k'lık direnç ekliyoruz.

arduino ledleri sırayla yakmak

Proje çalıştığında ise aşağıdaki gibi bir led animasyonu elde etmiş olacağız.

arduino ledler

Gelelim kodlara. 10 adet led'i teker teker tanımlamak ve yakıp söndürmek yerine bir dizi (array) tanılmayarak pin'leri tanıtacağız ve yakıp söndürme işlemlerini de bir while döngüsü kullanarak kodlayacağız. Alternatif olarak for döngüsü de kullanılabilir.

Döngünün alacağı değerler ve dolayısıyla kaçıncı dizi elemanı oldukları:

0 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 0...

Kodlar:

int ledDizi[] = {2,3,4,5,6,7,8,9,10,11};

void setup() {
  for(int i=0; i<10; i++){
  	pinMode(ledDizi[i], OUTPUT);
  }
}

void loop() {
  int dongu = 0;
  
  while (dongu < 9)
  {
    digitalWrite(ledDizi[dongu], HIGH);
    delay(100);
    digitalWrite(ledDizi[dongu], LOW);
    dongu++;
  }
  
  while (dongu >= 1)
  {
    digitalWrite(ledDizi[dongu], HIGH);
    delay(100);
    digitalWrite(ledDizi[dongu], LOW);
    dongu--;
  }
}

 

mr. faruk

04.05.2020 12:19

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
Arduino'da ledleri sırayla yakma örneği

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.