mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik I²C - EEPROM Aufgabe


Autor: Francisca93 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich versuche mich gerade an einer Aufgabe aus einer Probeklausur zum 
Thema I²C, wo ich mir nicht sicher bin:

"Zwischen einem I2C-Master und einem seriellen EEPROM wurden folgende 
Informationen ausgetauscht (S=Start, P=Stop):

S 0xA0 0xA2 S 0xA1 0xA3 0xA5 P

Ergänzen Sie die fehlenden ACK/NAK. Wird EEPROM gelesen oder 
beschrieben?"

Also so wie ich es verstanden hab, müsste ja hinter jedem Byte ein ACK 
kommen, nur nicht hinter dem letzten vor dem P, wo ein NAK vom Master 
kommt, weil er nichts mehr erwartet?

Zur Frage gelesen/beschrieben würde ich sagen, zuerst wird geschrieben, 
weil bei A0 ja das 8. Bit 0 ist (also der Master will schreiben). Der 
Inhalt ist dann das Byte A2. Dann kommt ein Repeat Start, A1 steuert den 
selben Slave an, aber nun zum lesen (wegen 8. Bit = 1). Die beiden Bytes 
A3A5 sind dann der Inhalt.

So stelle ich es mir zumindest vor. Bin mir aber nicht sicher, speziell 
weil es ein EEPROM ist, und ich finde nichts darüber, wie dort 
gespeichert wird.

Wäre super wenn da jemand weiterwüsste :-)

Autor: Heils Bringer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Francisca93 schrieb:
> Wäre super wenn da jemand weiterwüsste :-)

Ja ich weiss weiter!

Schaue dir in einem beliebigen Datenblatt eines I2C EEPROMs
das Protokoll an und lerne daraus.

Autor: Schukostecker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Francisca93 schrieb:
> Wäre super wenn da jemand weiterwüsste :-)

Es ist traurig zu sehen, wie wenig Eigeninitiative gezeigt wird um etwas 
selber über Datenblätter herauszufinden. Sind das die Problemlöser von 
morgen?

Ach ja, früher gab es kein Internet um an Datenblätter zu kommen..

Autor: c-hater (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Francisca93 schrieb:

> Also so wie ich es verstanden hab, müsste ja hinter jedem Byte ein ACK
> kommen, nur nicht hinter dem letzten vor dem P, wo ein NAK vom Master
> kommt, weil er nichts mehr erwartet?

Genau so ist das im Normalfall. Allerdings gibt es leider etliche 
unsägliche Devices, die vom I2C-Standard mehr oder weniger weit 
abweichen. Hoffentlich gehört das (von dir nicht näher spezifizierte) 
EEPROM nicht dazu...

> So stelle ich es mir zumindest vor. Bin mir aber nicht sicher, speziell
> weil es ein EEPROM ist, und ich finde nichts darüber, wie dort
> gespeichert wird.

Diese Information findest du, wer hätte das erwarten können, natürlich 
im Datenblatt des konkreten EEPROM. Im Prinzip ist das immer der einzig 
zielführende Weg, um mit irgendeinem Device über irgendeinen Bus zu 
kommunizieren: man liest als allererstes das verdammte Datenblatt. Und 
zwar sowohl das des Hosts als auch das des anzusteuernden Devices...

Autor: Francisca93 (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ein konkretes EEPROM ist in der Aufgabe ja nicht genannt, da steht 
lediglich "serielles EEPROM". Ein Datenblatt suchen ist also schlecht 
möglich, und in der Klausur hat man es eh nicht.

Vermutlich meint der Prof den "Normalfall" eines EEPROMs (vielleicht 
weiß er auch gar nicht, dass es verschiedene gibt, er ist eben so ein 
Theorie-Nerd).

Also wenn man diesen "Normalfall" annimmt, wäre meine Lösung richtig?

Autor: Matthias S. (Firma: matzetronics) (mschoeldgen)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Die I²C Adresse '0xA0' ist die typische für Chips der 24(LC)02 Klasse. 
Dafür spricht auch der Restart nach dem Schreiben der EEPROM Addresse 
fürs darauf folgende Lesen.
Das es sich um ein sehr kleines EEPROM handelt, kann man auch daraus 
schliessen, das die Adressierung in einem Byte ausreicht.

: Bearbeitet durch User

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.