Forum: Mikrocontroller und Digitale Elektronik ext. Interrupt an beiden Flanken in unterschiedlichen Routinen.


von Jan R. (Gast)


Lesenswert?

Hi,

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?


Danke

von dummschwaetzer (Gast)


Lesenswert?

>> der uC
welcher?

von Julian B. (julinho)


Lesenswert?

pin change interrupt

von Georg (Gast)


Lesenswert?

Jan R. schrieb:
> gibt es aber auch die möglichkeit das mit
> nur einem zu Realisieren?

Das hängt natürlich vom verwendeten Prozessor ab. Darüber hinaus gibt es 
die Möglichkeit, in jeder der beiden IRS-Routinen jeweils die andere 
Flanke "scharf" zu schalten.

Georg

von c-hater (Gast)


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).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.