Pin Change Interrupt mit steigender Flanke

Gast #238471
Lesenswert?

Hallo zusammen,
ich möchte dass meine interrupt-routine nur bei steigender flanke
ausgeführt wird. bei fallender soll nichts passieren.
das eingangssignal kann/ist zu kurz um einfach in der interruptroutine
den pin auf high oder low abzufragen...

hat jemand einen vorschlag?
Moderator Persönliche Seite #238474
Lesenswert?

Ist sowieso eine schlechte Idee, mechanische Schalter über
externe oder Pinchange-Interrupts abzufragen.  Die fragt man
mit einem Timer ab, da man die sowieso entprellen muss.

Ansonsten: schalt' doch den pinchange interrupt im Handler
erstmal aus (und durch einen Timer wieder an).  Wenn's wirklich
so kurz gewesen ist, dass er beide Flanken vor der Interrupt-
annahme hatte, isses egal, ansonsten verhinderst du den Interrupt
auf der fallenden Flanke.
Gast #238475
Lesenswert?

> der benutzer kann aber "den schalter" der den pci steuert selbst
> drücken.

Ist der denn entprellt? Sonst bekommst du eh mehrere Flanken.

> drückt er ihn kurz-> kein problem;

Da müßte er aber sehr kurz drücken.

> drückt er ihn lang -> fallende flanke wird erkannt und pci
> ausgelöst...

Mal angenommen, du redest von AVR: Warum weichst du nicht auf einen
Interrupt-Eingang aus? Bei dem ist einstellbar, worauf er triggert.
Gast #238476
Lesenswert?

streng genommen ist es ein touch panel, von dem nur kooerdinaten gelesen
werden sollen, wenn es auch gedrückt ist...


>Mal angenommen, du redest von AVR: Warum weichst du nicht auf einen
Interrupt-Eingang aus? Bei dem ist einstellbar, worauf er triggert.

davon rede ich zwar. möchte/kann keinen externen interrupt benutzen...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren