Arduino’nun on adet çıkış pinine bağlanmış LED’i sırayla tek tek yakıp söndürmek için döngü
komutları kullanılmıştır. Döngü komutları kullanılmazsa program tekrar eden komutlar nedeniyle
çok uzun olacaktır. Uygulamada 0. pinden 9. pine kadar olan LED’ler sırayla yakılıp söndürülmektedir. Geriye dönüşte ise 8. pinden 1. pine kadar olan LED’ler sırayla yakılıp söndürülmektedir. “sure” değişkeninin içeriği değiştirilerek LED’lerin çalışma hızı ayarlanır

byte i;
int sure = 100;
byte sayi = 255; //İkilik B11111111'dir.

void setup() {
  DDRD = sayi; //0-7 numaralı pinler çıkış olarak ayarlandı.
}

void loop() {
  for (i = 0; i <= 7; i++)  {
    PORTD = bitSet(sayi, i); //Sayının bitlerini sırayla 1 yap.
    delay(sure);
    PORTD = bitClear(sayi, i); //Sayının bitlerini sırayla 0 yap.
  }
  for (i = 6; i > 0; i--) { //ilk ve son LED dönüşlerde bir kez yanar.
    PORTD = bitSet(sayi, i);
    delay(sure);
    PORTD = bitClear(sayi, i);
  }
}

byte i, x;
int sure = 100;

void setup() {
  for (i = 0; i < 10; i++) {
    pinMode(i, OUTPUT); // 0 - 9 pinleri çıkış yap.
  }
}
void loop() {
  for (x = 0; x < 3; x++) { // İçerdeki iki for döngüsünü üç kez tekrarla.
    for (i = 0; i < 5; i++) { // İlk beş LED'i yak. (Hepsi aynı anda yanar görünür.)
      digitalWrite(i, 1);
    }
    delay(sure);

    for (i = 0; i < 5; i++) { // İlk beş LED'i söndür.
      digitalWrite(i, 0);
    }
    delay(sure);
  }

  for (x = 0; x < 3; x++) { // İçerdeki iki for döngüsünü üç kez tekrarla.
    for (i = 5; i < 10; i++) { // Son beş LED'i yak.
      digitalWrite(i, 1);
    }
    delay(sure);

    for (i = 5; i < 10; i++) { // Son beş LED'i söndür.
      digitalWrite(i, 0);
    }
    delay(sure);
  }
}

void setup() {
  byte i, x;
  int sure = 100;
  for (i = 0; i < 10; i++) {
    pinMode(i, OUTPUT); // 0 - 9 pinleri çıkış yap.
  }
  for (byte j = 0; j < 10; j++) { // Alttaki tüm kodları 10 kez çalıştır.
    for (x = 0; x < 3; x++) { // İçerdeki iki for döngüsünü üç kez tekrarla.
      for (i = 0; i < 5; i++) { // İlk beş LED'i yak. (Hepsi aynı anda yanar görünür.)
        digitalWrite(i, 1);
      }
      delay(sure);

      for (i = 0; i < 5; i++) { // İlk beş LED'i söndür.
        digitalWrite(i, 0);
      }
      delay(sure);
    }

    for (x = 0; x < 3; x++) { // İçerdeki iki for döngüsünü üç kez tekrarla.
      for (i = 5; i < 10; i++) { // Son beş LED'i yak.
        digitalWrite(i, 1);
      }
      delay(sure);

      for (i = 5; i < 10; i++) { // Son beş LED'i söndür.
        digitalWrite(i, 0);
      }
      delay(sure);
    }
  }
}
void loop() {
}

int sure = 100;
void setup() {
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT);
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
}
void loop() {
  digitalWrite(0, HIGH);
  delay(sure);
  digitalWrite(0, LOW);
  digitalWrite(1, HIGH);
  delay(sure);
  digitalWrite(1, LOW);
  digitalWrite(2, HIGH);
  delay(sure);
  digitalWrite(2, LOW);
  digitalWrite(3, HIGH);
  delay(sure);
  digitalWrite(3, LOW);
  digitalWrite(4, HIGH);
  delay(sure);
  digitalWrite(4, LOW);
  digitalWrite(5, HIGH);
  delay(sure);
  digitalWrite(5, LOW);
  digitalWrite(6, HIGH);
  delay(sure);
  digitalWrite(6, LOW);
  digitalWrite(7, HIGH);
  delay(sure);
  digitalWrite(7, LOW);
  digitalWrite(8, HIGH);
  delay(sure);
  digitalWrite(8, LOW);
  digitalWrite(9, HIGH);
  delay(sure);
  digitalWrite(9, LOW);
  digitalWrite(8, HIGH);
  delay(sure);
  digitalWrite(8, LOW);
  digitalWrite(7, HIGH);
  delay(sure);
  digitalWrite(7, LOW);
  digitalWrite(6, HIGH);
  delay(sure);
  digitalWrite(6, LOW);
  digitalWrite(5, HIGH);
  delay(sure);
  digitalWrite(5, LOW);
  digitalWrite(4, HIGH);
  delay(sure);
  digitalWrite(4, LOW);
  digitalWrite(3, HIGH);
  delay(sure);
  digitalWrite(3, LOW);
  digitalWrite(2, HIGH);
  delay(sure);
  digitalWrite(2, LOW);
  digitalWrite(1, HIGH);
  delay(sure);
  digitalWrite(1, LOW);
}

DİKKAT
Arduino’nun 0. (Rx) ve 1. (Tx) pinleri USB kabloyla bilgisayara bağlıdır. Yükleme tuşuna basıldığında bu pinler kullanılır. 0. (Rx) pini devreye bağlıysa program karta yüklenirken
hata verir. 0. pindeki jumper kablosu kaldırıldıktan sonra yükle düğmesine basılır. Program
yüklendikten sonra jumper kablosu 0. pine tekrar bağlanır.

Categories:

Tags:

No responses yet

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Dersler