C18 Push & POP?

Gast #1420173
Lesenswert?

Hallo!

Mein PIC-Programm zeigt selstsame BUGS.
In unrythmischen Zyklen Gerät mein Programm in einen Abschnitt, in den 
es
eigentlich nicht kommen darf. Irgenwie wird eine Variable überschrieben.
Da es so unregelmäßig ist, kann ich das nicht druch 
"Debugger-Einzelschritte" finden.
(Gibts eine möglichkeit beim MPLAB bei einer Änderung in einer 
bestimmten Speicherzelle das Programm zu stoppen?)


Als ich PIC´s noch mit Assambler beschieben habe, mußte man vor den 
ISR´s die Arbeitsvariablen Pushen und am ende wieder "poppen".

Beim C18 scheint dies ja automatisch zu gehen, ist darauf wirklich 
verlass?

Gruß Stefan
#1420175
Lesenswert?

Stefan schrieb:

> Als ich PIC´s noch mit Assambler beschieben habe, mußte man vor den
> ISR´s die Arbeitsvariablen Pushen und am ende wieder "poppen".
>
> Beim C18 scheint dies ja automatisch zu gehen, ist darauf wirklich
> verlass?

Darauf kannst du dich im Allgemeinen verlassen. Wenn dem nicht so wäre, 
hätte das schon jemand anderer bemerkt.

Du wirst halt noch einen Bug im Programm haben.
Gast #1420490
Lesenswert?

Hi, danke schonmal.

nochmal zwei fragen dazu:

Müßte die Option: "Stack Overflow Reset" nicht einen Reset auslösen?
Die habe ich nämlich an, daher denke ich ich habe einen anderen 
Programmierfehler.

Kann ich irgendwie mit dem ICD2 sehen, wann ich eine Variable ändert?
(Ohne Einzelschritt-Debuging)

Gruß stefan
Gast #1420550
Lesenswert?

HI,

der PIC macht aber beim Absturz selbst kein Reset - er kommt wiegesagt 
nur in einen Bereich in den er nicht soll.
Da er keinen Reset macht, nehme ich an, dass er keinen "Stack Overflow" 
oder Undeflow hat.

Gruß

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