Bootlaoder - Sprung zur Application

Gast #1039527
Lesenswert?

Hi,

Mir bereitet gerade ein Bootloader kopfzerbrechen. Habe mir diesen 
Thread schon durchgelesen und die Lösungsvorschläge ausprobiert: 
Beitrag "AVR Bootloader: Sprung zur Applikation"

Ich verwende einen AT90CAN128, Kommunikation über RS485 Schnittstelle 
und AVR-GCC 4.0.2 und avrlibc 1.4.4 . Nach dem Programmieren überprüft 
der AVR die Checksumme der geschriebenen Daten und speichert diese am 
Ende des Flashs. Die Boot-Reset Fuse ist auf Bootloader Section 
programmiert. Sommit wird immer zuerst der Bootloader gestartet. Dieser 
kontrolliert die Checksumme und startet bei Erfolg das Programm.

So wenn ich jetzt nach dem Programmieren aus dem Bootloader in die 
Application springen will (IVSEL Bit entsprechend gesetzt) hängt sich 
der AVR irgendwo auf (habe keinen Debugger zur Hand, kann also nicht 
sagen was genau er macht). Wenn ich allerdings den AVR per Reset-Pin 
resete wird die Application erfolgreich gestartet. Habe schon probiert 
alle verwendeten Register zu löschen, Interrupts zu deaktiviern usw. 
bevor ich zurück springe; allerdings ohne Erfolg.

Woran kann das noch liegen, mir gehen langsam die Ideen aus...

Danke,
Martin

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