Hallo,
Soweit ich weis gibt es drei Konzepte wie man mit ein Firmareupdate an
einem MSP430 realisieren kann.
- SPY-BI-WIRE
- ISP - In Cirtuit Programming
- Und Mittels Bootloader
Nun habe ich eine schaltung vorliegen (Demoborad von TI), bei dem ein
Firmwareupgrade Via SPY-BI-Wire stattfindet. Solange ich USB ranhänge
und den Code Composer benutze kann ich das Target via Bi-Wire flashen.
--USB--------[ PROGRAMM-uc von TI ]-------BI_WIRE------[TARGET-uc]
Nun möchte ich aber mehrere Programme auf dem "Programm-uc von TI"
speichern. Mein problem ist nur, das ich den Speziellen Codeteil welcher
das minimalistische JTAG erzeugt, im SDK nicht vorhanden ist.
Also das ihr mich richtig versteht ich möchte den Programm-uc ohne den
Host-PC mit codecomposer nutzen. Die vom Code-composer erzeugten
binaries sollen im PROGRAMM-uc gespielt sein, sodass zu gegebener Zeit
das target via BI-WIRE geflsht werden kann.
Besten Gruß
rennreh schrieb:> Die vom Code-composer erzeugten binaries sollen im PROGRAMM-uc gespielt> sein, sodass zu gegebener Zeit das target via BI-WIRE geflsht werden> kann.
Übersetz das mal ins Englische, vielleicht versteht man ja dann, was Du
willst.
Was soll der "Programm-uc" sein?
Ok kein problem:
schaut euch das develkit mal an:
http://users.ece.utexas.edu/~valvano/EE345L/Labs/Fall2011/eZ430-F2013%20Development%20Tool.pdf
Das Teil mit USB ist der das Modul welches ich als "programm-uc"
bezeichnet habe und der andere teil ist das target (msp430). Beide Parts
sind durch SPY-BI-Wire zusammengesteckt.
So, der weg ist nun, das man code composer nimmt, eine anwendung
programmiert und diese auf dem target flasht.
Für meinen Anwendungszeck (den ich nicht genannt habe) suche ich nach
einer möglichkeit, dass vom codecomposer erzeugte bin z.b. im
"programm-uc" abzulegen, da ich durch einen bestimmten zeitpunkt dieses
programm auf das target bringen möchte. das ganze soll funktionieren,
ohne das ich das board an einem pc hänge (5v am usb vorrausgesetzt).
Mein problem ist nur, dieses SPY-BI-WIRE interface. dies ist ja ein
minimalistisches JTAG, bei dem ich nichts im SDK von ti gefunden habe.
Ich suche nach einer möglichkeit, ein codeschnippsel oder so, mit dem
man die bins die im flash des programmers sind (die ich ja durch
irgendeine möglichkeit reingelegt habe) ins target zu bekommen ...
Aha. Du willst also den SBW-Adapter mit eigener Firmware versehen.
Das war Deinem ersten Beitrag definitiv nicht zu entnehmen. Zwar habe
ich eine sogar frisch polierte Glaskugel, aber auch die war hier völlig
ratlos.
Es gibt von TI eine Appnote, die ziemlich genau das beschreibt, was Du
vorhast, nur nicht mit dem 'F1611, der auf dem SBW-Interface des EZ430
drauf ist (und auch auf dem bekannteren Launchpad), sondern mit einem
mit deutlich mehr Flash-ROM ausgestatteten 'F5438.
http://www-s.ti.com/sc/techlit/slau320
Software, Schaltpläne etc. dazu gibt es hier:
http://www.elprotronic.com/rep430f.html
Also ich sag nur eins:
das wird ein grausamer Hack, alleine die JTAG Schnittstelle des F1611
anzuzapfen, um die neue FW zu flashen wird eine zirkusreife
Angelegenheit sein.
Hallo
mit dem MSP430-JTAG-ISO-MK2 Adapter von Olimex sollte das gehen. Du
kannst das Programm im Speicher des Adapters ablegen und später, ohne
PC, in den Ziel-Prozessor programmieren.
Clowny schrieb:> alleine die JTAG Schnittstelle des F1611 anzuzapfen, um die neue FW zu> flashen wird eine zirkusreife Angelegenheit sein.
Nö. TI veröffentlicht die Schaltpläne der verschiedenen
Programmieradapter, und so auch den des MSP-eZ430U; der ist in SLAU176d
zu finden.
Das JTAG-Interface des 'F1611 ist auf ein paar Testpunkte (TP1-TP7)
gelegt.
Geil vielen dank rufus, das ist genau das wonach ich suche :)
Mal eine Frage gibt es denn auch ähnliche Konzepte von anderen
Kontrollertypen? Wie sieht es bei der ARM9 und Cortex Reihe aus?
Oh mir stellt sich gerade auch die Frage, wie das in der
Automobilindustrie abläuft oder bei dem Flugzeugbau.
Ich meine dort sind mehrere und vorallem unterschiedliche
Microcontroller verbaut worden. Dort wird sicher niemand mit hunderten
von Downloadkabeln durch die gegend laufen um jeden einzelnen Kontroller
zu flaschen. Das wird sicher über bussysteme realisiert.
Also ich kann mir vorstellen das man Baugleiche Controller wie z.b. der
MSP430F Reihe prima durch z.b. MSP430-JTAG-ISO-MK2 oder durch die von
rufos genannte Methode geflasht werden können.
Was ist aber wenn nicht gerade Baugleiche Controllertypen mit verbaut
wurden oder z.b. FPGA's. Bei FPGA´s ist es im prinzip ja einfach, da die
Konfiguration in irgendeinem EEPROM stehen und via spi reingespielt
werden, .. die konfigurationsdaten könnten genausogut auch aus einem
Controller stammen.
Kann jemand was dazu sagen wie das in der Automobilbranche/Flugzeugbau
gemacht wird?
Das Siemensmännchen hatte bei Inbetriebnahmen immer ein
Handkoffergrosses Programmiergerät dabei.
Wahrscheinlich weil sein Manager keine "Funds" für einen schicken
kleinen Dataman rausrücken wollte.