In den Bootloader springen geht schief

Gast #1580483
Lesenswert?

Hallo,

ich möchte aus der laufenden Applikation in den Bootloader springen, 
leider hängt sich das Programm auf.

Der Bootloader ist getestet und läuft.
HW: Atmega128

So sieht mein Aufruf aus:

cli();
asm volatile("jmp 0x1FC00");

über Watchdog und reset funktioniert es, aber mit direktem Sprung nicht, 
habt Ihr einen Tip?

Gruß michael
#1580532
Lesenswert?

Karl heinz Buchegger schrieb:
> Ich denke es ist wieder mal das leidige Thema
> Word-Adre3ssierung versus Byte-Adressierung

Ne, ist es hier mal nicht. ;-)
1
asm volatile("jmp 0x1FC00");
2
  cc:  0c 94 00 fe   jmp  0x1fc00

Ich tippe auch darauf, dass im Bootloader irgendein Hardware-Init schief 
läuft, weil in den Registern nicht die erwarteten Default-Werte stehen. 
Oder 1fc00 (fe00) ist schlicht die falsche Adresse, weil die Fuses nicht 
stimmen.

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