Gast
#3975188
Hallo ich habe einen ATmega168 (als Ersatz für einen mega8). Dieser soll mit diesem Bootloader versehen werden: http://www.fischl.de/avrusbboot/ Ich bin kläglich gescheitert, das Programm zu portieren: Hier ist was ich getan habe: 1. Testweise die Bootloader Comdition hart auf 1 gesetzt, um dies als Fehlerquelle auszuschließen. 2. das GICR Register in MCUCR umbenannt. 3. Das Signal von INT0 in INT0_vect umbenannt. 4. Das Makefile bearbeitet: BOOTLOADER_ADDRESS = 0x3800 #Byteadresse LDFLAGS += -Wl,--section-start=.text=$(BOOTLOADER_ADDRESS) 5. Fuses angepasst: #LOW: 0xFF #HIGH: 0xDF #EXTEND: 0xF8 Probleme ergeben sich schon beim kompilieren. Der GCC meckert bei dem Wort PROGMEM. Keine ahnung warum. Habe es einfach entfernt... Leider tut sich nichts. Ich bekomme den Bootloader nicht ans Laufen. Weiß jemand was man ändern muss? ode rhat jemand einen Bootloader, der mit der gleichen Hardware funktioniert? Eine Frage noch: Um den Interrupt auf den Bootloader umzubiegen, werden bestimmte Bits im MCUCR Register geschrieben. Soweit so gut. Allerdings ist mir nicht klar, wie das Assemblerfile den Vector ummapt. Soweit ich sehe wird einfach
1 | |
verwendet. Muss da nicht noch der Offset von der Vectortabelle drauf? Kenne mich leider mit Assembler in GCC nicht aus. Weiß jemand, wie man das ans Laufen bekommt?