Forum: Mikrocontroller und Digitale Elektronik MSP430: Beschreiben des Information Memory mit IAR


von Eric (Gast)


Lesenswert?

Hallo!

Ist es irgendwie mit IAR oder zumindest dem Debugger MSP-FET430UIF 
irgendwie möglich eine Seriennummer, ID, Typenbezeichnung,... in den 
"Information Memory" (Segment B, im A stecken beim MSP430F2410 ja 
irgendwelche CAL-Daten) des MSP zu flashen?

Danke für die Antworten.

Gruß
Eric

von Eric (Gast)


Lesenswert?

Hallo!

Kann mir keiner helfen, oder zumindest einen Tipp geben?

Gruß
Eric

von Frank K. (fchk)


Lesenswert?

Versuchs mal mit

#pragma location=0x1000 // oder wo das Info-Segment bei Dir gerade liegt
const char var=42;

bzw
const char var=42 @0x1000;

Dass dort nur Consts liegen dürfen, sollte klar sein.

Am besten bastelst Du Dir eine struct, die alle Informationen enthält 
und positionierst sie mit einer der beiden Methoden an die gewünschte 
Stelle.

fchk

von Christian R. (supachris)


Lesenswert?

Klar geht das. Einfach ein const Feld da ablegen und flashen. Mit mspgcc 
geht das sogra, ohne den Main Memory zu löschen. Mit IAR sicher auch.

von Jörg S. (joerg-s)


Lesenswert?

Ich vermute das er die Daten wohl eher beim Programmieren und nicht beim 
kompilieren festlegen will.

von ACS (Gast)


Lesenswert?

Schau dir mal Lite FET-Pro430 von elprotronic an damit kann man jeden 
beliebigen speicher flashen
Link: http://www.elprotronic.com/download.html

die freie version reicht dafür vollig aus

gruß

Arne

von Eric (Gast)


Lesenswert?

Erstmal danke für die Antworten.

Jörg S. schrieb:
> Ich vermute das er die Daten wohl eher beim Programmieren und nicht beim
> kompilieren festlegen will.

Ja genau. Das hätte ich vielleicht dazu schreiben sollen.
Den Code habe ich auch schon auf der Seite von IAR gefunden.
Entschuldigung für die ungenaue Formulierung.

ACS schrieb:
> Schau dir mal Lite FET-Pro430 von elprotronic an damit kann man jeden
> beliebigen speicher flashen
> Link: http://www.elprotronic.com/download.html
>
> die freie version reicht dafür vollig aus

Danke für den Tipp. Werde ich morgen gleich mal probieren...

von Eric (Gast)


Lesenswert?

Hm.
Dieses Tool FET-Pro430 von elprotronic scheint doch nicht die Lösung zu 
sein. Oder ich bin zu blöd und komme damit nicht zurecht. Es bietet eine 
Option zum automatischen Serialisieren, also durchnummerieren von 
geflashten Modulen, aber nur in der kostenpflichtigen Variante.
Ansonsten habe ich keine Option gefunden Werte direkt und einzeln in den 
Information Memory des MSP zu schreiben.

von Stefan (Gast)


Lesenswert?

Werte bereits beim Programmieren (also bei der Programmerstellung) 
festzulegen (d.h. Konstanten zu definieren) und fortlaufende 
Seriennummern zu vergeben schließt sich gegenseitig aus!
Du musst mal überlegen, was genau Du eigentlich willst.

Hast Du Zugriff auf Dein Modul, z.B. per serieller Schnittstelle?
Dann kannst Du die entsprechenden Daten auch nach dem Programmieren 
(Flashen) reinprügeln.

Ansonsten bleibt Dir nur die Vollversion von elprotronic zu kaufen.

von Eric (Gast)


Lesenswert?

Stefan schrieb:
> Werte bereits beim Programmieren (also bei der Programmerstellung)
> festzulegen (d.h. Konstanten zu definieren) und fortlaufende
> Seriennummern zu vergeben schließt sich gegenseitig aus!

Das ist mir bewusst.

> Du musst mal überlegen, was genau Du eigentlich willst.

Das weiß ich, nur scheine ich es euch nicht verständlich mitzuteilen.

Stefan schrieb:
> Hast Du Zugriff auf Dein Modul, z.B. per serieller Schnittstelle?
> Dann kannst Du die entsprechenden Daten auch nach dem Programmieren
> (Flashen) reinprügeln.

Meinst du jetzt mit dem Debugger direkt in den Flash schreiben? - Genau 
das möchte ich doch.

Oder im Programm-Code eine Funktion vorsieht, die einen Befehl, der von 
"extern" kommt dementsprechend ausführt und die Werte in das Flash 
schreibt? - Den dazu erforderlichen Code findet man in den Beispielen 
von Ti, aber das ist nicht das was ich will und brauche ...

von Christian R. (supachris)


Lesenswert?

Am besten verwendest du den mspgcc. Da ist (beim mspgcc 3) ein 
Konsolenprogramm msp430-jtag dabei.

Damit kannst du den Info-Flash einzeln löschen und beschreiben. 
msp430-jtag --help liefert die passenden Kommandos.
--eraseinfo wäre das passende für dich. Dann musst du nur noch eine 
ti-txt oder intel hex datei erstellen mit deinem Flash Inhalt, der da 
rein soll. Lässt sich ja dank Kommandozeile dann alles automatisieren.

von Stefan (Gast)


Lesenswert?

Christian R. schrieb:
> Am besten verwendest du den mspgcc. Da ist (beim mspgcc 3) ein
> Konsolenprogramm msp430-jtag dabei.

Das Gleiche geht doch auch mit IAR (CSpybat.exe)...?!

Das eigentliche Problem ist doch das Serialisieren!
Alle anderen Daten (ID, Typ, usw.) bleiben doch gleich und können 
"stinknormal" mit dem Programm geflasht werden!
Und beim automatisierten Serialisieren hilft die Kommandozeile auch 
nicht unbedingt weiter.

Für "Hobbyzwecke" wird man wohl eh' keine Seriennummmer vergeben.
Das das also vermutlich kommerziell ist, warum dann nicht einfach z.B. 
die Vollversion von elprotronic kaufen ?

von Christian R. (supachris)


Lesenswert?

Wo ist da das Problem? Das Flash-File kann doch nur den Inhalt für den 
INFO-Flash beinhalten, das lässt sich sehr leicht mit echo in die Datei 
schreiben. Hab ich auch schon so gemacht (Seriennummer, RF-Adresse, 
PAN-Nummer, RF-Channel für IEEE802.15.4). Die Daten einfach in eine 
ti-txt Datei und dann nur den info-Flash beschreiben. Klappt wunderbar. 
Mit IAR selber gehts bestimmt auch, ich arbeite mit mspgcc, da gehts auf 
jeden Fall mit dem msp430-jtag.

von Stefan (Gast)


Lesenswert?

...man kann auch für jede S/N ein neues txt-File schreiben...
Wo bleibt da der Automatismus?

von Eric (Gast)


Lesenswert?

Hallo!

Hab das mit dem ti-Textfile probiert. Das funktioniert wunderbar.
Hab mich nur gewundert, warum beim flashen einer neuen Firmware-Version 
alle Infos verloren gegangen sind, aber daran das in IAR eingestellt 
war, das sowohl der Main Memory, als auch der information Memory 
gelöscht werden soll (Projekt Optionen -> FET Debugger -> Download -> 
Flash Erase).

Das ist aber IMHO nur eine Behelfslösung, da man für jedes Bord eine 
neue ti-txt Datei benötigt....

Des Wegen stellt sich mir gleich eine neue Frage, die ich aber in einen 
eigenen Beitrag gepackt habe: 
Beitrag "Eigene Flash-Software auf Basis des MSP-FET430UIF Debugger"

Danke euch allen noch mal für eure Unterstützung.

Viele Grüße
Eric

von Stefan (Gast)


Lesenswert?

Bleibt immer noch die Frage offen, um welche Stückzahlen es sich hier 
handelt, so dass sich eine Flash-Software-Eigenentwicklung gegenüber 
einer bereits verfügbaren Kauflösung überhaupt lohnt ?!

von Eric (Gast)


Lesenswert?

Momentan ist es nur Musterbau.
Also eine Handvoll. Da lohnt sich eigentlich weder das eine, noch das 
andere.
Da kann man das mit dem ti-txt manuell durchführen.

Warum ich nach der Entwicklung eines eigenen Tools frage:
Nun, dass liegt vermutlich an meinem Softwareentwicklerherz ... :)

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.