Forum: Mikrocontroller und Digitale Elektronik Externer Interrupt


von mj83 (Gast)


Lesenswert?

Ich soll ein Programm schreiben das auf externe Interrupt´s reagiert ,
wobei der statische 0-Pegel einen Interrupt auslösen soll .

Nun hab ich in meinen Buch nachgelesen und hab ein Problem :

Muß ich für externe Interupt´s eine Initialsierungsroutine schreiben
ähnlich wie bei internen oder ist das unnötig ?

Ich hab hier ein schaltbild nachdem ich EX0 bzw EX1 schalten müßte
allerdings ist bei den internen an gleicher stelle auch ein schalter
den ich nicht setzen muß : ET0 bzw ET1

Die ISR sind klar die müßen an einer bestimmten stelle stehen , der
statische 0-Pegel ist soweit ich das rausgelesen hab auch
voreingestellt , nur muß ich initialisiren oder nicht ?

Ist ein 8051 und Assembler programmierung

von Rate mal wer :) (Gast)


Lesenswert?

Brauchst es auch für die morgige Übung bei Prof Jä....e :) . Ehrlich
gesagt damit wusste ich auch nix anzufangen. Denke mal das wird sowieso
vom Board festgelegt. Hab die Routine soweit fertig, muß nurnoch sehen
ob sie auch funzt :)

Bis morgen!!

von mj83 (Gast)


Lesenswert?

Also ich denkemal das es ausreicht wenn es an der jewaligen
speicherstelle steht

von Rate mal Wer :) (Gast)


Lesenswert?

So hab ichs gemacht. An den entsprechenden Speicherstellen einen LJMP in
die ISR, und die hab ich dann am Ende des Programms angesetzt. Der
Assembler hat auch keine Fehler angezeigt, obs wirklich funzt werd ich
erst morgen sehen :( .

Bis morgen!!

von mj83 (Gast)


Lesenswert?

So hatt ich´s auch vor , werd´s ja morgen dann sehen

von Peter D. (peda)


Lesenswert?

Schau doch bitte mal ins Datenblatt, wo die einzelnen SFRs erklärt
sind:

ET0 ist die Freigabe für den Timer 0 Interrupt, hat also mit den
externen Interrupts überhaupt nichts am Hut.

Und dann sollte auch klar sein, was Du mit EX0 und EA machen mußt.


Peter

von mj83 (Gast)


Lesenswert?

Nen richtiges Datenblatt hab ich leider nicht nur nen Schaltplan : aber
so wie´s ausschaut muß ich beide setzen .

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.