Şimdi Ara

Arduino'dan Anlayan El Atarsa Sevinirim

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir (1 Mobil) - 2 Masaüstü1 Mobil
5 sn
5
Cevap
1
Favori
609
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar merhaba. Olay aslında basit ama ben yazılım konusunda tecrübesiz olduğumdan tıkandım. Şöyle anlatayım basitçe.

    Arduino ile butona basınca yanan led yapılırya hani en klasik proje. Butondan elimizi çekince söner.

    Benim beceremediğim ise şu. Butona basılınca bu led yanaca 1 saniye sonra sönecek. Amaaaaa elimizi butona basılı tutsak dahi bu işlem sadece bir kez tekrarlanacak.

    Yine tekrarlanmasını istersem butonu bırakıp tekrar basmam gerekecek.

    Nasıl yapabilirim. Şimdiki durumda butona basılınca led 1 saniye yanıyor sönüyor ve tekrar yanıyor 1 saniye bekliyor sönüyor ve tekrar...... diye gidiyor. Bırakana kadar tekrar ediyor. İstediğim bırakıp tekrar basana kadar sadece bu işi bir kez yapsın.

    Şimdiden herkese teşekkür ederim.



  • Ledi söndürdüğün noktada, butona basılı olma koşuluyla while sonsuz döngüsüne sokarak sorunu çözebilirsin.
  • Harici kesme kullanarak düşen kenarı yakalayabilirsin. Böylece buton bırakılma olayı algılanmaz, sadece basma algılanır.

    https://gelecegiyazanlar.turkcell.com.tr/konu/arduino/egitim/arduino-104/dis-kesmeler-external-interrupt
  • Teşekkür ederim arkadaşlar. Denememi en kısa zamanda yapıp burada yazacağım.
  • #define Led 13
    #define buton 1
    boolean what = 0;

    void setup(){

    pinMode(buton, INPUT);
    pinMode(ledPin, OUTPUT);

    }

    void loop(){

    if(digitalRead(buton, HIGH) == 1 && what == 0){ // butona basildiysa dongu calissin

    digitalWrite(Led, HIGH);
    delay(1000);
    what = 1;

    }

    if(digitalRead(buton, LOW) ==1 && what == 1){

    what = 0;
    digitalWrite(Led, LOW);

    }

    }

    boyle oluyor galiba, harici kesme niye verilmis anlamadim



    < Bu mesaj bu kişi tarafından değiştirildi betacoins -- 5 Ocak 2017; 22:56:57 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.