Hallo. Ich habe in AVR Studio mal den Befehl IJMP in einer ASM Datei benutzt. Die Datei wurde fehlerfrei assembliert. Aber im Simulationsmodus scheint das Programm den IJMP Befehl nicht ordentlich zu beherschen. Es führt dann nämlich IMMER einen Reset aus oder springt an die erste Zeile. IJMP ist ein indirect jump zu einer Adresse im Z Register. Das Z-Register wurde immer ordnungsgemäß geladen. Ist jemandem das schonmal passiert? Was macht man dann? Danke für alle Antworten! Moritz
Hallo, das geht bei mir im AStudio 3.55, mit AT90S4414 eingestellt: jump: nop nop nop nop nop nop ldi zl,low(jump+3) ldi zh,high(jump+3) ijmp Gruß Mike
Ja ich habe den Fehler schon gefunden! Ich habe fälschlicherweise die Adresse vom Label immer um ein bit geschoben, was ins Datennirvana geführt hat. Seltsammerweise wird bei Beispielen auch im Handbuch vom 2313 bei Laden des Z-Zeigers immer um ein bit geschoben. Ich verstehe garnicht welchen SInn es hat, ich kann mich an die Argumentation erinnern das der Flash ja als Worte adressiert wäre. Offensichtlich ist das aber nicht der Fall... Ich habe den Fehler nur mit hilfe des Disassemblers gefunden. Sorry das ich einen unnutzen Beitrag geliefert habe :x Moritz
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.