24LC02B mit (scheinbar) seltsamer Adressierung

Gast #5592904
Lesenswert?

Hallo,

ich habe hier seltsame EEPROMs 24LC02B von Microchip,
die über einen ACK-Scanner mit 16 Adressen (160 bis 175, also 8 mal 
Lesen&Schreiben) ansprechbar sind.
Laut Datenblatt sind die Pins A0 bis A2 nicht benutzt (Punkt 8.4) und 
die korrespondierenden I2C-Adressbits unberücksichtigt (Punkt 3.6).
So lassen sich aber nicht acht sondern nur eines davon gleichzeitig am 
I2C-Bus verwenden.

Ich habe hier bei der Recherche dieses EEPROM-Types noch nie etwas über 
so eine Adressierung gelesen. Habe ich einen Denkfehler?
Ich hoffe, ich war verständlich.
Angehängte Dateien:
Gast #5592907
Lesenswert?

Rolf schrieb:
> ich habe hier seltsame EEPROMs 24LC02B von Microchip,
> die über einen ACK-Scanner mit 16 Adressen (160 bis 175, also 8 mal
> Lesen&Schreiben) ansprechbar sind.
> Laut Datenblatt sind die Pins A0 bis A2 nicht benutzt (Punkt 8.4) und
> die korrespondierenden I2C-Adressbits unberücksichtigt (Punkt 3.6).
> So lassen sich aber nicht acht sondern nur eines davon gleichzeitig am
> I2C-Bus verwenden.

Ohne die Adressleitungen A0-A2 kannst du nur eines an einem Bus 
verwenden.
Dass dein Scanner das Teil unter 8 Adressen findet, liegt wohl daran, 
dass der Chip auf die Adresse 1010xxx reagiert, die kommt beim 
Durchprobieren halt 8 mal vor.
Gast #5592911
Lesenswert?

Das ist ganz normal für einen I2C EEPROM. Je nachdem ob der Adress-Pin 
mit Masse oder Versorgungsspannung verbunden ist hat das jeweilige 
Device eine andere I2C-Adresse. Mit den 3 Adress-Pins kannst du also 
(mit dem gleichen Baustein) 2^3  also 8 verschiedene I2C-Adressen an 
einem I2C-Bus haben. Wenn es die Pins nicht gäbe, so gäbe es nur eine 
Adresse und dementsprechend könnte jeder I2C-Bus nur einen dieser 
Speicherbausteine dran haben. Ansonsten hätten 2 Devices die gleiche 
Adresse und das geht nicht.
#5592914
Lesenswert?

Dann macht er doch genau das, was im Datenblatt steht: er ignoriert die 
unteren 3 Adressbits - wo ist dein Problem?
Gabs schon bei anderen Typen.
Wer mehr Speicher braucht, schaltet eh nicht 2 oder mehr an den Bus, 
sondern nimmt gleich die passende Grösse in einem Chip.
Das ganze dient einfach der Kostenminimierung, man spart sich 
Adresslogik und das bonden für die 3 Pins. Alles gut.
Gast #5592916
Lesenswert?

Unberücksichtigt bedeutet wohl, dass es egal ist, welcher Pegel an 
dieser Stelle über den Bus kommt. Das führt dazu, dass Du dasselbe 
mehrfach im Adressraum siehst (man nennt es auch gespiegelt). Und das 
mit Ansage. Dein IC macht also das, was im Datenblatt beschrieben ist.
Es ist ja vom Speicherplatz her ein eher kleines Eeprom.Microchip ist 
beim Design wohl davon ausgegangen, dass man erstmal ein größeres 
einsetzt, bevor man mehrere davon an den Bus hängt. Die größeren 
dekodieren dann alle Adressbits.
Gast #5592919
Lesenswert?

Hallo Rolf,
ich bin auch schon mal in die gleiche Falle getappt. Das ist im 
Datenblatt nicht gut dargestellt. Die Pins werden ja mit A0, A1 und A2 
bezeichnet, sind aber intern nicht verbunden.
Es gibt aber von Microchip auch eine korrekte U 2C-Variante. Ich hab den 
Typ jetzt gerade nicht parat.
Ich hoffe, dass mir der Fehler nicht mehr passiert.
Gast #5592921
Lesenswert?

> Das ist ganz normal für einen I2C EEPROM. Je nachdem ob der Adress-Pin
> mit Masse oder Versorgungsspannung verbunden ist hat das jeweilige
> Device eine andere I2C-Adresse.

[ ] Du hast das Datenplatt gelesen.

> Das ganze dient einfach der Kostenminimierung, man spart sich
> Adresslogik und das bonden für die 3 Pins.

..und man bekommt ihn ohne Funktionseinschränkungen auch in einem 
sot23-5 unter.

Wer mehr davon an einem Bus anschließen will greift zu einem 
I2C-Muliplexer (oder behelfsweise zu Analogschaltern).
#5594230
Lesenswert?

Bei den etwas größeren I2C EEPROMs (04, 08, 16) werden die 
Adressleitungen teilweise ebenfalls nicht ausgewertet, aber der Baustein 
verwaltet unter den verschiedenen I2C-Adressen jeweils eine andere 
256-Byte Page.
Die kleinen I2C EEPROMs haben im Protokoll nämlich nur 1 Byte für die 
Adressübertragung  vorgesehen. Also Aufpassen, was die eigene 
EEPROM-Routine da sendet!

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