Arduino ile If Else (Koşul İfadesi) Kullanımı

Arduino ile If Else (Koşul İfadesi) Kullanımı

if (Koşul)
{
// Koşul Sağlanıyorsa Bu İşlemi Yap
}
else if (Koşul)
{
// Koşul Sağlanıyorsa Bu İşlemi Yap
}
else
{
// Bütün Koşullar Sağlanmıyorsa Bu işlemi Yap
}

if Karar verme yapısı Arduino ile sıklıkla kullanılan bir sorgulama komutudur. İf komutu içerisine yazılan sorguyu mantıksal olarak değerlendirir ve sonucu doğru veya yanlış (true or false) şeklinde işleme alır. Belirlediğimiz koşul sağlanıyorsa işlemleri yapar eğer sağlamıyorsa, bir sonraki if komutuna geçer ve kendisine bağlı bulunan kodları çalıştırmaz.

Aşağıdaki örneğe bakalım :

int deger = 50; // değer isimli Integer değikenine 50 değerini atadık
void setup() {
  pinMode(10, OUTPUT); // 10 numaralı digital pini çıkış pini olarak ayarladık
}

void loop() {
  if (deger > 30) // EĞER deger 30'tan büyük ise 
  {
    digitalWrite(10, HIGH); // 10 numaralı pini HIGH (yüksek) yap
  }
}

Bu tek koşullu örnekte tanımlı değeri basit bir şekilde 30’dan büyük olup olmadığı ile karşılaştırdık. Sonucu sağladığı için 10 numaralı dijital pinini aktif edecektir. Eğer şart sağlanmasaydı görmezden gelip bir sonraki komuta geçecekti. Şimdi bunu birden çok koşul ile pekiştirelim.

int deger = 50; // değer isimli Integer değikenine 50 değerini atadık
void setup() {
  pinMode(10, OUTPUT); // 10 numaralı digital pini çıkış pini olarak ayarladık
}

void loop() {
  if (deger < 30)  // EĞER deger 30'tan küçük ise 
  {
    digitalWrite(10, HIGH); // 10 numaralı pini HIGH (yüksek) yap
  } 
  else if (deger > 30) // EĞER deger 30'tan büyük ise 
  {
    digitalWrite(10, LOW);// 10 numaralı pini LOW (düşük) yap
  }

}

Arduino Loop döngüsü içerisindeki ilk If komutu şartı sağlamadığı için bir sonraki else if komutuna geçti ve şart sağlandığı için ise { } kod bloğunda bulunan kendine tanımlı kodları çalıştırdı. Bu bağlamda 10 numaralı pini LOW konumuna getirdi.

Arduino ile kullanabileceğimiz mantıksal operatörler

> “Büyük ise”
< “Küçük ise”
== “Eşit ise”
!= “Eşit değil ise”
&& “ve”
|| “veya”
>= “Büyük veya Eşit ise”
<= “Küçük veya Eşit ise”

Şimdi içerisinde iki tane şart bulunan bir if Cümlesini örnekleyelim…

int deger = 50;
void setup() {
  pinMode(10, OUTPUT);
}

void loop() {
  if (deger > 30 && deger < 100)
  {
    digitalWrite(10, LOW);
  }
  else
  {
    digitalWrite(10, HIGH);
  }
}

Kullanılan bu şart ile değerin 30 dan büyük “veya” 100 den küçük olmadığına tek bir cümle içerisinde karar verdirdik ve 30 ile 100 arasında olan değerimiz şartımıza uyduğu için digital 10 numaralı pini LOW konumuna getirdi . Şayet şartımız sağlamaz ise şart gözetmeksizin else bloğunu çalıştırıp, 10 numaralı digital pini HIGH konumuna getirdi.

Yorumlar kapalı.

nurullahozkan@outlook.com.tr