serielles EEPROM, page write

Gast #2113130
Lesenswert?
• ▲
▼
Hi,

ich beschäftige mich gerade mit seriellen Eeprom's und stolpere über 
folgende Frage (die Datenblätter sagen dazu irgendwie nichts 
Explizites): Das Eeprom hat eine Page-Grösse von 64 Bytes. Wenn ich 
jetzt z.B. nur 3 Bytes einer Page ändern will, muss ich dann vor dem 
Schreiben der Page erst die ganze Page auslesen, die 3 Bytes darin 
ändern und dann die Page zurückschreiben, oder kann ich auch einfach nur 
die 3 Bytes an das Eeprom übertragen und dann schreiben ohen das die 
anderen Bytes der Page verändert werden ?

Gruss und danke
Frank
Gast #2113138
Lesenswert?
• ▲
▼
>Wenn ich
>jetzt z.B. nur 3 Bytes einer Page ändern will, muss ich dann vor dem
>Schreiben der Page erst die ganze Page auslesen, die 3 Bytes darin
>ändern und dann die Page zurückschreiben,

Jain. Welches EEPROM?
Gast #2113154
Lesenswert?
• ▲
▼
Das Page Writing beschleunigt nur den Schreibprozess, da du nicht jedes 
mal die Startbedingt, Device-Code und Adresse senden mußt.
Somit kannst du die Startadresse setzten, dann 64 Bytes nacheinander 
übertragen (Eprom bestätigt immer mit Ack) und dann wartest du. Bis das 
Eprom beschrieben ist.

Was du brauchst/nutzen solltest ist das Byte Write.
Somit kannst du jede Adresse ansprechen und das entsprechende Byte 
schreiben.

Ich gehe mal von I2C Eeprom aus. Aber bei SPI sollte es nicht anders 
sein.

Also die verschiedenen Sachen wie Page Write, Byte Write, und analog 
dazu Random Read, Current Adress Read und Sequential Read im Datenblatt 
suchen.
#2113163
Lesenswert?
• ▲
▼
spi schrieb:
> Wenn ich
> jetzt z.B. nur 3 Bytes einer Page ändern will, muss ich dann vor dem
> Schreiben der Page erst die ganze Page auslesen, die 3 Bytes darin
> ändern und dann die Page zurückschreiben

Nein.

Du kannst beliebig viele Bytes bis zur Pagesize schreiben, der Rest 
bleibt unverändert.

Pagewrite sollte man bevorzugen, da dann der EEPROM weniger altert.
Ein Bytewrite schreibt nämlich auch immer die ganze Page.


Peter
Gast #2113779
Lesenswert?
• ▲
▼
John schrieb:
> Von der 'Startadresse' aber maximal bis zur nächsten Seitengrenze.

Wrap-Around nicht vergessen!
Ich setze hier Nymonix 25LC640 ein. Da muss man nach dem WriteEnable 
Kommando kurz das /CS auf High und wieder auf Low setzen und erst dann 
das Write Kommando mit Adresse und Daten.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.