IF komutunun öğrenilmesi

3  butona doğru sırayla  basılmadığında kırmızı ledi yakar. Sayac değişkeni herhangi bir butona basıldığında 1 artacaktır. Sayac=3 olunca kırmızı ya da yeşil led yanar ve program başa döner. Her buton kontrolünden sonra delay komutu kullanıldığına dikkat ediniz. Buton arkı söndürme işlemi denen bu olay çok önemlidir. Kulanılmadığında özellikle sayaç olarak kullanılan işlemlerde butona her basışta değerin birer birer artması gerekirken üçer beşer artacaktır. Değişken kullanımını ve if komutunu öğrenmek için iyi bir çalışmadır.

3 butonlu

/* 27.11.2014  www.robotkursu.com

3 butona buton2, buton1, buton3 sırasıyla basıldığında

led_dogru isimli ledi yakan,

yanlış sırada basıldığında  led_hata isimli ledi yakan

programdır.

if komutunu kavramak için güzel bir çalışmadır.

Öncelikle kendiniz yazmaya çalışmalısınız.

*/

int led_dogru=2;    // yeşil lede led_dogru ismini verdik

int led_hata=3;

int buton1=8;

int buton2=9;

int buton3=10;

int a=0;int b=0;int sayac=0;

void setup ()

{

pinMode (led_dogru,OUTPUT);

pinMode (led_hata,OUTPUT);

pinMode (buton1,INPUT);

pinMode (buton2,INPUT);

pinMode (buton3,INPUT);

}

void loop ()

{

digitalWrite(led_hata,0);digitalWrite(led_dogru,0);

if (digitalRead(buton1)==0) { a=0; sayac=sayac+1;}

if (digitalRead(buton2)==0) { a=1; sayac=sayac+1;} // basılan birinci buton doğru

if (digitalRead(buton3)==0) { a=0; sayac=sayac+1;}

delay(150);  // bu gecikme komutunu kulanmazsak butona 2-3 kere basılmış gibi algılanacaktır.

if ((a==1)&(digitalRead (buton1)==0))

{  delay(50); b=1;  }              // basılan 2. buton da doğru

if ((b==1)&(digitalRead (buton3)==0))

{

delay(50); digitalWrite(led_dogru,1);delay(1000); // basılan 3. buton da dogru

a=0;b=0;sayac=0;

}

//———– YANLIŞ HAMLE ——————————-

if ((sayac==3)&(b==0))

{digitalWrite(led_hata,1);delay(500);a=0;b=0; sayac=0;  }

}

Related Posts

LEDyak app inventor uygulaması

Bu uygulama ile android telefonunuzdan başlangıç modülü üzerindeki LED leri yakıp söndürebilirsiniz. arduino kodu için Read More

Arduino Scratch modülü 5: 7 Segment display kullanımı

Arduino scratch modülümüz ile 7 segment display kullanımına örnek dersimiz. Modül üzerindeki 7 segment displayRead More

Arduino Scratch modülü 4: Led animasyon

Comments are Closed