int buttonPin = 2; // Butonun bağlı olduğu pin
int ledPin = 12; // LED'in bağlı olduğu pin
int buttonState; // Buton durumu
int bayrak = 0; // Buton kontrol eden değişken
void setup() {
pinMode(ledPin, OUTPUT); // ledPin'i çıkış olarak ayarla
pinMode(buttonPin, INPUT); // buttonPin'i giriş olarak ayarla
digitalWrite(ledPin, LOW); //Başlangıçta led sönük
}
void loop() {
buttonState = digitalRead(buttonPin); // Buton durumunu oku
if (buttonState == LOW) { // Butona basıldıysa bayrak değişkenine 1 ata
bayrak = 1;
}
if((buttonState == HIGH) & (bayrak == 1)){ // Buton bırakıldıysa ve bayrak değişkeni 1 ise
digitalWrite(ledPin, LOW); // Led Yanıksa söndür
delay(5000); // 5 saniye bekle
digitalWrite(ledPin, HIGH); // LED'i Yak
bayrak = 0; // Bir sonraki butona basma durumu için bayrağı sıfırladık.
}
}
Led sönük,Başlangıçta led sönük olacak.
Butona basınca 5 saniye sonra led yanacak. Ama komut butona basınca değil bırakınca işleyecek.
Çünkü sürekli basılı tutunca yanıp sönme oluyor.
Sonra ki butona her basışımda led yanık olsun olmasın butonu bıraktığım anda led sönecek. 5 saniye sonra led yanacak.
Yukarıdaki mesajda ben anladığım kadarıyla kodladım. Buna göre butona her bastığında led yanık olsa da, olmasa da önce sönecek, 5sn sonra yanacak.Led sönük,
Butona basıp çektik,
5 sn sonra led yandı.
Bu led ne zaman sönecek peki?
Son cümlenizde "Sonra ki butona her basışımda led yanık olsun olmasın" ifadesi kafa karışıklığı yaratıyor çünkü led hala yanık vaziyette?
Yukarıdaki mesajda ben anladığım kadarıyla kodladım. Buna göre butona her bastığında led yanık olsa da, olmasa da önce sönecek, 5sn sonra yanacak.
Buton nasil baglanmali diye soruyoruz Basinca 0 volt olacak buton pininde de.. nasil baglanti
O zaman senin buton normalde low, basınca high oluyor demekki. Sistemi ilk çalıştırdığında buton low olduğu için bayrağa direk 1 değişkeni atıryor. Bu durumda birinci şart sağlanıyor. Butona bastığında ise buton durumu high oluyor ve ikinci durumda sağlandığı için led yanıyor.gktrl-hkn - Wokwi ESP32, STM32, Arduino Simulator
Run IoT and embedded projects in your browser: ESP32, STM32, Arduino, Pi Pico, and more. No installation required!wokwi.com
Çalışıyor şimdi.
Ama bir sorun var.
Şimdi lamba yanıyor butona bastık. Lamba sönüyor .Bırakmadan 5 saniye bekledik.
Bu lamba neden 5 saniye sonra yanıyor.
Bıraktıktan sonra 5 saniye bekleyip yanması lazım?
Bastim bekledim 5 sn den fazla birakmadim, o yandi. Yandiktan sonra biraktim sondu 5 sn bekleyip geri yandi
Onkeydown Dugmeye basarken. onkeypress dugmeye bastin bekliyorsun ya o ara, onkeyup dugmeden elini kaldirirken. Cok buyuk ihtimalle boyle34305 eklentisine bak
Lazarusta üçtane seçenek var. Onkeydown,Onkeypress,Onkeyup
Benim yapmak istediğim bu OnKeyup olan.
Tuşu bırakmadan 5 saniye süreyi başlatıp lambayı yakmamalı.
Diğer ikisinin arasındaki farkı anlamadım gerçi.
İkisinde de aynı şeyi yapıyor.