Forum: Mikrocontroller und Digitale Elektronik BSL Synchronization Error


von Selina H. (selina)


Lesenswert?

Hallo zusammen

Ich habe soeben eine Schaltung fertig gestellt, mit welcher ich meinen 
MSP430F1611 via RS232 ansteuern kann. Leider bringt Scite ständig die 
Fehlermeldung "Bootstrap loader synchronization error".
So habe ich die Application Note SLAU265 von TI studiert und da steht im 
Kapitel 3 etwas über die Synchronization Sequence:

"Before sending any command to the BSL, a synchronization character 
(SYNC) with its value of 80h must be sent to the BSL. This character is 
necessary to calculate all the essential internal parameters, 
whichmaintain UART and flash memory program/erase timings. It provides 
the BSL system time reference.
Once this is received, an acknowledge DATA_ACK = 90h is sent back by the 
BSL to confirm successful reception. This sequence must be done before 
every command that is sent to the BSL."

Ich habe mit dem KO nachgemessen und leider sehe ich auf den RxD/TxD 
bzw. TDI/TDO Leitungen, keine solche Signale, welche wie ein 80h bzw. 
90h aussehen. Die ersten Signale, welche der KO mir zeigt, sind drei 
aufeinanderfolgende Pulse, welche (invertiert) an den PC zurückgeschickt 
werden.

Meine Frage ist nun, ob jemand von euch auch schon ein ähnliches Problem 
gehabt hat und vielleicht einen Lösungsansatz hat.
Ausserdem frage ich mich, woher dieses Signal (80h) kommt. Muss ich das 
via Scite schicken oder macht es das von alleine, wenn ich im Makefile 
"download: download-bsl" drin hab?

Gruss und Danke

von Fabio S. (codehamster)


Lesenswert?

Was für einen BSL verwendest du?

versuch mal ProgBox von Synasys: 
http://www.synasys.de/download/exe/ProgBox_1.1_Beta_1_DE.exe

von Selina H. (selina)


Lesenswert?

ich verwende den, welcher sich im MSP420F1611 befindet.
Die hab ich auch schon ausprobiert, aber sie erkennt mein Textfile 
irgendwie nicht...

von codehamser (Gast)


Lesenswert?

oder alternativ:

http://kurt.on.ufanet.ru/

von Christian R. (supachris)


Lesenswert?

Eventuell muss TST oder Reset invertiert werden, kann man bei MSPFET 
einstellen. Musst du mal bissl an den Einstellungen probieren.

von Selina H. (selina)


Lesenswert?

ich denke aber nicht, dass das problem am programm liegt, welches ich 
verwende, sondern daran, was ich übermittle oder eben nicht 
übermittle...

von Christian R. (supachris)


Lesenswert?

Wieso sollte es dann nicht am Programm liegen? Das BSL-Programm 
generiert doch die 0x80 usw.
Benutze mal das MSPFET, das funktioniert definitiv mit dem F1611, hab 
ich hier über einen FT232R an USB laufen. Da muss man einfach das txt 
oder hex File laden und los gehts. Wenn das nicht klappt, ist deine 
Hardware falsch.

von Christian R. (supachris)


Angehängte Dateien:

Lesenswert?

Die Einstellungen für den F1611 mit USB Serial Port über FT232R im 
MSPFET.

von Selina H. (selina)


Lesenswert?

Braucht es für den BSL noch eine bestimmte Initialisierung?
Ich hab mir mal die Application SLAA096D angeguckt und die haben dort ne 
Menge Code, welche den BSL initialisiert, dort wird auch dieses 80h 
geschickt. Ich hab sowas nicht in meinem Code, das einzigste was ich 
hab, ist die Umstellung im Makefile von JTAG auf BSL.
Hat jemand von euch zufällig so eine Initialisierung, die ich benutzen 
könnte?

Danke

von Christian R. (supachris)


Lesenswert?

In deinem Code für den MSP430 musst du nix ändern. Alles, was den BSL 
betrifft, muss die entsprechende Programmiersoftware machen. Um in den 
BSL zu kommen, muss der Reset und das Test/TCK bedient werden. Das macht 
die BSL Programmier-Software über DTR und DSR der seriellen 
Schnittstelle. Welches Programm nutzt du zum Download per BSL? Das aus 
der MSPGCC Toolchain?

von Selina H. (selina)


Lesenswert?

Ich benutze Scite. Das bedeutet also, dass die Befehle für den BSL schon 
irgendwo im Scite implementiert sind? Kann mann die irgendwie anschauen?

von Christian R. (supachris)


Lesenswert?

Scite ist doch nur ein Editor, oder? Irgend einen Kompiler musst du doch 
auch benutzen, einen Linker und einen Makefile Builder usw.?

von Selina H. (selina)


Lesenswert?

Ja, Scite ist der Editor und im Hintergrund läuft GCC. Ein Makefile hab 
ich auch, nur bin ich mir nicht ganz sicher, ob die Einstellungen dort 
alle stimmen. Ich arbeite zum ersten Mal damit und in den Hilfen dazu 
fand ich keinen Befehl, der dieses Synchronisations Signal schickt.

von Christian R. (supachris)


Lesenswert?

Achso, na geht doch. Also das passende Programm ist dann msp430-bsl und 
befindet sich in c:\mspgcc\bin
Dem kannst du auch die Parameter für das Invertieren mitgeben, ebenso 
den entsprechenden COM-Port usw. Ob´s klappt, weiß ich nicht, ich hab 
immer mit dem MSPFET gearbeitet. Das solltest du erst mal probieren, eh 
du die 1000 Parameter des Kommandozeilen Tools ausprobierst. Also 
erstelle aus deinem ELF-File, was der Kompiler erzeugt hat ein TI-TXT 
oder Intel-HEX und versuch es über MSPFET in den MSP430 zu bekommen. 
Wenn das nicht klappt, ist an der Hardware was kaputt.

von Selina H. (selina)


Lesenswert?

Alles klar ich werds versuchen. Ich hab die Hardware gestern noch auf 
nem Steckbrett aufgebaut und der Fehler blieb bestehen. Ich frag mich 
echt, was ich hardwaremässig falsch gemacht hab.

Schönen Feierabend wünsch ich!

von Christian R. (supachris)


Angehängte Dateien:

Lesenswert?

So, ich habs mal mit dem GCC-BSL Tool getestet:

D:\MSP430\GCC\FMAS05A\Debug>msp430-bsl -c1 --invert-reset -p FMAS05A.hex
MSP430 Bootstrap Loader Version: 2.0
Invoking BSL...
Transmit default password ...
Current bootstrap loader version: 1.30 (Device ID: f112)
Adjust SP. Load PC with 0x0C22 ...
Transmit default password ...
Program ...
4560 bytes programmed.

Hast du eventuell TX und RX vertauscht an P1.1 und P2.2? Im Anhang 
nochmal die komplette Schaltung. Genau diese hab ich mit o.g. 
Einstellungen programmiert.

von Henning (Gast)


Angehängte Dateien:

Lesenswert?

hey,
möchte bei einem cc430f5137 über den ft232r den bsl nutzen. bekomme mit 
dem MSPFET-Tool leider einen "synchronization error". Das angehängte 
Bild zeigt ~DTR, ~RTS und TX seitens des FT232R. Als Funktion soll da 
"erase flash" abgebildet sein. Hat einer eine Idee? Ich freue mich über 
jede Hilfe!!!
Gruß

Henning

Ps. ich hab über 2-wire jtag den CC430 schon geflasht und über UART 
erfolgreich Daten empfangen und gesendet...

von Henning W. (Firma: privat) (_henning_)


Lesenswert?

so, ok... ka warum das mit mspfet nicht will...
ich denke der chip wird nicht unterstützt, obwohl er im prog gelistet 
wird. ist mir auch egal. mit mspdebug funktioniert es. --long password 
ist wohl noch wichtig. ärgerlich ist die verlorene zeit. -.- scheiß 
empfehlung...

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.