Was ist ein Level Interrupt?

Gast #4858630
Lesenswert?

Hallo,

beschäftige mich gerade mit dem Anwenden der Stromsparmodi, die die AVRs 
so hergeben. Der Powerdown klingt sehr gut, insbesondere gefällt mir der 
Stromverbrauch.

Aber:
In der Doku heißt es, dass ich den AVR dann zum Beispiel mit einem 
Level-Interrupt an INT0 aufwecken kann.

Was ist denn der Unterschied zwischen einem "normalen" Interrupt, wie er 
durch einen Taster o.ä. mit Flankenerkennung ausgelöst würde und einem 
Level Interrupt? Bzw. was ist das überhaupt?

Danke für kurze Hilfe.
#4858660
Lesenswert?

Eine Sache kann verwirren: INT0/1 wecken nur im Level-Modus auf, nicht 
aber im Flankenmodus. Pin-Change hingegen weckt auf, obwohl das 
natürlich ein Flanken-Modus ist.

Das dürfte historische Gründe haben. Der Flanken-Interrupt von INT0/1 
ist synchron implementiert und benötigt einen Takt. Diese Eigenschaft 
wurde wohl aus Familienkompatbilität über die Jahre und Modelle 
gerettet. Die spätere Pin-Change Erkennung hingegen wurde von Anfang an 
so asynchron implementiert, damit ein Wakeup darüber möglich ist.

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