AT24C512SC EEPROM Chipkarte

OP #1308637
Lesenswert?

Ich versuche, diese I²C EEPROM-Chipkarte mit einem MSP430F2012 mit 
Hardware-I²C byteweise zu beschreiben.

Wenn ich im Einzelschritt durch mein ASM-Programm gehe, quittiert das 
EEPROM die I²C-Adresse, die Zieladresse im PROM und das Datenbyte wie 
erwartet mit ACK.

Die Stop Condition wird auch einwandfrei geschickt - wie ich auf dem 
Oszi sehe.

Wenn ich das Programm in Echtzeit 4 Byte nacheinander schreiben lasse, 
kommt nach dem Schreiben der Zieladresse und des 3 Datenbytes ein NAK 
zurück.

Laut Datenblatt braucht das EEPROM 5-10 ms für den Schreibvorgang, der 
mit der Stop Condition ausgelöst wird.

Es sieht also stark danach aus, daß ich einfach zu schnell nach der Stop 
Condition den nächsten Schreibvorgang anwerfe. (Der MSP läuft mit 12 
MHz)

Nachdem ich nach jedem Schreibzyklus 20 ms Wartezeit eingebaut habe, 
kommt er zumindest ohne Fehler zurück.

Eigentlich würde ich erwarten, daß der I²C-Chip bei neuer Adressierung, 
während er noch busy ist, einfach die SCL-Leitung auf low zieht, bis er 
fertig ist, aber offenbar ist das nicht so. Das Datenblatt schweigt sich 
zu dem Thema aus.

Das USI takte ich 32 kHz, die ich noch durch 2 teile.

Hat jemand Erfahrung mit dem EEPROM?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren