Was ist ein Arduino® Bootloader?
Der Arduino®-Bootloader ist eine kleine Software, die auf allen Arduino®-Platinen in einen Chip gebrannt ist. Ziel ist es, eine einfache und schnelle Neuprogrammierung zu ermöglichen. Der Arduino®-Bootloader ist Open Source, dh er kann frei kopiert, geändert und weitergegeben werden und ist nur auf Arduino®-Systemen nützlich.
Bootloader sind kleine Softwareteile, die beim ersten Einschalten eines Computers ausgeführt werden. Die meisten Desktop-Computer verwenden einen Bootloader, um das Betriebssystem des Computers in den Arbeitsspeicher zu laden oder um das Betriebssystem auf dem Pfad des Ladens selbst zu starten. Auf Computern, die zum Booten mehrerer Betriebssysteme konfiguriert sind, fordert ein Bootloader den Benutzer auf, das zu verwendende Betriebssystem auszuwählen. Trotz ihrer relativen Einfachheit sind Arduino®-Geräte im Wesentlichen sehr kleine Universalcomputer und erfordern beim Einschalten einen Bootloader.
Der Standard-Arduino®-Bootloader durchläuft eine Sequenz, um zu bestimmen, welche Software in den Kurzzeitspeicher geladen werden soll. Wenn die Karte über ein USB-Kabel, ein Xbee®-Radio oder eine serielle Verbindung an einen Computer angeschlossen ist, versucht der Bootloader, neue Software vom Computer herunterzuladen. Arduino®-Programme werden auch als Arduino®-Skizzen bezeichnet. Sobald die Skizze heruntergeladen wurde, wird sie in das Langzeitgedächtnis geschrieben und anschließend wieder in das Kurzzeitgedächtnis geladen, um ausgeführt zu werden. Wenn die Karte nicht an einen Computer angeschlossen ist oder keine neue Software heruntergeladen werden kann, wird das zuletzt geschriebene Programm aus dem Langzeitspeicher geladen.
Ein Arduino®-Bootloader ist besonders nützlich, da kein externes Programmiergerät erforderlich ist, um die Software auf ähnlichen Geräten zu ändern. Arduino®-Erfindungen führen ihre Software normalerweise direkt von den Chips aus, ohne den Vorteil magnetischer Speichergeräte. Dieser Ansatz ist schneller und billiger als die Verwendung von Magnetspeichern. Der Hauptnachteil eines Bootloaders besteht darin, dass ein Teil des begrenzten Speicherplatzes auf den Chips verbraucht wird, wodurch der für Software verfügbare Speicherplatz minimiert wird.
Einige Benutzer sind von den Einschränkungen des Arduino®-Bootloaders frustriert und greifen auf die Verwendung eines externen Programmiergeräts zurück, um den Bootloader zu entfernen und manuell neue Programme hinzuzufügen. Obwohl diese Technik den verfügbaren Speicherplatz erhöht und die Ausführungsgeschwindigkeit von Software etwas erhöht, ist sie ziemlich zeitaufwendig und wird für die meisten Benutzer nicht empfohlen. Andere Benutzer haben alternative Arduino®-Bootloader geschrieben, von denen einige Open Source sind und online kostenlos zur Verfügung stehen.