PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Adresse PCF8582C-2P [I2C EEprom]



Olle_Filzlaus
08.03.2007, 13:49
Hallo,

ich habe das Problem das ich die Adresse von dem I2C-Bus Eeprom PCF8582C-2P nicht kenne. Im Datenblatt steht nichts drin. Auch die Pin gleichen Datenblätter habe ich durchsucht (also 8570, 8571, 8572).

Kann mir bitte jemand die Adresse dieses EEprom sagen. Bin gerade dabei mich in den Bus reinzuarbeiten.

thx Arno

uwegw
08.03.2007, 15:42
Im Datenblatt voon Phillips gibts ne Tabelle "Device Selection". Da ist der Aufbau der Adresse beschrieben.

1_0_1_0_A2_A1_A0_RW

A0 A1 A2 entspricht em Pegel an diesen Pins, man kann also acht dieser EEPROMS gleichzeitig an den Bus hängen. RW wählt aus ob Lese-oder Schreibzugriff. In den meisten I2C-Libs lässt man es bei der Konstanten mit der Adresse auf null und setzt das letzte Bit, wenn man lesen will.

Olle_Filzlaus
08.03.2007, 18:30
Hallo,

das mit 1_0_1_0_A2_A1_A0 ist mir schon klar. Auch das man damit mehrere Chips an einen Bus hängen kann.

Aber: Man kann die Adresse in einem Bestimmten bereich wählen. Wie ist der Bereich. Wie muss ich A2 - A0 beschalten um deine bestimmte Adresse einzustellen (also mit VCC und GND, dass weiß ich).

Ich kann ja nicht von 00 bis FF alle Adressen ausprobieren. Weiß ja nicht ob meine Testschaltung funzt.

thx arno

Yossarian
08.03.2007, 19:06
Hallo
steht im Datenblatt Seite 8.
Mit freundlichen Grüßen
Benno

uwegw
08.03.2007, 19:24
die (Schreib-)Adressen gehen von 1_0_1_0_"0"_"0"_"0"_0 = dez. 160 bzw hex. A0 bis 1_0_1_0_"1"_"1"_"1"_0 = dez.174 bzw hex.AE.

Du suchst dir ne frei Adresse zwischen 160 und 174 (nur gerade zahlen!) aus, rechnest diese nach binär um, und schon weißt du, welche Adresspins du wie beschalten musst.

Olle_Filzlaus
08.03.2007, 19:29
ok, ich döddel habs kapiert :-)

1010 = A

3 Bit ergeben 8 Varianten, oder?

also die adressen A0 bis A8.

habe nur so dämlich gefragt, weil es auch chips gibt, wo es ne kleine tabelle mit den adressen gibt, deswegen habe ich hier auch danach gesucht.

thx for help

Arno

edit: ok, uwegw war bissel schneller. Danke.

Yossarian
08.03.2007, 22:41
Hallo
nein, nicht ganz.
Von A0 bis AF, wobei das unterste bit über Lese- oder Schreibzugriff entscheidet.
Das heißt A0 ,A1 erster Chip. A0-> schreiben, A1 ->lesen
Weil das im Prinzip zwei Adressen für einen Chip wären, gibt es auch die Betrachtungsweise:
Die Adresse besteht aus 7bit (7-1).Es wird also bit1 als bit 0 der Adresse gelesen.D.h der erste Chip hätte Adresse 50, der zweite 51 usw.
Bit 0 wird gesetzt zum lesen und gelöscht zum schreiben.
Ich persönlich bevorzuge die erste Variante.
Mit freundlichen Grüßen
Benno

Olle_Filzlaus
09.03.2007, 07:52
Mhm...

und für was sind die R/W Ports da??? Die sind doch das untere oder????.

die ersten 4 sind die feste Adresse. die nächsten 3 sind die Variablen Bereiche und der letzte ist für lesen und schreiben.



The next three significant bits address a particular device
or memory page (page = 256 bytes of memory). A system
could have up to eight PCF8582C-2 (or four PCF8594C-
containing two memory pages each or two PCF8598C-
containing four memory pages each, respectively) devices
on the bus. The eight addresses are defined by the state
of the A0, A1 and A2 inputs.
The last bit of the slave address defines the operation to
be performed. When set to logic 1 a read operation is
selected.
Address bits must be connected to either VDD or VSS.


damit ergibt sich die Adresse (A2 - A0 auf GND) 1010 000.
lesen 1010 000 1 und schreiben die 1010 000 0

ich werde das dann gleich mal ausprobieren. mal sehen ob es geht :-)

thx for help

arno