www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Studio Simulator lädt Z-Pointer nicht (ASM)


Autor: tanka (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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-Tutori...

Autor: paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,hast du auch die eep datei in den mega32 geschrieben?
gruss
Paul

Autor: tanka (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja hab ich mit programmiert.
Ich vermute das irgendwas am Syntax nicht stimmt, denn im Simulator 
zeigt der Zpointer auch nichts an.

Autor: Hannes Lux (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

...

Autor: Hannes Lux (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> denn im Simulator zeigt der Zpointer auch nichts an.

Doch, er zeigt 0 an. Denn "Daten" liegt an Adresse 0 im EEP.

...

Autor: paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,also in dem abschnitt den du geschickt hast ist alles in Ordnung.
Der Fehler muss in dem Rest stecken.Häng es doch mal an.
gruss
Paul

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: tanka (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Nochmal: Du musst das eep-File in den Simulator laden .

MfG Spess

Autor: Hannes Lux (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@tanka:
Lies erst nochmal alle Antworten, ich vermute, Du hast welche übersehen.

...

Autor: tanka (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ahhh...
sehr richtig. Dem Simulator hat das eep file gefehlt.
Mit Debug-> Up/Download Memory klappt das.
Mal schaun wie es jetzt um die Hardware steht.

Besten Dank. Vergelts Gott.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.