mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik kleine Nachhilfe beim Lesen/Beschreiben des EEPROM


Autor: Thomas Miehling (tm112)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

Ich brauche ein wenig Nachhilfe in Sachen EEPROMs (PIC16F628, MPLAB 
ASM).

Mit folgendem Quelltext werden Speicherzellen bereits beim Brennen 
beschrieben:

org H'2100'
de 01h
de 23h
de 45h
de 67h

Bei Adresse 2100 sieht dann die Speicherbelegung wie folgt aus:
      D0   D1   D2   D3   D4   D5   D6   D7
2100: FF01 FF23 FF45 FF67 FFFF FFFF FFFF FFFF

So nachzusehen im EPROMer (GALEP-III).

Beim einzelnen Speichern und Lesen der Speicherzellen bekomme ich 
jeweils 0 1 2 3 4 5 6 7 zurück. Insofern funktioniert das. Nur: Ist es 
nicht eine Verschwendung an Speicher?

Wie werden die Speicherstellen, die 'FF' zum Inhalt haben, gelesen und 
beschrieben (direkt beim Brennen, wie auch im Betrieb)? Umdrehen der 
'Nibble', bzw. Bytes im höheren Bereich - oder hab' ich da einen 
Denkfehler?

Thomas

Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit de sollte byteweise Speicherplatz deklariert werden.

Warum Dein Programmer FF01, FF02 etc ausliest, weiss ich nicht, ich 
arbeite hauptsächlich mit dem ICD2 oder mit dem PICkit 1, und hier 
funktioniert es korrekt, also byteweise.

Du schreibst:
Beim einzelnen Speichern und Lesen der Speicherzellen bekomme ich
jeweils 0 1 2 3 4 5 6 7 zurück.

Womit liest Du die Speicherzellen? In der PIC-Anwendung?

Severino

Autor: Thomas Miehling (tm112)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Richtig.
Testweise z.B. so:

BSF    STATUS, RP0
MOVLW  0x30
MOVWF  EEADR
MOVLW  9
MOVWF  EEDATA

, gefolgt von der reichlich umständlichen aber wohl allgemein bekannten 
Prozedur, die ich hier spare.

erzeugt dann:

      D0   D1   D2   D3   D4   D5   D6   D7
2130: FF09 FFFF FFFF FFFF FFFF FFFF FFFF FFFF

Thomas

Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wofür steht denn D0  D1  D2 etc.?

Severino

Autor: Thomas Miehling (tm112)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das dient nur der Übersichtlichkeit. So sieht dann der komplette 
Ausschnitt von 2100 - 2137 aus:

      D0   D1   D2   D3   D4   D5   D6   D7
2100: FF01 FF23 FF45 FF67 FFFF FFFF FFFF FFFF
2108: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
2110: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
2118: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
2120: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
2128: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
2130: FF09 FFFF FFFF FFFF FFFF FFFF FFFF FFFF

Merkwürdig ist eben, dass im Programmteil des PIC sehr wohl alle 
Speicherzellen beschieben werden.

Thomas

Autor: Dieter Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht doch fast so aus, als ob nur die Darstellung am 14 Bit breiten 
Programmflash orientiert wäre.

Das EEPROM ist definitiv nur 8 Bit breit.

Autor: Thomas Miehling (tm112)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok. Das klingt schlüssig. Danke.

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.