Uygulama 18 Ağustos 2021 Altan Topçu 0 Yorum

Buton ile Random(Rastgele) Led Yakıp Söndürme

Arduino Kodları:

int dugme=8, numara=0;

int yesilLed=3, kirmiziLed=4, maviLed=5, sariLed=6;

void setup(){

      Serial.begin(9600);//Arduino kartın bilgisayar ile saniyede 9600 bit hızında iletişim kuracağı anlamına gelir.

      pinMode(dugme, INPUT);//Arduino karta butondan bir veri girişi olacağı için INPUT olarak tanımladık.

      pinMode(yesilLed, OUTPUT);//Arduino karttan yesilLed'e bir veri gönderimi olacağı için OUTPUT olarak tanımladık.

      pinMode(kirmiziLed, OUTPUT);

      pinMode(maviLed, OUTPUT);

      pinMode(sariLed, OUTPUT);

      randomSeed(analogRead(A0));//Ürettiğimizi rastgele sayıların tekrarlanmamasını sağlamaktadır.

}

void loop(){

      if(digitalRead(dugme)==HIGH){//Butona basıldıysa

            numara=randomSeed(3,7);//3-7 arasından rastgele sayılar üret.

            Serial.println(numara);//Üretilen sayıları seri port ekranına yazdır.

      }

      switch(numara){//Rastgele üretilen sayıları yazdırmamıza yarar.

                                //Switch-Case kullanımı if-else gibidir ancak tek fark koşullar arasından öncül ilişkisi yoktur.

                                //Yani şu olmazsa şu kod bloğuna geç değil hangi şart sağlanıyorsa o şartı gerçekleştir.

                case 3://numara değişkeni 3 olursa çalışır.

                       Serial.println(":Yeşil Led");

                       digitalWrite(yesilLed, HIGH);//yesilLed değişkenine güç ver demektir.

                       digitalWrite(kirmiziLed, LOW);

                       digitalWrite(maviLed, LOW);

                       digitalWrite(sariLed, LOW);

                       break;//break komutu programı sonlandır ve baştan başla demektir.

                case 4://numara değişkeni 4 olursa çalışır.

                       Serial.println(":Kırmızı Led");

                       digitalWrite(yesilLed, LOW);

                       digitalWrite(kirmiziLed, HIGH);//kirmiziLed değişkenine güç ver demektir.

                       digitalWrite(maviLed, LOW);

                       digitalWrite(sariLed, LOW);

                       break;//break komutu programı sonlandır ve baştan başla demektir.

                case 5://numara değişkeni 5 olursa çalışır.

                       Serial.println(":Mavi Led");

                       digitalWrite(yesilLed, LOW);

                       digitalWrite(kirmiziLed, LOW);

                       digitalWrite(maviLed, HIGH);//maviLed değişkenine güç ver demektir.

                       digitalWrite(sariLed, LOW);

                       break;//break komutu programı sonlandır ve baştan başla demektir.

                case 6://numara değişkeni 6 olursa çalışır.

                       Serial.println(":SarıLed");

                       digitalWrite(yesilLed, LOW);

                       digitalWrite(kirmiziLed, LOW);

                       digitalWrite(maviLed, LOW);

                       digitalWrite(sariLed, HIGH);//sariLed değişkenine güç ver demektir.

                       break;//break komutu programı sonlandır ve baştan başla demektir.

      }

}

Seri Port Ekranı Çıktısı:

 

0 Yorumlar

Yorum Ekle