Hallo, meine Frage kurz und knapp: Gibt es einen fertigen MSP430 Bootloader Sourcecode der über UART funktionert(Uart einstellbar). Im Internet werde ich leider nicht fündig, bzw. verwende vielleicht die falschen Suchbegriffe!
Du meinst sowas wie bslsh? http://llg.cubic.org/dmx43/bslsh.html Wenn nicht, dann erkläre bitte genauer, was du möchtest. Viele Grüße
Also ich suche einen SW-Bootloader, welcher über RS232 funktionert, nicht BSL,... sondern den ich ohne Hardwareveränderung verwenden kann. Z.B: Sende ich bei Neustart einen gewissen String erkennt der µC, dass jetzt ein HEXFile folgt und spielt mir das Programm in den Flash,.. Nach einem Reset startet das "richtige" Programm. Für PIC's und AVR's gibt es sowas ja schon nur für den MSP430 werd ich nicht fündig.
Achso. Sowas kenne ich nicht, denn das gibt es ja schon im ROM. Ich weiß nicht, ob sich da noch jemand die Mühe gemacht hat, einen in Software zu implementieren.
> Also ich suche einen SW-Bootloader, welcher über RS232 funktionert, > nicht BSL,... In den MSP430x2xx µC ist vom Werk aus ein Bootloader für UART drin. Es gibt Artikel im Netz z.B. von IAR, die den Hardwareanschluss (2 Widerstände und zwei Drahtbrücken zusätzlich zum RS232-TTL-Pegelwandler) beschreiben und das PC seitige Protokoll bzw. Bezugequellen für die PC Software. Die TI Nomenklatur ist Bootstrap Loader und weil am µC die RST/NMI und die TEST Pins kontrolliert werden müssen, brauchst du eine 4(5)-Draht serielle Verbindung, d.h. RX&TX und z.B. die Hardware-Handshake-Leitungen DTR&RTS. Essentiell finde ich hier die Appnote SLAA096B. In der Appnote ist die C Source eines BSL drin. Damit steht einem frei, das nach eigenem Geschmack und für seinen µC abzuändern. Der Schlüssel ist, wie man den Bootloader zum Bootloaden überredet. Die dafür von der Hardware aus vorgesehene Methode sind bestimmte Pegel an RST/NMI und die TEST Pins. Die Hardware aus der Appnote ist bloss etwas umfangreicher, weil ein Adapter für µC mit und ohne TEST pin implementiert wird, die sich auch noch aus der RS232 mit Spannung versorgt. Wenn man beides auf seinem Board nicht braucht, wird die "Zusatzschaltung" einfacher. Eine andere Variante hat LukasRiedel am 17. Juni 2009 im TI Forum für den MSP430F2132 umrissen. Er splittet seine Anwendung in mehrere Memory-Sektionen. Eine für den Anwendungsabschnitt (.text) und eine für den Bootloaderabschnitt (.boot) (und eine .tabulka möglicherweise für Flashdaten). Beim Reset wird zunächst der Bootloaderabschnitt aktiv und der Anwendungsabschnitt kann umprogrammiert werden. Die Voraussetzung dafür ist, dass man in der Lage ist seine Anwendung so zu übersetzen, dass Anwendungsabschnitt in den Bootloaderabschnitt voneinander unabhängig sind. Wenn der Bootloaderabschnitt den Anwendungsabschnitt umprogrammiert, können keine Funktionen oder Daten daraus verwendet werden. Lukas arbeitet in Assembler. Anm.: Um einen Reset aus der laufenden Anwendung heraus auszulösen wird bei vielen µCs der Watchdog benutzt.
Das Thema ist anscheinend schon älter. Aber ich habe einen Bootloader mit Uart Interface in C geschrieben. Der Bootloader benötigt ca. 2 kByte und ein Info-Segment. Falls jmd Interesse hat, soll er sich einfach melden. Ich kann ihm dann die Sourcen zukommen lassen.
Alex H. schrieb: > Falls jmd > Interesse hat, soll er sich einfach melden. Ich kann ihm dann die > Sourcen zukommen lassen. Stell deine Infos doch hier ins MSP430 Wiki. Dann haben alle etwas davon.
Hallo, ich würde mir das auf jedenfall auchmal ansehen. Ich hab noch nie mit eienm Bootloader für MSP430 gearbeitet, bisher alles mit JTAG reingeschrieben was ich wollte. Allerdings gibt es auch ein Tool um per RS232 code reinzuschreiben, eben den bootstrap loader, leider funktioniert das mitgelieferte exe-tool nicht mit meinem Win ultimate, und bisher hatte ich keine Zeit und Lust mich zu kümmern, und auch kaum Bedarf.
Ich würde den Bootloader mit Uart Interface auch ins Wiki stellen aber ich weiß nicht, wie das geht. Source Code und Doku ist fertig. Also falls mir einer oder eine behilflich sein könnte, wäre ich dankbar! zur Info: Der Bootloader wurde auf einen MSP430G2553 implementiert. Damit möchte ich vorab sagen, was das Interrupt Handling angeht, gibt es gewiss bei größeren MSP430 bessere Möglichkeiten. Aber der Kleine unterstützt keine RAM - Interrupt - Vektor - Tabelle. Gruß Alex
Alex H. schrieb: > Ich würde den Bootloader mit Uart Interface auch ins Wiki stellen aber > ich weiß nicht, wie das geht. Drück auf http://www.mikrocontroller.net/wikisoftware/index.php?title=MSP430&action=edit§ion=3 und schreib drauf los.
Hi Leute, der Beitrag ist zwar schon etwas älter aber ich beschäftige mich gerade mit dem Bootloader des MSP430F5. Ich möchte ein Firmwareupdate über die RS232-Schnittstelle realisieren. Mittels Reset und Test Pin komme ich scheinbar in den Bootloader. In der Anleitung SLAU319M steht, dass man am Anfang eine 0x80 senden soll und als Anwtwort 0x90 bekommt. Die RS232 ist auf 9600,8,E,1 gesetzt ohne CR oder ähnliches. Mein Problem ist das ich keine Antwort auf die 0x80 bekomme. Erst wenn ich es dreimal sende bekomme ich eine 0x54 was laut Anleitung folgendes Bedeutet: Packet size exceeds buffer. The packet size given is too big for the RX buffer. Kann mir da jemand helfen?
Hi Andeas und Community, ich habe damals einen proprietären Bootloader für den MSP430G5 geschrieben... Falls hier noch Interesse besteht, wie für diese Familie ein Bootloader mit UART-Schnittstelle geschrieben wird, dann kann ich meinen immer noch gerne online stellen (wenn der von TI nicht ausreichen sollte). Lieben Gruß Alexander
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.