Forum: Mikrocontroller und Digitale Elektronik 2 externe Interrupts - deaktivieren nötig?


von dost0011 (Gast)


Lesenswert?

Hallo,

ich lese 2 externe Interrupts mit einem ESP8266 ein:

Interrupt 1: Falling, ca. 0 - 10Hz
Interrupt 2: Change, ca. 0 - 20Hz

Nun meine Frage:

Muss ich wenn Interrupt1 abgeabeitet wird, den Interrupt2 sperren und 
umgekehrt? Wird der Interrupt dann nachgeholt?

Habe es mit NoInterrupts() versucht, führt aber zu Verlusten von ca. 10% 
bei beiden Routinen...

Vielen Dank.

von Peter D. (peda)


Lesenswert?

dost0011 schrieb:
> Muss ich wenn Interrupt1 abgeabeitet wird, den Interrupt2 sperren und
> umgekehrt?

Wie kommst Du denn darauf?
Interrupts gleicher Priorität können sich nicht unterbrechen, dafür 
sorgt die Hardware.
Gibt man einem Interrupt eine höhere Priorität, dann genau deshalb, weil 
er den anderen unterbrechen können soll.

Verluste gibt es nur dann, wenn der Interrupthandler länger braucht, als 
die Interrupts hereinkommen.

P.S.:
Es scheint, dieser MC hat nur einen GPIO-Interrupt. D.h. Du mußt darin 
zu Fuß alle Ereignisse auswerten.

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.