Forum: Mikrocontroller und Digitale Elektronik Flankentriggerung fuer ARM externer Interrupt ?


von Stephan (Gast)


Lesenswert?

hi

habe mich in den ARM Chip eingearbeitet (lpc2106) und habe eine
Interrupt Routine in Assembler fuer den externen Button geschrieben.
Zuerst hatte ich das Problem, dass ich den Interrupt Flag am Ende der
Routine nicht geloescht habe und somit er nie aus der IRQ Routine
rausgekommen ist. Nun funktioniert alles soweit, bis auf die Tatsache,
dass der IRQ vom Taster am EINT2 Eingang levelgetriggert ist anstatt
flankengetiggert. sprich solange ich den Taster gedrueckt halte,
oszillieren meine Ausgaenge. In der Registerbeschreibung vom Internem
Interrupt Controller (VIC) ist mir nichts aufgefallen, dass man da was
umstellen kann.

Kann mir jemand da einen Tip geben bzw. stimmt es dass der externe
Interrupt Eingang immer levelgetriggert ist ?

Man koennte das Problem softwareseitig umgehen, aber es waere ziemlich
umstaendlich, ausserdem wuerde er immernoch jedesmal von vorne in die
ISR reinspringen.


vielen Dank!

von Peter Dannegger (Gast)


Lesenswert?

Stimmt, das geht nicht.

Du kannst aber die Capture-Eingänge nehmen, die sind
flankengetriggert.


Sind es aber prellende Tasten, dann ist es am besten, den
Timerinterrupt zu nehmen (siehe Codesammlung).


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
Noch kein Account? Hier anmelden.