Fehlerhaftes RET (msp430)

Gast #511280
Lesenswert?
• ▲
▼
moinsen,

ich sitz grad vor IAR und kuck blöd aus der wäsche:

Ich habe ein Unterprogramm, welches ich aus einem Sensor ins RAM des 
1611 kopiere und dann ausführe.

von dort aus rufe ich per "call &0x4010" ein Unterprogramm im Flash auf 
(habe über eine Tabelle an dieser adresse stehen, wo das UP liegt).
Das funktioniert auch wunderbar, und das UP löppt.

ABER:
nun kommt am ende des UPs RET, und die kiste springt eben nicht an die 
Adresse, auf die der SP zeigt, sondern unnachvollziehbar an 0x0000
seltsamerweise wird dabei aber der wert der auf dem stack steht um 6 
erhöht.

Hat irgendjemand den effekt schon mal beobachtet?
Gast #511292
Lesenswert?
• ▲
▼
hab mal kurzerhand 4 screenshots gemacht:
einer vor dem Aufruf des UPs aus dem Ram, einer direkt danach, einer vor 
dem RET (bei mir steht testweise mov @SP+, PC , aber das macht ja genau 
das gleich (und produziert auch den gleichen fehler...die ruitine wird 
übrigens vorher schon einige male fehlerfrei aufgerufen...fehler 
passiert nur bei nem programmaufruf aus dem RAM)
Angehängte Dateien:
Gast #511319
Lesenswert?
• ▲
▼
Hat sich erledigt.
das ganze war ein debugfehler:
IAR (und alle anderen debuger) kann logischerweise keine 
debuginformationen in code einfügern, der von woanders kommt.
Daher wird der code im ram zwar ausgeführt, die ausführung aber nich 
angezeigt.
In meinem Fall war nich der RET das Problem, sondern die Adresse des 
folgenden Calls. da hab ich mich vertippt, und er is wie gewünscht an 
die Adresse 0x0000 gesprungen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.