ext. Interrupt an beiden Flanken in unterschiedlichen Routinen.

Gast #3710824
Lesenswert?

Jan R. schrieb:

> für eine Spezielle auswertung, muss der uC bei einer negativen Flanke in
> eine andere Routine springen als bei einer Positiven. Dafür könnte ich
> jetzt zwei eingänge verwenden, gibt es aber auch die möglichkeit das mit
> nur einem zu Realisieren?

Das kommt darauf an, wie schnell minimal die steigende und fallende 
Flanke (oder umgekehrt) aufeinander folgen können. Wenn da sicher genug 
Zeit ist, um den Interrupt auszulösen und die ISR zu durchlaufen (und 
wirklich nur unter dieser Bedingung!), dann gibt es zwei Möglichkeiten:

1)
Den Interrupt für beide Flanken sensibilisieren, in der ISR den 
aktuellen Pegel am Pin abfragen und entsprechend verzweigen.

2)
Den Interrupt für nur eine Flanke sensibilisieren, in der ISR jeweils 
auf die andere Flanke umkonfigurieren und dann entprechend der 
Konfiguration verzweigen.

Welche der beiden Varianten man nimmt, hängt von den Fähigkeiten des 
Interruptpins bezüglich der Sensibilisierung ab. Bei AVRs wird das im 
Allgmeinen zu folgender Wahl führen müssen: für PCINTx Variante 1) und 
für INTx Variante 2).

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