Hallo, ich versuche mich gerade am externen Interrupt mit dem Mega16. Könntet ihr bitte kurz den Code durch schauen? Der Interrupt scheint nämlich nicht auszulösen. Gruß Holger
Übrigens sollte man als allererstes in der ISR für einen externen Interrupt selbigen abschalten. Mechanische Schalter prellen allesamt, sodass dein Interrupt andernfalls x-mal auslöst.
"Übrigens sollte man als allererstes in der ISR für einen externen Interrupt selbigen abschalten." Man sollte sie erst garnicht dafür verschwenden, da man ja eh den Timerinterrupt zum Entprellen braucht. Und für wirklich eilige Sachen (Ethernetcontroller) sollte man es auch nicht, sonst geht einem womöglich ein Interrupt durch die Lappen. Selber unterbrechen kann ein Interrupt sich ja nicht. Peter
> Selber unterbrechen kann ein Interrupt sich ja nicht.
Nu ja, vorsicht, mit INTERRUPT könnte er es :), und bei einem
pegelgetriggerten externen Interrupt würde die ISR so lange
erneut aufgerufen (und zwischendurch wohl jedesmal nur einen
einzigen Befehl des Hauptprogramms ausführen), wie der Pegel
aktiv anliegt.
> Und für wirklich eilige Sachen (Ethernetcontroller) > sollte man es auch nicht, sonst geht einem womöglich > ein Interrupt durch die Lappen. Und wie macht man es bei eiligen Sachen, polling? Das kann aber doch auch durch Interrupts unterbrochen werden.
Eilige Sachen am besten durch Hardware erledigen lassen (input capture oder sowas zum Beispiel). Peter ging's ja nur darum, dass man den wahllosen 08/15-Taster eben nicht an einen externen Interrupt klemmen sollte, da man ihn ohnehin entprellen muss -- und ,,eilig'' kann der wohl sowieso nie sein.
> Und für wirklich eilige Sachen (Ethernetcontroller) > sollte man es auch nicht abschalten, sonst geht einem womöglich ---------------------------^^^^^^^^^^ > ein Interrupt durch die Lappen. Sorry, das war mißverständlich. Für eilige Sachen ist der externe Interrupt ja gedacht. Peter
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.