AVR Studio Simulator lädt Z-Pointer nicht (ASM)

Gast #1404439
Lesenswert?
• ▲
▼
Hallo,
ich verwende in meinem Atmega32 den Code aus dem AVR-Tutorial für das 
Lesen und Schreiben eines Registers im EEprom.
Betrachte ich nun den Ladevorgang des Z-Pointer im AVR- Studio Simulator 
muss ich leider feststellen, dass weder R30 noch R31 irgend eine 
Änderung aufweisen. In Hardware funktionierts ebenfalls nicht.

Weis jemand was ich falsch mach?

Danke schonmal
tanka


    ldi     ZL,low(daten)               ; Z-Zeiger laden
    ldi     ZH,high(daten)
    rcall   EEPROM_read                 ; Daten aus EEPROM lesen

...
...
EEPROM_read:
    sbic    EECR,EEWE                   ; prüfe ob der vorherige 
Schreibzugriff
                                        ; beendet ist
    rjmp    EEPROM_read                 ; nein, nochmal prüfen

    out     EEARH, ZH                   ; Adresse laden
    out     EEARL, ZL
    sbi     EECR, EERE                  ; Lesevorgang aktivieren
    in      r16, EEDR                   ; Daten in CPU Register kopieren
    ret

; Daten im EEPROM definieren
.eseg
daten:
    .db     0b10101010

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Speicher
Gast #1404450
Lesenswert?
• ▲
▼
Der Simulator hat 'ne Macke, er erkennt die EEP-Datei nicht automatisch. 
Da gibt's im Menü einen Punkt zum Up/Download Memories (nur bei aktivem 
Simulator verfügbar), mit dem man die EEP-Datei einbinden kann. 
Überprüfen kann man das auch im Memory-Fenster mit Einstelliung EEPROM.

...
Gast #1404461
Lesenswert?
• ▲
▼
Hi

>Ja hab ich mit programmiert.

Muss aber im Simulator separat geladen werden.

-> Debug->Up/Download Memory

>Ich vermute das irgendwas am Syntax nicht stimmt, denn im Simulator
>zeigt der Zpointer auch nichts an.

Was soll er anzeigen? 'daten' liegen auf Adresse $0000. Mach mal ein
 ' .org 10' zwischen '.eseg' und 'daten:' dann ändert sich das.

MfG Spess
Gast #1404467
Lesenswert?
• ▲
▼
Ok kann sein.
Allerdings liest er dann von Adresse 0 im EEP einen Registerinhalt 0xFF, 
welchen ich nicht brauch. Ich würde gerne diese Bitfolge gemeldet 
bekommen.

.eseg
daten:
    .db     0b10101010


Sehr komisch.

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