PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Funktionsweise eines Bootloaders



Zeroeightfifteen
20.03.2007, 21:36
Hallo

Was genau macht ein Bootloader? Ich habe einen Bootloader auf meinen Mega 16 getan und kann nun über RS232 diesen Programmieren. Gibts da so universalbootloader oder kann da jeder etwas anderes? Und wie funktioniert das, dass ich über RS232 auf den Flash zugreifen kann?

linux_80
20.03.2007, 23:25
Hallo,

man hat nur indirekt Zugriff über RS232 auf den Flash, denn das macht der Bootloader, der nimmt die Daten entgegen, und schreibt die in den Flash.

Nach einem Reset wird als erstes der Bootloader aufgerufen, dieser schaut nach ob jemand ein neues Programm flashen will, wenn nicht gehts in das normale Programm. Deshalb muss man auch den Resetvektor verbiegen bei den Fusebits, sonst wird der Bootloader nicht angeprungen beim Reset.

Funktion ist das eigentlich die einzige, ausser, es werden andere Schnittstellen unterstützt, die erst initialisiert werden müssen wie zB über I2C, oder Bluetooth. Die Initialisierung muss dann der Bootloader erst machen bevor er horcht ob jemand was flashen will.

Siehe auch Wiki und Datenblätter der AVR.

Ansonsten ist der Bootloader auch nur ein ganz normales Programm.

Zeroeightfifteen
21.03.2007, 17:10
Danke für deine Antwort. Also kann ich jeden beliebigen Bootloader verwenden umd über die RS232 zu programmieren.

linux_80
21.03.2007, 21:44
Was es evtl. zu beachten gibt, welches Programm man auf der PC Seite braucht, um das neue Programm zu übertragen !
Normalerweise hat jeder Bootloader so ein Programm mit dabei, oder sollte zumindest angeben wie man es sonst auf den AVR bringt.