Warum gibt es beim STM32 einen Bootloader?

Du meinst den fest installierten Bootloader im System Memory? Der stellt 
EINE der Möglichkeiten dar, wie der Chip zum ersten mal programmiert 
werden kann. Schau dir dazu mal die Application Note AN2606 an.
Du kannst, je nach Chip, beispielsweise I²C oder UART benutzen und damit 
deine Software auf den Chip bringen. Dazu brauchst du keinen ST-Link 
oder andere Programmiergeräte. Sondern nur einen UART-Adapter für den 
Rechner, beispielsweise.
Dieser Bootloader befindet sich meines Wissens nach in einem 
schreibgeschützten Flashbereich im Mikrocontroller.

Zur Auswahl der Boot-Modi (also Flash oder SRAM):
Ich nehme an, das macht nicht der Bootloader sondern eine extra Logik 
(also keine Software/Firmware!) im Mikrocontroller.
Es gibt Mikrocontroller, die nochmal einen extra Startcode ausführen und 
dort ihren Modus festlegen, allerdings ist sowas praktisch nie im 
Datenblatt beschrieben und wird von Herstellern auch nicht 
veröffentlicht. Mir ist da zum STM32 nichts genaueres bekannt, ich tippe 
aber mal eher nicht drauf.
Johannes O. schrieb:
> Auswahl der Boot-Modi (also Flash oder SRAM)

Es gibt bei manchen Gehäusevarianten der STM32 die Pins BOOT0 und ggf. 
auch BOOT1, deren Pegel beim Reset eingelesen und dadurch der 
Start-Speicher festgelegt wird, was man für temporäre/manuelle 
Boot-Änderung verwenden kann. Dasselbe kann man auch per Optionsbit 
permanent setzen.
Verwendet wird das z.B., um beim Debuggen nicht den Flash zu schreiben, 
sondern schneller in den SRAM und dort sofort starten zu können.
Nachdem der hauptberufliche Hellseher bei ST in Rente gegangen ist und 
man keinen Ersatz für ihn gefunden hat, müssen die Kunden/Anwender 
selber ein Programm in den Rechner schieben.
Um dies zu vereinfachen, wird dem Rechner ein Progrämmchen verpasst, 
welches, unter bestimmten Bedingungen, das Laden und speichern Deines 
Programmes im Chip (meist Flash) übernimmt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.