Bu uygulamada iki butondan birine basıldığında deneysel devre tahtasındaki LEDi yakmayı gösteren devre şemasını ve bu şemaya ait kodları bulacaksınız.
Devre hazırlığı için gerekli malzemeler;
- 1 tane Arduino Uno
- 1 tane breadboard
- 2 tane 10k direnç
- 1 tane 470 ohm direnç
- 2 tane 4 bacaklı buton
Devre:
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | //buton durum kontrol değişkeni int buttonState1 = 0; int buttonState2 = 0; void setup() { //pin 2 ve 3 giriş, pin 13 çıkış yapıldı pinMode(2, INPUT); pinMode(3, INPUT); pinMode(13, OUTPUT); } void loop() { buttonState1 = digitalRead(2); buttonState2 = digitalRead(3); // buttonState HIGH durumu if (buttonState1 == HIGH || buttonState2 == HIGH) { // ledi yak digitalWrite(13, HIGH); } else { // ledi low digitalWrite(13, LOW); } delay(10); } |
Açıklama:
Daha önceki yazılarda tek buton ile led yakma uygulaması yapmıştık. Bu uygulamada iki buton kullanarak led yaktık. Uygulama void içinde iki butonu giriş (INPUT) yaptık. pin 13de LED yanacağı için bunu çıkış (OUTPUT) olarak ayarladık.
Daha sonra loop içinde digitalRead ile butonlardan gelen değerleri okuyup buttonState1 ve buttonState2 değişkenlerine durumlarını atadık.
Burada dikkat etmemiz gereken en önemli nokta buttonState1 == HIGH || buttonState2 == HIGH komutu ile iki butondan birinin basılıp basılmadığını kontrol etmektir. İki butondan her hangi biri basılıysa digitalWrite(13,HIGH) ile pin 13 HIGH yapılacak ve LED yanacaktır. Aksi durumda LED sönük duracaktır.
Add Comment