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
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
ich verwende den, welcher sich im MSP420F1611 befindet. Die hab ich auch schon ausprobiert, aber sie erkennt mein Textfile irgendwie nicht...
Eventuell muss TST oder Reset invertiert werden, kann man bei MSPFET einstellen. Musst du mal bissl an den Einstellungen probieren.
ich denke aber nicht, dass das problem am programm liegt, welches ich verwende, sondern daran, was ich übermittle oder eben nicht übermittle...
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.
Die Einstellungen für den F1611 mit USB Serial Port über FT232R im MSPFET.
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
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?
Ich benutze Scite. Das bedeutet also, dass die Befehle für den BSL schon irgendwo im Scite implementiert sind? Kann mann die irgendwie anschauen?
Scite ist doch nur ein Editor, oder? Irgend einen Kompiler musst du doch auch benutzen, einen Linker und einen Makefile Builder usw.?
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.
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.
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!
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.
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...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.