avatar_elektro77

Tuşa tek tek ve uzun basarak hızlı değer değiştirme

Başlatan elektro77, 04 Aralık 2020, 12:16:59

elektro77

Ekteki simülasyon ve yazılımda bir devrede bir sayı değerini bir tuşla tek tek artırmak ve aynı değeri aynı tuşa uzun basarak hızlı artırmakla ilgili daha önce ete hocamdan aldığım bir örnek mevcuttur.
Fakat tek tek artırmada değer değişimi geç yanıt veriyor. Yani tuş sıfır olur olmaz değer hemen değişmiyor. Yazılımdaki ekrana yazdırma ile ilgili bazı kodları tuşa basar basmaz değer değişiminin ekrana hemen yansıması için yerleri ile biraz oynadım ve yine gecikme sağlayan for döngüsünün değerleri ile oynasam da istediğimi elde edemedim.
Ete Hocam bunu yapmanın daha stabil bir yolu varsa yardımcı olur musunuz?

"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

Bu işte genellikle şu mantığı kullanırım.

      IF YUKARI=1 THEN
               Z=300:EKLE=0
               WHILE YUKARI=1
                 DEGER=DEGER+1
                 EKLE=EKLE+1:IF EKLE=5 THEN Z=100
                 lcdout $FE,$D4, "DEGER:",# DEGER,"         "
                 PAUSE Z
               WEND               
            ENDIF
                 
            IF ASAGI=1 THEN
                Z=300:EKLE=0
                WHILE ASAGI=1
                  DEGER=DEGER-1
                  IF DEGER=65535 THEN DEGER=0
                  EKLE=EKLE+1:IF EKLE=5 THEN Z=100
                  lcdout $FE,$D4, "DEGER:",# DEGER,"         "
                  PAUSE Z
                WEND
             ENDIF
               
             GOTO BASLA
Mevcut tuş kontrol satırarını sil bunları yaz ve dene bakalım beğenecekmisin tepki süresini.
Bas-bıraklar'da sistem tek tek sayacak ama basılı tutunca 5 defa yavaş sayacak sonrasında hızlanacak. Bıraktığın zaman sonrasında tekrar basarsan hep yavaş modda saymaya başlayacak.
Bu hem artırma hemde azaltma için geçerlidir. Ne zaman hızlanacağına EKLE değeri karar veriyor. Ben 5 saydıktan sonra hızlan demiştim sen istersen 3 yaparsın istersen 10 yaparsın genelde 10 daha uygun oluyor.

Ete

elektro77

Hocam tam istediğim gibi olmuş. Ellerinize ve aklınıza sağlık. Birtanesiniz.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

Powered by EzPortal