Hallo, Ich möchte gerne für mein Projekt, ein fixes Programm haben(wo Sensoren mit Sensoren kommuniziert wird) und ein 2 Programm, dass lediglich die ID meiner Hardware hat und eine festgelegte Zeit. Ist es möglich nachtragend z.B. in INFO Pages(INFO_A, INFO_B,...) zu schreiben??? Wenn Ja wie funktioniert es, wie soll das Programm dann aussehen und wie die Einstellungen fürs Flashen. Ich verwende den MSP430 mit Code Composer Studio bzw. FET-Pro430 zum flashen. Irgendjemand welche Ideen? Danke vorab!!
Christof123 schrieb: > Ist es möglich nachtragend z.B. in INFO Pages(INFO_A, INFO_B,...) zu > schreiben??? Ja. > wie funktioniert es, wie soll das Programm dann aussehen und wie > die Einstellungen fürs Flashen. Das steht im User's Guide. Womit konkret hast du Probleme?
Probleme habe ich dabei wie das Programm aussehen soll, dass Daten in den Flash schreibt. Es sollte eigentlich keine main() funktion haben sonst würde ich diese ja mit der vorigen überschreiben. Also konkret, wie ich daten in den Flash schreibe ohne eine main() funktion zu verwenden.
Christof123 schrieb: > Es sollte eigentlich keine main() funktion haben sonst würde ich diese > ja mit der vorigen überschreiben. Das klingt merkwürdig.
Christof123 schrieb: > Also konkret, wie ich daten in den Flash schreibe ohne eine main() > funktion zu verwenden. Jeder Debugger sollte das können. (Unter Linux verwende ich mspdebug.) Allerdings geht das nicht ohne Löschen des gesamten Segments.
:
Bearbeitet durch User
sollen die Daten beim Flashen des Programms fest eingetragen werden oder sollen die Daten später nachgetragen oder vielleicht auch später noch änderbar sein? Gruß wv
wv schrieb: > sollen die Daten beim Flashen des Programms fest eingetragen werden oder > sollen die Daten später nachgetragen oder vielleicht auch später noch > änderbar sein? Die Daten sollen später nachgetragen werden bzw. auch später änderbar sein
Christof123 schrieb: > Die Daten sollen später nachgetragen werden bzw. auch später änderbar > sein dann wäre die nächste Frage, wie die Daten dahin gelangen sollen. Eine Möglichkeit wäre, dafür den UART zu nutzen, und über UART/RS232/USBComport und einem Termialprogramm was zu machen. Also auf der µC-Seite eine Funktion, die auf dem uart lauscht, ein selbstgestricktes Protokoll mit ein paar Befehlen und man wirft auf dem PC ein Terminalprogramm an und gibt dort die Daten ein. Eine weitere Möglichkeit wäre, die ohnehin vorhandene Debug-Schnittstelle (SBW oder JTAG) zu benutzen. Allerdings braucht man dann zwingend den Programmieradapter zum Eintragen der Daten, dafür aber keine weitere Schnittstelle. Das geht dann aber nicht mehr mit einem üblichen Terminalprogramm, da muß man dann auf dem PC selbst was basteln, um durch die Debug-Schnittstelle ins Flash zu schreiben. Ist etwas komplizierter, es ist aber alles notwendige bei TI ausreichend dokumentiert. Gruß wv
Kannst du mir einen Link schicken, habe leider noch Nichts gefunden. Suche eine Möglichkeit via JTAG Schnittstelle nur die Info Pages mit Daten zu befallen ohne die main() Funktion zu überschreiben! Verwende CCS 6 und den CC430F5137(MSP430)
holst du dir bei elprotronic das Programm FET-Pro-430 Software Pkg. - LITE. Damit kannst du ausserhalb von CCS mit dem fetpro in deinem MSP-Speicher schreiben
Ich habe es gerade mal mit dem MSP Flasher - Command Line Programmer von ti und einem MSP430 Launchpad (MSP-EXP430G2 mit MSP430G2231) getestet. Zuerst habe ich sicherheitshalber mit MSP430Flasher.exe -r [INFO_orig.txt,INFO] den Inhalt des INFO Segmentes ausgelesen und im TI-txt Format gespeichert.
1 | @1000 |
2 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
3 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
4 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
5 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
6 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
7 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
8 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
9 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
10 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
11 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
12 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
13 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
14 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
15 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
16 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
17 | FF FF FF FF CB 8E 1B 8E 76 8F 79 8E 6C 8D 1E 87 |
18 | q |
Die Datei habe ich als Vorlage fpr meine eigene INFO.txt genutzt
1 | @1000 |
2 | 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
3 | 01 00 |
4 | q |
und diese mit MSP430Flasher.exe -e ERASE_SEGMENT -w INFO.txt geschrieben. Ein erneutes Auslesen mit MSP430Flasher.exe -r [INFO.txt,INFO] zeigte folgenden Inhalt:
1 | @1000 |
2 | 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
3 | 01 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
4 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
5 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
6 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
7 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
8 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
9 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
10 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
11 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
12 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
13 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
14 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
15 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
16 | FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |
17 | FF FF FF FF CB 8E 1B 8E 76 8F 79 8E 6C 8D 1E 87 |
18 | q |
INFOA und auch der MAIN Speicher bleiben unverändert. Das Schreiben funktioniert solange die zu speichernden Daten nicht bis den INFOA Bereich (die untersten 4 Zeilen) hineinreichen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.