Was passiert nach dem Interrupt

Gast #2392471
Lesenswert?

Hallo Jungs,

ich habe folgendes Probelm, mein Programm macht machmal Sachen die es 
nicht tun soll, die ich nicht ganz nachvolziehen kann. Ich denke aber 
das hat mit meinem Overflow Interrupt zu tun.
So daher meine Frage: Wenn Interrupt eingetretten ist, wo faengt meine 
Hauptprogram wieder an? An der Stelle wo es unterbrochen wurde oder am 
Anfang des Hauptprograms?

Wenn am Anfang des Programms das koente einiges erklaren! Kann man dann 
das Programm dazu zwingen, dort zu starten wo es aufgehoert hat?

Gruss
#2392477
Lesenswert?

Das Programm speichert sobald ein Interrupt auftritt den PC 
(=Programmcounter) auf dem Stack. Dieser wird wieder zurückgeschrieben 
sobald der Interrupt beendet wird.

Aus deiner Beschreibung heraus kann man wenig sagen: Sprache? µC? Was 
sagt der Simulator? Interruptvektor (für Overflow) geschrieben (wenn 
nein, resettet sich der µC)?
#2393020
Lesenswert?

@  student (Gast)

>So daher meine Frage: Wenn Interrupt eingetretten ist, wo faengt meine
>Hauptprogram wieder an? An der Stelle wo es unterbrochen wurde oder am
>Anfang des Hauptprograms?

Ja wo denn wohl?

>Wenn am Anfang des Programms das koente einiges erklaren!

Nö, das sind freigegebene Interrupts ohne ISR, dort macht der AVR-GCC 
einen Reset.

> Kann man dann
>das Programm dazu zwingen, dort zu starten wo es aufgehoert hat?

Das tut es im Normalfall, siehe Interrupt.

MfG
Falk

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