- Labornetzteil AliExpress         
Ergebnis 1 bis 8 von 8

Thema: tasten oder gedrückt halten

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348

    tasten oder gedrückt halten

    Hallo zusammen,

    ich versuche schon die ganze Zeit heraus zu finden wie es möglich ist, abzufragen ob ich einen Taster nur kurz taste oder ob er gedrückt gehalten wird?

    Gibt es dafür evtl. eine fertige Funktion? Oder hat sowas schonmal jemand selber programmiert?

    Danke für euere Hilfe!

  2. #2
    Erfahrener Benutzer Begeisterter Techniker Avatar von Torrentula
    Registriert seit
    10.10.2009
    Ort
    Procyon A
    Beiträge
    355
    Ganz einfach, du fragst einfach den Pin an dem der Taster angeschlossen ist 2 mal ab. Wenn der Taster gedrückt wird, wird z.B. 5 sekunden gewartet, wenn der Taster dann immernoch gedrückt ist, wird ein eine bestimmte Aktion ausgeführt, wenn er nicht mehr gedrückt sein sollte wird eine andere aktion ausgeführt.

    MfG

    Torrentula
    MfG Torrentula

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Hallo,

    ich hatte mal einen ähnlichen Fall, habe mir dann so beholfen:
    Code:
    Config Pind.2 = Input
    Portd.2 = 0
    ...
    ...
    While Pind.2 = 1
    Waitms 1
    Incr Taster_counter
    Wend
    If Taster_counter > xxx Then
    'lange gedrückt
    Else
    'kurz gedrückt
    End If
    Taster_counter = 0
    Evtl. hilfts dir ja

    Gruß
    Chris

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348
    Hi
    danke
    hat funktioniert!

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Du musst aber bedenken, dass du damit den Rest deines Programms sehr lange blockierst. Evtl. wäre es besser, das Problem mittels Timer und Int zu lösen.

    Gru0
    Chris

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    ich wollte schon eine alternative präsentiern, weil ich selber eine lösung gebaut habe die aber nur auf einen taster zur gleichen zeit reagiert, wenn das reicht !?

    einfach den Taster an einen der Interrupteingänge hängen, auf die Flanke des drückens reagieren und einen Timer starten, der erst nach 10mS überläuft (TCNT Register voreinstellen) und dann alle 100-500mS (je nach Geschmack) überläuft und dann den Zustand des Taster prüft, ist der Taster aus, wird der Timer schlafen gelegt, ist der Taster an, wird irgendetwas ausgelöst!

    das geht auch mit mehreren Tastern und demselben Timer, einfach alle Taster zusammen über Dioden an den Interrupt-Pin hängen und jeden Taster einzeln an einen Pin deiner Wahl, in der Timerroutine werden dann alle Taster gleichzeitg abgefragt, aber er reagiert halt nur auf einen einzelnen Tasterdruck!

    Aber in einem anderen Topic bin ich schon dran auch das Problem zu lösen!
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

Ähnliche Themen

  1. Atmega16, STK500: Switch X gedrückt => LED X soll leuchten
    Von Kesandal im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 1
    Letzter Beitrag: 28.04.2011, 20:44
  2. Tastenabfrage (Kur/Lang gedrückt)
    Von DerSchatten im Forum C - Programmierung (GCC u.a.)
    Antworten: 12
    Letzter Beitrag: 13.01.2010, 12:53
  3. Antworten: 1
    Letzter Beitrag: 19.03.2009, 14:09
  4. Wenn Taster gedrückt, hoher Stromverbrauch
    Von Pitt1986 im Forum Elektronik
    Antworten: 23
    Letzter Beitrag: 10.09.2006, 21:52
  5. Antworten: 15
    Letzter Beitrag: 30.08.2005, 21:45

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen