Nutzen von Bootloadern

Gast #4532633
Lesenswert?

Hallo

Ich bin ein Neuling was das Thema Mikrocontroller angeht und habe daher 
ein Anliegen:

Bisher habe ich immer mit meinem Arudino Uno experimentiert und somit 
auch über die Arduino IDE programmiert und die Sketche hochgeladen. 
Nachdem ich durch eine Überspannung meinen Atmega 328 p in die Knie 
gezwungen habe und ich mir daraufhin einen neuen jungfreulichen 
Mikrocontroller besorgt habe wurde ich das erste mal mit dem Thema 
Bootloader konfrontiert. Das dieser dazu da ist, um Programme in den 
Flash des Mikrocontrollers zu laden habe ich verstanden.

Meine Frage dazu ist nun, wann wird ein Bootloader wirklich benötigt, da 
mein Kumpel mit AVR-ISP Programmern seine Programme (mit Atmel Studio) 
hochläd und dazu keinen Bootloader braucht.

Also: Wann wird ein Bootloader wirklich gebraucht?

PS.: Beitrag "Wofür ist ein bootloader?" hier wird meine 
Frage nicht wirklich beantwortet!
Gast #4532641
Lesenswert?

Falls du Programme über eine spezielle Programmierschnittstelle und 
einem Programmieradapter lädst, benötigst du keinen Bootloader. Dieser 
wird benötigt, wenn das Programm über eine normale 
Kommunikationsschnittstelle (beispielsweiße UART oder SPI) geflasht 
werden soll
Gast #4532660
Lesenswert?

Hallo

für dich und irgendeinen anderen Bastler oder Entwickler der im Besitz 
eines funktionierenden Programmers ist ist ein Bootloader tatsächlich 
nur ein nettes Extra, also ein weiterer Weg den µC zu beschreiben.

Aber µC wurden ja nicht für Hobbyisten und Bastler entwickelt sondern 
letztendlich damit fertige Produkte beim Kunden Preiswerter und kleiner 
werden.
Nun hat der Kunde im allgemeinen keinen passenden Programmer um z.B. die 
Firmware neu zu flashen oder zu Updaten.
Was er aber "immer" hat ist eine "normale" Serielle Schnittstelle oder 
einen USB Anschluss.
Über diesen Anschluss kann der Kunde dann recht einfach, mittels eines 
kleinen Programms den µC flashen bzw. updaten und ist außerdem davor 
geschützt "böse" Parameter zu ändern (z.B. Fusues)

Das trotzdem teilweise ein ISP Header mit auf den fertigen 
Produktplatinen vorhanden ist liegt wohl an der einfacheren Produktion 
(den irgendwann muss ja die Firmware und der Bootloader aufgespielt 
werden).

Praktiker
Gast #4533007
Lesenswert?

> Über diesen Anschluss kann der Kunde dann recht einfach, mittels eines
> kleinen Programms den µC flashen bzw. updaten

Hoffentlich bleibt das zu kompliziert. Ich will Toaster, Kühlschrank, 
Waschmaschine... nicht updaten. Als Kunde will ich ein Gerät, was von 
Anfang an einwandfrei funktioniert.
(Firma: http://www.gyurma.de) #4533022
Lesenswert?

> Hoffentlich bleibt das zu kompliziert. Ich will Toaster, Kühlschrank,
> Waschmaschine... nicht updaten. Als Kunde will ich ein Gerät, was von
> Anfang an einwandfrei funktioniert.

Sowas gibt es nicht mehr. Alles was irgendwelche Controller und co 
beinhaltet hat irgendwelche blöden Macken.
Langsam kommts mir so vor, als wenn sogar hölzerne Türstopper sich gegen 
mich verschwört hätten.

Aber echt. Seit Speicher und Rechenzeit nicht mehr teuer ist, passt 
keiner mehr auf die Qualität seines Codes auf. Kein Mensch versteht mehr 
Assembler, um seinen Code zu optimieren.
Gast #4533027
Lesenswert?

Na aber kaum kommt mal ein neues Toastformat auf dem Markt bist du erste 
der sich beschwert warum du das mit deinen Toaster nicht bearbeiten 
kannst, und warum kann man das Mistding nicht darauf updaten?
:)
#4533038
Lesenswert?

Hallo,

Modern Toaster schrieb:
> Na aber kaum kommt mal ein neues Toastformat auf dem Markt bist du erste
> der sich beschwert warum du das mit deinen Toaster nicht bearbeiten
> kannst, und warum kann man das Mistding nicht darauf updaten?
> :)

halb so schlimm. Der Hersteller wird Dir ein günstiges Upgrade-Angebot 
auf das neue Modell machen: 10% Preisnachlaß auf das neue Modell bei 
Rückgabe Deines 3 Monate alten Toasters.

Und schon kannst Du auch die neuen runden Toastbrote mit dem DSDS-Logo 
verbrennen äh... verzieren.

Gruß aus Berlin
Michael
#4533443
Lesenswert?

Modern Toaster schrieb:
> Na aber kaum kommt mal ein neues Toastformat auf dem Markt bist du erste
> der sich beschwert warum du das mit deinen Toaster nicht bearbeiten
> kannst, und warum kann man das Mistding nicht darauf updaten?
> :)

Daran ändert eine Update-Funktion ja auch selten etwas. Wenn das neue 
Toastformat kommt, kommt dann doch ein neues Gerät statt ein Update für 
das alte.
Gast #4534392
Lesenswert?

Tekki-Amateur schrieb:
> Also: Wann wird ein Bootloader wirklich gebraucht?

Eigentlich ist diese Frage in sich falsch. Chips, die einen residenten 
Bootlader enthalten (also so gut wie alle LPC und STM32) bieten damit 
die Möglichkeit, den Chip auch ohne jegliches Spezial-Geschirre (JTAG, 
SWD, Spezialzeugs wie PICkit usw.) zu programmieren. Das ist in aller 
Regel deutlich billiger als das genannte Spezial-Zeugs. Obendrein weiß 
so ein Bootlader genau, wie sein Chip zu programmieren ist. Damit 
braucht man zwischen einem PC und dm ootlader eben nur noch dessen 
Kommando-Syntax einzuhalten und man braucht sich NICHT um die speziellen 
Eigenheiten des Chips zu kümmern (Für's Brennen wohlgemerkt..)

Tja - und eine serielle Verbindung oder eine USB-Verbindung ist fast 
immer robuster und stabiler als jede JTAG- bzw. SWD-Verbindung. Das gilt 
nicht ganz für teure Teile wie den seggerschen J-Link, aber umso mehr 
für alles Bastel-JTAG-Zeugs wie OpenOCD usw.

W.S.
#4534420
Lesenswert?

Ein Bootloader hat noch mehr Vorteile, du kannst damit die Pins der 
ISP(AVR) für etwas anderes verwenden und kannst im Extremfall über einen 
Pin die Firmware einspielen.
Außerdem kannst du ein Bootloader mit Verschlüsselung verwenden, du 
schickst deinem Kunden ein File, der kann damit aber nur einen uc mit 
der entsprechenden ID verwenden und keinen "nackten".

Falls du AVRs programmierst kann ich diesen nur wärmstens empfehlen:

Beitrag "AVR-Bootloader mit Verschlüsselung"

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren