Hallo, wenn ich auf meinem uC (AT90CAN128) lpm bzw. elpm ausführe, erhalte ich nur 0xFF als Ergebnis in Register 0. Aber bereits an der Startadresse stehen eigentlich sinnvolle Werte - weil ich die vorher hinschreibe :) Die Bootlockbits stehen richtig: no lock on SPM and LPM in Application Section. Die folgende Testschleife soll mir zeigen, ob überhaupt irgendwo im flash etwas Sinnvolles steht... ldi zh, 0x00 ldi zl, 0x00 ldi r20, 0 out RAMPZ, r20 mav_loop: ;elpm lpm adiw zl, 1 mov r20, r0 cpi r20, 0xFF breq mav_loop nop Habt Ihr irgendwelche Ideen, woran es liegt, daß ich nichts Sinnvolles lesen kann? Danke + viele Grüße, Rüdiger
... uuuund die Antwort ist: da ich vorher eine Schreiboperation auf der RWW-Sektion ausgeführt hatte, mußte vor einem Lesezugriff noch das RWWSRE-Bit im SPMCSR gesetzt werden. Danach funktioniert's!
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.