mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT24C04: Pause zwischen Write/Read Zugriffen?


Autor: Jakob (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wieviel Zeit muss man zwischen zwei Write oder Read Zugriffen bei den 
AT24C04 Eeproms verstreichen lassen?

Hab gemerkt, wenn ich mehrere z.B. Schreibzugriffe direkt hintereinander 
mache, wird nicht alles korrekt übertragen / genauso ist es bei den 
Lesezugriffen (man erhält nicht die ganze Wahrheit).
//letzter schritt in der write-routine

//stop condition 
I2C->CR1 |= 0x0200;
while ((I2C->CR1&0x200) == 0x200);   /* Wait until BUSY bit reset  */

Vielleicht hab ich auch was wichtiges vergessen; aber ich dachte mit 
Schreiben des Stopp-Bits und warten, dass das Busy-Bit nicht mehr 
gesetzt ist, sollte es das gewesen sein, oder?

Gruß
Jakob

Autor: Jakob (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
arbeite mit dem STM32F104 - aber ich denke, das wird nebensächlich sein;

Autor: Archie F..... (archie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>EEPROM is capable of an 8-byte page write
Das heißt ein Buffer kann die 8 Bytes aufnehmen, dann müssen diese 
geschrieben werden und es kostet Zeit. Die Zeitangabe findest du 
ebenfalls im Datenblatt. Willst du nicht warten, besorge dir einen 
pingleichen FRAM von Ramtron.

Autor: Jakob (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann werd ich nochmal im datenblatt danach suchen

Autor: stephan_ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meist braucht ein EEPROM ca 3-5 msec Wartezeit zwischen den 
Schreibzugriffen, steht im Datenblatt. Lesezugriffe brauchen keine 
Wartezeit.

Autor: stephan_ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ergänzung: ein Lesezugriff nach einem Schreibzugriff sollte auch die 
Wartezeit einhalten. Ein EEPROM ist nach einem Schreibzugriff für die 
genannte Zeit völlig "tot" und reagiert auf gar nichts.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Üblicher Weise baut man keine festen Wartezeiten ein.
Man prüft einfach so lange, bis auf die Adresse das ACK kommt.


Peter

Autor: Opa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Üblicher Weise baut man keine festen Wartezeiten ein.
> Man prüft einfach so lange, bis auf die Adresse das ACK kommt.

So steht es auch im Datenblatt ...

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.