Diskussion:Konzept für einen ATtiny-Bootloader in C

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Erstmal Danke für diese Artikel. Ich wollte nur einen Bug im Code melden (equinox-boot.c(boot_update_flash (void)), sowie im Pseudo-Code): statt bootloader_functions.start_appl_main = (void *)(word - RJMP); // Applikations-Adresse als absolute Adresse merken muss man schreiben: bootloader_functions.start_appl_main = (void *)((word - RJMP)*2);

Und einen Vorschlag: Die Start Adresse der Applikation wird im RAM gespeichert. Als Folge, diese Software funktioniert wenn wir starten Bootloader und dann sollen wir Applikation schreiben. Wenn aber ich wollte nur Applikation starten ohne die zu schreiben (z.B. bei vorigem Mal habe ich schon das gemacht) habe ich ein Problem. Deswegen mein Vorschlag diese Adresse im EEPROM merken und bei bedarf auslesen. Dann gefährliche Überschreiben der BOOTLOADER_FUNC_ADDRESS ist nicht mehr nötig.