Frank (Diskussion | Beiträge) |
|||
(7 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | Ein Boot-Loader ist eine spezielle Software, die gewöhnlich im Rom sitzt oder vom Betriebsystem geladen und anschließend ausgeführt wird. Der Boot-Loader lädt dann weitere Teile des Betriebssystems (gewöhnlich einen Kernel) oder ein Hauptprogramm. | + | Ein Boot-Loader ist eine spezielle Software, die gewöhnlich im Rom bzw. Flash sitzt oder vom Betriebsystem geladen und anschließend ausgeführt wird. Der Boot-Loader lädt dann weitere Teile des Betriebssystems (gewöhnlich einen Kernel) oder ein Hauptprogramm. |
+ | {| | ||
+ | |valign="top"| Bei den [[Atmel]] Controllern ([[Avr|AVR]] [[ATMega8|Mega8]], [[Atmel Controller Mega16 und Mega32|Mega32]] usw.) kann ein Teil des Flash Speichers für einen eigenen Bootloader reserviert werden. Dieser Bootloader kann automatisch bei einem RESET des Controllers ausgeführt werden, dies kann über die [[Fusebits]] eingestellt werden. | ||
+ | Mit den zwei Fusebits ''BOOTSZ'' (für Bootsize) kann die Grösse des Bootsektors eingestellt werden, gemessen wird immer vom oberen Speicherende nach unten. Je nach Grösse ändert sich auch der Startpunkt nach einem RESET falls das Fusebit ''BOOTRST'' ausgewählt wurde. | ||
+ | Um den Bootsektor sowie auch den Programmspeicher vor ungewolltem überschreiben zu schützen, sind vier ''Boot Loader Lock Bits'' (BLB) vorgesehen, diese können die jeweiligen Bereiche mit einem Schreib-/Leseschutz versehen. Diese Lock Bits verhindern aber nicht das auslesen oder neu beschreiben über [[ISP]]. | ||
− | Die | + | Die LockBits können entweder über ISP oder aber auch per Software direkt vom Programm aus gesetzt werden, zurücksetzen kann man sie aber nur durch einen sogenannten ''Chip Erase'', bei dem auch der ganze Speicher des AVR gelöscht wird. |
+ | ||[[Bild:FlashBootsektor.png|thumb|Programmspeicher im AVR]] | ||
+ | |} | ||
− | Oft wird dies genutzt, um einen | + | |
+ | Oft wird dies genutzt, um einen Controller auch per [[RS232]], Infrarot oder Funk programmieren zu können. | ||
Für das AVR Board [[RN-Control]] findet man im Roboternetz-Downloadbereich einen geeigneten Bootloader. | Für das AVR Board [[RN-Control]] findet man im Roboternetz-Downloadbereich einen geeigneten Bootloader. | ||
Zeile 10: | Zeile 17: | ||
http://www.microsyl.com/megaload/megalo1.jpg | http://www.microsyl.com/megaload/megalo1.jpg | ||
− | Leider funktionierte oben genannter Bootloader im Test nicht mit den üblichen Funkmodulen. Es gibt nun aber einen neuen Bootloader der offenbar recht gut auch die Programmierung per Funk erlaubt | + | Leider funktionierte oben genannter Bootloader im Test nicht mit den üblichen Funkmodulen. |
+ | Es gibt nun aber einen neuen Bootloader der offenbar recht gut auch die Programmierung per Funk erlaubt, siehe [[#Weblinks|Weblinks]] | ||
+ | |||
− | |||
− | |||
==Weblinks== | ==Weblinks== | ||
* [http://www.microsyl.com AVR Bootloader] | * [http://www.microsyl.com AVR Bootloader] | ||
− | * http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=269 | + | * [http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=269 Funktioniert auch über Funk] |
+ | |||
[[Kategorie:Microcontroller]] | [[Kategorie:Microcontroller]] | ||
[[Kategorie:Software]] | [[Kategorie:Software]] |
Aktuelle Version vom 21. März 2009, 20:02 Uhr
Ein Boot-Loader ist eine spezielle Software, die gewöhnlich im Rom bzw. Flash sitzt oder vom Betriebsystem geladen und anschließend ausgeführt wird. Der Boot-Loader lädt dann weitere Teile des Betriebssystems (gewöhnlich einen Kernel) oder ein Hauptprogramm.
Bei den Atmel Controllern (AVR Mega8, Mega32 usw.) kann ein Teil des Flash Speichers für einen eigenen Bootloader reserviert werden. Dieser Bootloader kann automatisch bei einem RESET des Controllers ausgeführt werden, dies kann über die Fusebits eingestellt werden.
Mit den zwei Fusebits BOOTSZ (für Bootsize) kann die Grösse des Bootsektors eingestellt werden, gemessen wird immer vom oberen Speicherende nach unten. Je nach Grösse ändert sich auch der Startpunkt nach einem RESET falls das Fusebit BOOTRST ausgewählt wurde. Um den Bootsektor sowie auch den Programmspeicher vor ungewolltem überschreiben zu schützen, sind vier Boot Loader Lock Bits (BLB) vorgesehen, diese können die jeweiligen Bereiche mit einem Schreib-/Leseschutz versehen. Diese Lock Bits verhindern aber nicht das auslesen oder neu beschreiben über ISP. Die LockBits können entweder über ISP oder aber auch per Software direkt vom Programm aus gesetzt werden, zurücksetzen kann man sie aber nur durch einen sogenannten Chip Erase, bei dem auch der ganze Speicher des AVR gelöscht wird. |
Oft wird dies genutzt, um einen Controller auch per RS232, Infrarot oder Funk programmieren zu können.
Für das AVR Board RN-Control findet man im Roboternetz-Downloadbereich einen geeigneten Bootloader.
http://www.microsyl.com/megaload/megalo1.jpg
Leider funktionierte oben genannter Bootloader im Test nicht mit den üblichen Funkmodulen. Es gibt nun aber einen neuen Bootloader der offenbar recht gut auch die Programmierung per Funk erlaubt, siehe Weblinks