Größe des Arduino Bootloaders reduzieren?


9

Gibt es eine Möglichkeit, die Größe des vorinstallierten Arduino- Bootloaders zu reduzieren , um einige Bytes für das Programm zu sparen?


Meinten Sie den Bootloader oder die Bibliotheken, die mit der Arduino IDE geliefert werden?

Wenn Sie meinen, dass Sie dieselbe Firmware verwenden möchten, dann nein. Wenn Sie einen anderen oder gar keinen Bootloader verwenden möchten, gibt es dazu eine Reihe von Fragen.
Polar

1
Sie fragen nach dem Arduino, aber der von Ihnen angegebene Link bezieht sich auf den USB-zu-Seriell-Chip auf der Platine, nicht auf den Hauptprozessor. Können Sie also klarstellen, wovon Sie die Größe reduzieren möchten?
Baldengineer

4
Wenn Sie möchten, dass die FAQ geändert wird, um den Verweis auf die Firmware zu entfernen , sollten Sie eine Meta- Diskussion über Elektrotechnik starten .
Mark Booth

2
Vielen Dank an @DaveTweed - aber es hätte powtac vielleicht geholfen, wenn Sie dies früher erwähnt hätten, anstatt ohne Kommentar für den Abschluss zu stimmen. Wenn eine Frage unter den Qualitätsstandards liegt, sollte der Fragesteller ermutigt werden, sie zu verbessern, anstatt sie nur zu schließen. Deshalb sind die [ask], [answer], [about]und [faq]Kommentar Link Markup - Optionen so nützlich sind. Sie ermöglichen es Ihnen, sehr schnell und einfach Menschen in die richtige Richtung zu weisen, dh wie man fragt , wie man antwortet , Tour & FAQ .
Mark Booth

Antworten:


9

Es gibt einen aktiv entwickelten kostenlosen und Open-Source-Arduino-Bootloader / Firmware namens OptiBoot , der von Interesse sein könnte. Von ihrer Website:

Optiboot ist ein Viertel der Größe des Standard-Bootloaders und bietet 1,5 KB zusätzlichen Speicherplatz.

Viele Arduino / Clone-Boards werden jetzt mit OptiBoot anstelle der klassischen Arduino-Firmware ausgeliefert, allerdings nicht unbedingt mit der neuesten und besten Version von OptiBoot. Bestehende Boards können bei Bedarf auch mit OptiBoot aktualisiert werden. Die Verfahren werden auf der verlinkten Site dokumentiert.

Sehenswert sind auch die verschiedenen Bootloader-Verbesserungen auf der AdaFruit-Website . Da ich keine persönlichen Erfahrungen damit habe, kann ich jedoch nicht viel über AdaBoot sagen.


Ich habe den AdaFruit-Bootloader verwendet. Ziemlich zufrieden damit, und die Tatsache, dass es in C ist, ermöglicht es mir, es einfacher an meine Bedürfnisse anzupassen.
Angelatlarge

6

Es ist möglich, die Arduino-Firmware (Bootloader) zu umgehen, indem Sie Ihre Programme mit einem anderen Programmierer (z. B. dem USBtinyISP-Programmierer ) flashen.

Soweit ich weiß, können Sie die Arduino IDE weiterhin zum Schreiben Ihres Programms verwenden. Sie müssen jedoch ein "Plugin" installieren, damit Sie Ihren Code direkt auf die Karte flashen können, wodurch kleinere Programme erstellt werden.

Aber:

Sie können nicht über USB flashen. Sie müssen den Arduino-Bootloader mithilfe von USBtinyISP erneut flashen. (Für mich hat alles gut funktioniert und ich hatte überhaupt keine Probleme)

Ich hoffe, das hilft


Der Kommentar "Sie können nicht über USB flashen" ist etwas irreführend: USBtinyISP funktioniert über USB, technisch gesehen blinkt es über USB
angelatlarge
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.