Forum: Mikrocontroller und Digitale Elektronik I2C Start-Condition


von Steffen B. (striebel)


Lesenswert?

Hallo...

Ich versuche hier gerade ein I2C-Eeprom anzusprechen. Jedoch zweifel
ich gerade ob meine Stop-Condition richtig funktioniert...

Daher meine Frage: Wenn ich ein Byte vom Speicher lese, diese Abfrage
mit einer STOP-Condition abschließe und erneut ein Byte lese, ist es
normal, dass im Statusregister des µC die nächste START-Conditon als
REPEATED START condition gekennzeichnet ist?

Ist vielleiche ne dumme Frage, aber stehe hier gerade derbe auf dem
Schlauch.

Danke für eure Hilfe!

Steffen

von Fabian (Gast)


Lesenswert?

ne repeated start ist ja exakt das gleiche wie eine normale start
kondition, nur dass vorher beim repeated s. kein stop gesendet wurde.
ob das für deinen uC normal ist weiss ich nicht, da ich ja nicht weiss
welchen du benutzt.

gruß
fabian

von Steffen B. (striebel)


Lesenswert?

ich benutze einen at90can128.

konnte jetzt klären warum es einen repeated start gegeben hat...kleiner
programmierfehler, daher hat er gar keine Stop Cond. abgesetzt.

Aber jetzt kommt schon das nächste problem, sobald ich eine Stop Cond.
setze, ist der i2C speicher nicht mehr erreichbar. nur ein neustart
lässt wieder einen zugriff zu.

jemand ne idee?

greetz
steffen

von thkais (Gast)


Lesenswert?

Wie lange wartest Du nach einem Schreibzugriff? Einige ms ist der EEPROM
dann mit Schreiben beschäftigt.

von Manfred (Gast)


Lesenswert?

Das ist richtig. Nach dem Stop-Kommando ist die Übertragung beendet und
der Baustein muß neu adressiert werden.
Beim Lesen wird der EEPROM adressiert und die Startadresse übergeben,
anschließend werden solange Daten gesendet bis keine Quitierung kommt
oder das Stop-Kommando gesendet wird.
Schau dir mal das Datenblatt deines EEPROMs an, dort ist es sicher
genau erläutert.

Gruß

Manfred

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
Noch kein Account? Hier anmelden.