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

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.