Butona basıp bırakıldığında ledi 5 saniye sonra yakan arduino kodu lazım

2 saat boş bıraktık ne hale getirmişsiniz burayı. Böyle fırtına mı olur? :katil2:
 
Butona basma işinde debounce diye bir olay var. Onu araştırın. Ayrıca bayrak kullanma olayını araştırın. Bayrak isminde bir değişken oluşturup butona basıp bıraktığınızda bu değişkene 1 değeri atayın. Butona ikinci kez basınca sıfır değeri atayın. Böylece buton kontrolü sağlayabilirsiniz. İşim bitmedi daha o yüzden koda kafa yoramıyorum.
 
İki arada bir derede şunu yazdım. Çalışır mı emin değilim. Bir dener misin?

C++:
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.  
  }
}
 
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.
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?
 
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 :facepalm1: Basinca 0 volt olacak buton pininde de.. nasil baglanti
 
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 :facepalm1: Basinca 0 volt olacak buton pininde de.. nasil baglanti

Ç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? :)
 

Ç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? :)
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.
 
Bastim bekledim 5 sn den fazla birakmadim, o yandi. Yandiktan sonra biraktim sondu 5 sn bekleyip geri yandi
 

Ekler

  • 2024-06-04 18-29-21.mp4
    226.3 KB
Bastim bekledim 5 sn den fazla birakmadim, o yandi. Yandiktan sonra biraktim sondu 5 sn bekleyip geri yandi
1.jpg


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.
 
34305 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.
Onkeydown Dugmeye basarken. onkeypress dugmeye bastin bekliyorsun ya o ara, onkeyup dugmeden elini kaldirirken. Cok buyuk ihtimalle boyle
 

Çevrimiçi personel

Forum istatistikleri

Konular
6,941
Mesajlar
118,630
Üyeler
2,821
Son üye
Sfkzdmr

Son kaynaklar

Son profil mesajları

hakan8470 wrote on Dede's profile.
1717172721760.png
Dedecim bu gul mu karanfil mi? Gerci ne farkeder onu da anlamam. Gerci bunun anlamini da bilmem :gulus2:
Lyewor_ wrote on hakan8470's profile.
Takip edilmeye başlanmışım :D ❤️
Merhaba elektronik tutsakları...
Lyewor_ wrote on taydin's profile.
Merhabalar. Elektrik laboratuvarınız varsa bunun hakkında bir konunuz var mı acaba? Sizin laboratuvarınızı merak ettim de :)
Lyewor_ wrote on taydin's profile.
Merhabalar forumda yeniyim! Bir sorum olacaktı lcr meterler hakkında. Hem bobini ölçen hemde bobin direnci ölçen bir lcr meter var mı acaba?
Back
Top