Forum: Mikrocontroller und Digitale Elektronik Bootloader in Reihe geschalteter ICs


von Boot (Gast)


Lesenswert?

Hallo,

ich habe noch keine Erfahrung mit Bootloadern aber ein Projekt im Auge.

Ich hätte mehrere 10 Controller in Reihe geschaltet und würde diese 
gerne alle an der selben UART-Leitung lauschen lassen.

Kann ich einen Bootloader verwenden, der quasi allen Controllern 
gleichzeitig ein neues Programm ein impft, oder würden dann die 
Controller während der Programmierung antworten, so dass ich in dem 
Falle ein mehrfaches Echo von mehreren Controllern auf der RxD Leitung 
zu erwarten hätte...?

Brauche ich noch weitere Signale außer RxD und TxD?

Verwendet werden soll ein MSP430F2132

von Stephan (Gast)


Lesenswert?

Hi
generell gesagt: Es geht. :-)

Aber, es kommt drauf an was du investieren kannst, an KnowHow und 
Bauteilen.
Mit einer einfachen UART kommst du nicht weit.
Und eine fertige Lösung wirst du auch nicht finden.

Ich habe damals zur Unterstützung der Produktion-Abteilung so etwas 
gebaut, MC war ein Sam7s mit RS485. Und für einen Kunden mit TMS320F28 
mit Ethernet, beide hatten genug Speicher um die Firmware aufzunehmen 
(Ext. Flash).

zum Anfang wurden die zu flashenden Devices in eine Liste eingetragen 
(PC Programm), dann per Telegramm auf der Datenleitung gesucht und in 
den Bootloader Modus versetzt.(hier noch direkte Kommunikation mit jedem 
Device einzeln) Die Firmware wurde dann in Blocks per 'Broadcast' + 1 
Prüfblock, an alle gesendet. Dann die Bestätigung der einzelnen Devices 
abgefragt und dann bis zum Ende durch geflasht.
Gültig wurde die neue Firmware aber erst, nach dem letzten erfolgreichen 
übermittelten Telegramm.

Ist schon etwas her, aber war ganz gut glaub ich, dem Kunden und der 
Produktion hat es gefallen. :-D

Wie mußt du deinen MC im Flash beschreiben? Word oder Byte oder Page 
weise? Bei 512 Byte Ram hast du ja nicht viel.
Wenn du eine Lösung hast, stell Sie mal bitte hier kurz vor(Text,kein 
Code).

von Clemens L. (c_l)


Lesenswert?

Das BSL-Protokoll von TI benutzt immer Antworten (siehe slau319).
Die benötigten Pins stehen im Datenblatt im Abschnitt "BSL".

Zum Mehrfach-Flashen müsstest dir einen eigenen BSL schreiben.

von DG5MPQ (Gast)


Lesenswert?

Hallo

am einfachsten du gibst jedem Bootloader gleich eine Adresse mit, der 
dann gezielt den einzelnen Chip ruft. (Veränderung des Magic Byte z.B. 
Erkennung für den Bootloader)

Den TXD Master  zu RXD Bus  Kann man alle Parallel hängen.
(Auf die Stärke achten gegebenenfalls einen Treiber setzen)

Den TXD Bus zu RXD Master muss als Open Collector ausgeführt werden.

Dies bedeutet, dass diese Leitung mit ca 1K Ohm Widerstand an 3,3 Volt 
hochgezogen werden muss.  ( Ruhe von TXD ist High)

Alle TX in den Bus Bausteinen müssen Disabled werden. Nur Ein Bus Slave 
darf sprechen und der schaltet dann seinen TXD aktiv. Wer sprechen darf, 
muss das Protokoll bestimmen, alle gleichzeitig geht nicht.

Wir haben hier viele solche Systeme am laufen


Gruß Thomas

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.