Moin, Seit dem Upgrade auf das 2010 (final) release tut die ISP-routine meines Bootloaders nicht mehr. Lokierung stimmt, nix wird unerwünscht wegoptimiert, aber irgendwie wollen die boot_xxx macros der lib nicht mehr oder weiss der Geier :-( Der Code der ISP-routine ist in der boot-section lokiert (map-file sieht ok aus, der PC steht richtig wenn ich im debugger einen breakpoint setze und drauflaufe), der restliche code ist in den ersten 64k. der puffer wird richtig übergeben, boot_page_fill(...) korrekt bedient usw. Hat jemand anders das gleiche Problem und eine Lösung/Ursache ? wäre supi, danke - tom.
Gast
#1912486
Jo, keiner 'ne idee ???
Problem gefunden. Im avr5.x ld-script ist der .data Bereich ab Adresse 0x0060 definiert. Beim Atmega128 sitzt von 0x0060..0x0100 jedoch extended I/O und der locator hatte tatsächlich Variablen in diesen Bereich platziert, so das das Programm deshalb nicht funzt. .data section also ab Adresse 0x0100 im ld-script umdefiniert und alles ist ok. cy, Tom.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.