mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MSP430 flash


Autor: Gerald W. (geri2008)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Hab mal ne frage:
Kann ich eigentlich auch den flash eines msp430 (z.b. beim msp430f135) 
auch als datenspeicher und programmspeicher benützen. Ich meine, dass 
ich eine Routine schreibe, die mir 4 zahlen im Flash ablegt und bei 
einem Neustart dann wieder ausgibt.

Dann würd ich mir einen externen seriellen flash ersparen.

Hat das programm schon mal jemand gehabt bzw. gelöst?

mfg,Geri

Autor: Jörg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

im Dokument slau144d.pdf (www.ti.com/.../MSP430x2xx Family User's
Guide) wird in Kapitel 7 (Flash Memory Controller) beschrieben,
wie's geht: erst Block löschen, dann den Block beschreiben. Ich
weiss aber im Moment nicht, ob ein Schreibzugriffslimit existiert
(z.B. 100.000 mal wiederbeschreibbar).

Gruss

Jörg

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja klar geht das, Du musst nur eben eine Adresse wählen von der Du weiß, 
dass sie nach einspielen Deines Programms noch nicht belegt ist.
Ich meine der flashspeicher geht bei 0x4000 los (davor ist ram), wenn 
Deu prog nun 13k hat sind das 1024 x 13 = 3400hex + 4000h (vom RAM) = 
7400hex.

Das wäre dann die Höchste Adresse von Deinem Prog, da man beim msp nur 
512byte weise löschen kann, muss du eben darauf aufrunden. Ich würde 
zudem noch ein wenig Luft dazwischen legen damit noch platz für später 
ist!

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Kann ich eigentlich auch den flash eines msp430 (z.b. beim msp430f135)
>auch als datenspeicher...

Genau für sowas sind ja eigentlich die INFO-Flash Segmente gedacht. 
Diese haben gegenüber dem eigentlichen Programmspeicher-Flash kleinere 
Segmente, sind aber ansonsten völlig gleichwertig.
Andersherum gedacht ist es z.B. auch möglich ins INFO-Flash Teile des 
Programmcodes abzulegen.
Im Linkerfile können solche Zuordnungen vorgenommen werden, indem man 
dem Linker sagt, in welche Bereiche er Programmcode oder Daten ablegen 
soll!

Autor: Gerald W. (geri2008)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnellen Antworten.

Hab mir grad den User guid hergeholt und hab nun auch festgestellt, dass 
es da ja einen eigenen Info - Sektor gibt.

Werd das mal Programmieren. wenns klappt stell ich edn code dann in die 
codesammlung!

mfg, geri

Autor: Wolfgang-G (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es schon.
Im Anhang ein Beispielprogramm von TI.
Man sollte es auf seine Bedürfnisse noch abwandeln.

Autor: Nicco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mmmh, da hab ich jetzt ein Problem...

nehme ich die Speisung weg (sowohl externe Netzteil als USB (TI 
Ez430-RF2500) Anschlüsse weg), wird diese Information Memory gelöscht!

Ich arbeite mit IAR und beispiel Code für F2132 
(msp430x21x2_flashwrite_01.c)
In (Projects -> Options -> FET Debugger) hab ich die 3 "Flash erase 
option" verwendet, ohne Erfolg. (Bei "Erase Main and Information Memory" 
ohne Überraschung :) )

Mit konstante Supply hab ich folgendes:
Debug without download -> alles OK
Download & debug -> Segment C gelöscht, Segment D OK

Ohne konstante Supply:
Debug without download -> Segment C gelöscht, Segment D random Werte
Download & debug -> Segment C gelöscht, Segment D gelöscht

Was ist da Falsch? Der MSP430 hat eine speisung von 3.4V, den Code nehme 
ich mal an, ist korrekt. Die erwähnten Optionen sind die einzige die ich 
in Zusammenhang mit Flash memory gefunden habe...

bin ratlos! Danke für eure Hilfe!

Autor: Nicco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na, wieso liegt dieses Post nicht in der MSP430 "Abteilung" ?
Muss ich doch ein neues Beitrag machen?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es wäre sinnvoller, Du würdest Dein Problem mal verständlicher 
formulieren.
Anscheinend hat's bisher noch keiner kapiert (... ich auch nicht...) ! 
;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.