Forum: Mikrocontroller und Digitale Elektronik MSP430: CCS - Frage zu Info-memory Access


von Mobis (Gast)


Lesenswert?

Vielleicht für Experten eine dumme Frage, aber ich bin erstmalig auf 
folgendes Problem mit dem TI CCS Compiler gestoßen.

Ich benutze das Information Memory Sement_D für paar fixe Werte. Diese 
Werte können aber per Kommando via serieller Schnittstelle aber geändert 
werden.

Das klappt auch soweit mit dem Initialwert. Wird jetzt allerdings der 
Wert verändert, geht die Benutzung des neuen Wertes schief. Im IM wird 
der Wert zwar verändert, aber es wird nach wie vor der alte Wert 
verwendet.

Wie im Bild zu sehen, wird die Konstante nicht aus dem Information 
Memory geladen, sondern als fixer Wert aus dem Code heraus. Wobei der 
Initialwert 0xFF war, der veränderte Wert im IM ist jetzt aber 0x00. Das 
Bild zeigt das Laden der Variablen uc_l_x mit dem Wert aus dem 
Information Memory (sollt 0x00 sein, so war es jedenfalls geplant).

Hoffe ich konnte mein Problem klar darlegen.
Was mache ich da falsch? Kann mir bitte jemand helfen beim Beheben des 
Problems?

Vielen Dank

von Mobis (Gast)


Angehängte Dateien:

Lesenswert?

SRI falsches Bild

von Kai B. (kaib) Benutzerseite


Lesenswert?

Das Problem hört sich nach einer typischen Optimierung von const Werten 
an.
Ist die Variable zusätzlich als volatile gekennzeichnet?
Bei so Sachen die auf feste Speicheradressen Zeigen sieht man dann gerne 
so const volatile Konstrukte.

von Mobis (Gast)


Lesenswert?

Kai B. schrieb:
>..... sieht man dann gerne so const volatile Konstrukte.

Vielen Dank, das ist die Lösung!

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.