- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 10 von 40

Thema: Taster mit Kondensator entprellen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    Interrupts kann ich leider nicht verwenden, ich verwende digitalRead für beliebig viele Buttons in Instanzen eines Button-Objekts:
    https://github.com/dsyleixa/Arduino/...er/ButtonClass

    Abgefragt werden alle Button-Zustände mindestens 1x pro loop(), und wie lange eine Loop dauert, lässt sich nicht allgemein vorhersagen (u.U. nur 1ms oder sogar weniger, evtl aber auch länger).
    In der Button Class sind derzeit auch noch delay(1) drin, aber auch die sollen noch raus.
    10 oder 20ms warten bis entprellt ist, ist absolut nicht möglich.

    Leider gibt es auch kein preemptives Multithreading für die ARMs (POSIX pthread oder std::thread), sonst könnte ich das in einen eigenen langsameren Thread "outsourcen".

    Daher suchte ich eine simple Entprellung per Kondensator.
    Geändert von HaWe (15.05.2019 um 15:45 Uhr)

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    Naja, man kann auch Schleifen ohne delay()-Funktion bauen, einfach mit Zählern.

    Der Taster wird gegen Masse geschaltet. Ein Kondensator kann keine 0V ausgeben. Er kann nur positive Ladung abgeben.
    Musst Du die Logik der Taster umkehren, dann kannst Du Kondensatoren in der Größe 4700µF oder mehr nehmen, evtl etwas weniger, musst Du dann ausprobieren.



    MfG

  3. #3
    HaWe
    Gast
    Zitat Zitat von Moppi Beitrag anzeigen
    Naja, man kann auch Schleifen ohne delay()-Funktion bauen, einfach mit Zählern.

    Der Taster wird gegen Masse geschaltet. Ein Kondensator kann keine 0V ausgeben. Er kann nur positive Ladung abgeben.
    Musst Du die Logik der Taster umkehren, dann kannst Du Kondensatoren in der Größe 4700µF oder mehr nehmen, evtl etwas weniger, musst Du dann ausprobieren.
    MfG

    4700µF Elkos würden aber bei weitem den verfügbaren Platz überschreiten
    die Kerkos sollten dicht neben die Tasterbuttons gesteckt werden, quasi daneben "verschwinden".

    Schleifen ohne delay nutze ich ja bereits, denn es sollen ja auch Doppelklicks und lange Drücke erfasst werden.
    Guck dir mal dazu bitte den ButtonClass-Code genau an.

    Trotzdem kommt es zum unerwünschten Erfassen von Prellen im Bereich z.B. von 1ms bis (geschätzt) 10ms, die dann unerwünschterweise wie Doppelclicks wirken.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    903
    Wenn Du kein delay() verwendet wissen möchtest, warum verwendest Du dann den oben angegebenen Code?

    https://github.com/dsyleixa/Arduino/.../ButtonClass.h
    Zeile 146
    Zeile 175

  5. #5
    HaWe
    Gast
    Zitat Zitat von Holomino Beitrag anzeigen
    Wenn Du kein delay() verwendet wissen möchtest, warum verwendest Du dann den oben angegebenen Code?
    https://github.com/dsyleixa/Arduino/.../ButtonClass.h
    Zeile 146
    Zeile 175
    ich schrieb doch oben: die sollen auch noch weg.
    In der Button Class sind derzeit auch noch delay(1) drin, aber auch die sollen noch raus.
    Momentan verbessern sie das Prellen zwar schon (bei Prellen innerhalb der ersten 1ms), aber dennoch nicht gut genug für die ersten 20ms, und daher wollte ich alles rausschmeißen und per Kondensatoren entprellen (siehe TO Post).

    Wenn du aber den ButtonClass Code derart verbessern kannst, dass er SOWOHL perfekt bis 20ms entprellt ALS AUCH gar keine delays mehr verwendet:
    HER DAMIT!

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    4700µF Elkos würden aber bei weitem den verfügbaren Platz überschreiten
    Das ist mir klar Aber anders .... ?

  7. #7
    HaWe
    Gast
    Zitat Zitat von Moppi Beitrag anzeigen
    Das ist mir klar Aber anders .... ?
    das wäre genau die Frage ...

Ähnliche Themen

  1. Taster entprellen?
    Von Ferdinand im Forum C - Programmierung (GCC u.a.)
    Antworten: 12
    Letzter Beitrag: 18.08.2011, 22:27
  2. Probleme mit Taster entprellen
    Von Mr Bean im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 08.05.2007, 17:12
  3. Entprellen von Taster
    Von Exodus im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 10.07.2006, 10:15
  4. Taster Entprellen mit Bascom
    Von hardstyleroxx im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 31.01.2005, 16:41
  5. Taster entprellen
    Von RCO im Forum Elektronik
    Antworten: 19
    Letzter Beitrag: 14.10.2004, 12:59

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress