Forum: Mikrocontroller und Digitale Elektronik MSP430 Information Memory - Nicht leer!


von Juergen P. (optronik)


Lesenswert?

Hallo,

ich spiele gerade etwas mit dem MSP430G2553 herum, unter anderem auch 
Flash Programmierung. Der Controller hat 4 Segmente deklariert als 
Information Memory. Davon ist Segment A laut Datenblatt mit 
Kalibrationswerten befüllt und sollte nicht gelöscht werden. Soweit ok, 
die Adressen 0x10C0 bis 0x10FF sind in der Tat mit Daten gefüllt.
Was mich jedoch etwas sorgt ist dass ab Adresse 0x1000 auch Daten 
stehen. Eben habe ich einen neuen&unbenutzten uC in meine Schaltung 
gesteckt. Auch hier ist Segment D, ab Adresse 0x1000 mit einigen Bytes 
beschrieben.

Frage: kann ich Segment D, Adresse 0x1000 - 0x103F beim MPS430G2553 
bedenkenlos benutzen, oder gefährde ich damit die Funktion des 
Controllers durch überschreiben von Kalibrationsdaten?

Danke!

von wv (Gast)


Lesenswert?

Hallo Juergen,

die Kalibrierungsdaten stehen immer im Segment A, so stehts auch in 
allen Datenblättern von TI, deswegen wird auch dieses Segment von einem 
zusätzlichen Lockbit geschützt. Über die anderen Segmente kannst Du frei 
verfügen. Ich hab's selber noch nie erlebt, das da was drinsteht, 
möglicherweise war das ein Chip aus dem Launchpad, wo von TI ein 
Beispielprogramm drauf war. Die Infosegmente werden beim Aufspielen 
eines anderen Programms, wenn man die Defaulteinstellungen vom CCS 
benutzt auch nicht gelöscht.

Gruß wv

von Max G. (l0wside) Benutzerseite


Lesenswert?

Juergen P. schrieb:
> Frage: kann ich Segment D, Adresse 0x1000 - 0x103F beim MPS430G2553
> bedenkenlos benutzen, oder gefährde ich damit die Funktion des
> Controllers durch überschreiben von Kalibrationsdaten?

Ich kann nur von der MSP430F5xxx-Reihe sprechen, dürfte bei deinem aber 
ähnlich sein:
Der MSP430 vergibt die Adressen so, dass das Flash immer bei 0xFFFF 
endet (im obersten Bereich steht dann die Interrupt Vector Table).

Ab 0x1000 ist bei mir der BSL. Den kann man regulär gar nicht schreiben, 
das muss erst entsprechend freigeschaltet werden.


Das alles sollte aber im Datenblatt (ggf. auch im Family User´s Guide) 
stehen.

Max

von Juergen P. (optronik)


Lesenswert?

Danke für die Rückmeldungen. Es ist in der Tat so dass Kalibrationswerte 
nur im Segment A stehen und auch gegen Überschreiben gesichert sind.

Es ist auch korrekt dass CCS beim Programmieren des uC das Info-Memory 
nicht überschreibt.

Die Memory Map des G2553 zeigt ganz klar dass Adressbereich 
0x1000-0x10FF Information Memory sind und kein BSL.

Ich habe das fragliche Segment gelöscht, Auswirkungen sind nicht 
ersichtlich, das Segment bleibt auch leer. Woher der Inhalt kam ist 
allerdings weiter fraglich.

von Dietmar S. (dsausw)


Lesenswert?

Hi Juergen,
Info-A ist mit password-protection.
TI nutzt aber bestimmte Flashbereiche bei
ihrem Endtest. Da kann schon einmal etwas
drinstehen.
Gruss
Dietmar

von Jürgen Wissenwasser (Gast)


Lesenswert?

Ich erlaube mir eine Korrektur hinsichtlich INFO_A und Kalibrierwerten:

Ich nutze den MSP430F5438A, der Info-Bereich geht von 1800h bis 19FFh,
die Device Descriptor Table beginnt zumindest dort NACH (!) dem 
Info-memory bei 1A00h und geht bis 1A90h.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Jürgen Wissenwasser schrieb:
> die Device Descriptor Table

Was für "Device Descriptoren" soll der 'F5438 haben?

von Clemens L. (c_l)


Angehängte Dateien:

Lesenswert?

Rufus Τ. F. schrieb:
> Was für "Device Descriptoren" soll der 'F5438 haben?

TLV

von every byte user (Gast)


Lesenswert?

Es ist doch nicht ungewöhnlich, dass sich mit einem neuen Chip die 
memory map ändert. Hilfreich ist ein Blick in das linker file, bzw. die 
Definitionen der Speicherbereiche der Toolchain. Dort kann man auch aus 
nicht benötigtem Info-Mem 'Standard-Flash' machen. ;-)

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.