boofa - Bootloader für AVR über UART (AVR109)

Persönliche Seite #480765
Lesenswert?

Hallo zusammen,

Entschuldigt bitte den Doppelpost, ich habe die folgende Ankündigung 
zuvor versehentlich im Mikrocontroller-Forum gepostet, ich wollte sie 
eigentlich in der Codesammlung haben wo sie besser aufgehoben ist.

Auf
    http://www.roland-riegel.de/boofa/
oder im Anhang findet Ihr meinen kleinen Bootloader namens boofa. Er ist 
komplett in Assembler geschrieben, passt in einen 512-Wort-Bootsektor 
und ermöglicht das Booten über UART gemäß dem Protokoll der AVR109 
Application Note von Atmel.

Eine eigene PC-Applikation ist also nicht notwendig, man verwendet 
einfach z.B. avrdude. Die Version im ZIP-Archiv prüft beim Start den 
Zustand eines Tasters an der MCU und startet nur, wenn dieser gedrückt 
ist. Ansonsten wird das Anwendungsprogramm ab Adresse 0 gestartet.

Getestet habe ich den Bootloader auf dem ATmega16, er ist auch noch für 
den ATmega128 vorbereitet. Andere MCUs sollten aber einfach hinzuzufügen 
sein.

Vorsicht, wie immer könnten durchaus noch einige Bugs enthalten sein, 
also bitte nicht auf wichtigen Geräten ausprobieren!

Bei Fehlern, Wünschen oder anderen Kommentaren bitte hier melden.

Gruß
Roland
Angehängte Dateien:
Persönliche Seite #555012
Lesenswert?

Im Prinzip musst Du boofa_config.asm so abändern, dass der Bootloader 
gemäß Deinen Vorstellungen z.B. beim Gedrückthalten eines Tasters 
startet, und ansonsten das Anwendungsprogram gestartet wird.

Dann brauchst Du noch eine Datei m8_config.asm, die in boofa.asm statt 
der m16_config.asm eingebunden wird. Als Vorlage kannst Du die 
vorhandene m16_config.asm verwenden. In m8_config.asm wird die 
MCU-Frequenz eingestellt, sowie einige andere Hardwareanpassungen 
vorgenommen.

Insbesondere solltest Du für einen mega8 folgende Änderungen vornehmen:
.equ DEVCODE = 0x77
.equ DEVSIG = 0x1e9307
Daneben muss noch die Zeile
.equ RWWSRE = ASRE
gelöscht werden.

Habe das zwar nicht getestet, aber es sollte Dich schon einen Schritt 
weiter bringen.

Gruß,
Roland
#1230879
Lesenswert?

mal hochholen

Angeregt durch den AVR_Softwarepool bin ich hier gelandet.

Würde den Bootloader gerne ausprobieren. Mir ist leider nicht ganz klar, 
wie ich das Projekt compilieren soll. Das Programm avra hab ich nicht. 
Schätze, dass das ein Assembler sein soll. Nur welcher? Kann wer helfen?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren