Hallo Leute, hab mich heute mit einem seriellen EEPROM AT24C512'gespielt'. dabei ist mir aufgefallen wenn ich ein einzelnes Byte schreibe recht schnell geht. wenn ich eine ganze page beschreibe dauert das nach dem STOP-bit schon ne ganze weile bis das EEPROM wieder ansprechbar ist. jetzt frag ich mich ob das EEPROM einen internen buffer hat um eine ganze page (128 byte) aufzunehmen und erst nach dem STOP-bit anfängt zu schreiben. oder wie kann ich mir das sonst erklären warum ich 128 byte in einem schwung rüber schieben kann? danke mal soweit :)
stift schrieb: > oder wie kann ich mir das sonst erklären warum ich 128 byte in einem > schwung rüber schieben kann? Das mußt du dem Manual des Bausteines entnehmen, ob der evtl. noch Puffer-RAM intern hat, und wie automatisch der arbeitet. Aber EEPROM beschreiben kostet physikalisch immer Zeit.
Im Datasheet steht explizit, dass der Schreibzyklus mit der Stop-Condition ausgelöst wird. Und dass man in einem I2C-Kommando 1-128 Bytes in einem Rutsch abliefern kann. Folglich tritt die Wartezeit erst nach dem Stop auf.
interessant! hab jz mit einem logicanalyzer nachgeschaut: egal ob man ein byte oder eine voll page (128 byte) schreibt der EEPROM braucht immer 1,6 msec zum speichern :) lg
stift schrieb: > interessant! > hab jz mit einem logicanalyzer nachgeschaut: > egal ob man ein byte oder eine voll page (128 byte) schreibt der EEPROM > braucht immer 1,6 msec zum speichern :) > > lg So ist es. Und nun überlege mal, was "page write" bedeutet. ;-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.