Hallo, ich frage mich gerade, ob beim MSP430 beim Ausführen einer ISR der gleiche Interrupt diese ISR unterbrechen kann - oder wird dieser "verschluckt". Das Flag lösche ich manuell, da es sich um ein "multiple source flag" handelt. gruß Manuel
Wenn ein Interrupt eintrifft, wirden Flag-Register PC gepusht und die Interrupts gesperrt. Wenn ein weiterer Interrupt eintrifft, wird die laufende ISR nicht unterbrochen, es sei denn, du hast innerhalb der ISR die Interrupts wieder freigegeben - was man aber nur in wirklich gut begründeten Ausnahmefällen tun sollte. reti popt das Statusregister wieder vom Stack und kehrt an die Stelle zurück, an der der Interrupt erkannt wurde. Steht schon wieder ein weiterer Interrupt an, wird nach der Ausführung des Befehls, auf den zurückgesprungen wurde, eine neue Interruptsequenz gestartet. (Natürlich nur, wenn die ISR nicht das Interrupt-Enable-Bit im Statusregister auf dem Stack rückgesetzt hat - was man auch nur in Ausnahmefällen macht.)
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.