Hallo Forum,
ich habe da ein Problem.
Folgende Situation:
Ich habe eine Schaltung mit nem Mega128, die ich nicht
selbst entworfen habe. Die Leiterplatte ist 4-Lagig und mit
diversen Bauteilen vorbestückt. Der Entwickler hat aber
für mein Projekt das EEPROM vergessen mit vorzusehen,
eine nachträgliche Bestückung ist nicht möglich ... leider.
Nun müsste ich aber in meiner Anwendung 32KB Daten
dauerhaft abspeichern
An Flash hab ich noch einiges frei, würde sich also anbieten,
das Problem ist nur, dass aus dem Programm heraus nicht
direkt auf das Programm Memory zugreifen lässt, außer
das Programm ist halt n Bootloader, das dann auch
im Bootloaderbereich liegen muss.
Also vom Bootloader kann man Daten ins Progmem legen,
vom Progmem ins Progmem geht nicht.
Vom Progmem in den Bootloader geht auch soweit ich
weiß, bin mir da aber nicht 100% sicher.
Wenn ich nun in meinem Programm eine Subroutine
als Hex ablege, diese beim Programmstart in den Bootloader schreibe
und dann vom Programm aus anspringe, dann sollte diese doch,
da der AVR ja nun im Bootloader ist, Daten ins Progmem schreiben können,
oder?
Von der Subroutine aus sollte ich doch auch wieder zurück ins Progmem
springen können, denke ich, oder hab ich da nen Denkfehler?
Hat von Euch schonmal jemand sowas gemacht?
Will keinen Code, nur Tips zur Herangehensweise währen doll.