Hallo,
bin gerade etwas verwirrt. Ich möchte gerne zwei I2C-EERPOMs am selben
Bus anschließen. Ich dachte eigentlich ich könnte den EEPORMS über die
Pins A1-A3 unterschiedliche Adressen verpassen und sie dann ansprechen.
Beim Datenblattstudium musste ich lesen A1-A3 not connected (Microchip
24LC01B). Soll das heißen, ich kann keine zwei EEPORMs am selben Bus
betreiben, weil die sich die Adressierung sparen?
Peter
PS: ich brauch zwei getrennte EEPROM, es geht nicht drum mehr Speicher
zu haben...
hmm?? adressleitungen?? hä? serielle eeproms haben doch nur die
selektierung, data, clock, writeprotect, vcc & gnd, oder?
wieso jetzt adressleitungen???
hä?
Stimmt schon, je nach Speichergrösse kannst du verschieden viele an
einem Bus betreiben. Bleiben wir mal bei einem einfachen Beispiel:
24C02, 2kbit, davon kannst du 8 Stk an einen Bus hängen
(unterschiedliche Adressen an A0-A2 gelegt)
beim 24C04 nur 4 Stk oder 2 Stk 24C08 oder 1 x 24C16, immer max.
16kBit, auch gemischt.
Bei den grösseren (ab 24C32) wird anders addressiert (die
Softwareadresse ist länger), aber das Spiel wiederholt sich.
@Markus_8051
das wusste ich schon, das ab einer gewissen größe die Adresse benutzt
wird um die Seite innerhalb des EEPROMs zu adressieren ;),trotzdem
danke.
Es scheint aber wirklich so zu sein, das man von Microchip nur einen an
den Bus hängen kann, egal wie groß er ist, da einfach die externe
Adressekodierung ignoriert wird. Hab mir jetzt bei Reichelt welche von
ST bestellt ( ST 24C01 MN ), hoff mal dass das jetzt funktioniert.
btw, EEPROMs, ich weis bei den FTDI-Chips sind das keine I²C, aber
welche sollte man den da verwenden, in den AppNotes steht nur 93C46 es
gibt aber A(128x8) u. B(64x16). Ich hab das mal mit 'nem EE 93LC46
A/SN von Reichelt aufgebaut, läst sich aber nicht mit der Software von
FTDI Programmieren (Schaltplan ist einer aus den Appnotes).
Peter
@ Peter Kasi
ich würde schon alleine aus einfachheit mit den 128x8bit anfangen!
alleine schon aus gründen der einfachheit.
so ein ftdi chip hat bestimmt nicht soviel ram über, das er immer
mehrer bytes schreiben/auswerten kann. daher würde ich denken, das er
ein nur eine byte schreiben/lesen kann.
^^ das sag ich jetzt einfach mal so, ohne ins datenblatt gesehen zu
aben!!! es sind auch nur vermutungen!!!
@KoF
war auch so mein Gedanke, hat aber nicht funktioniert. Hab gerade mal
ein wenig gegoogelt und gesehen das bei irgendeinem Kit die B-Variante
beiliegt. Irgendwo zwischen kryptischen Zeichen hab ich auch mal
FT232BM ... 64x16Bit ausmachen können. Ich werd's mal mit einem 16Bit
versuchen.
Vieleicht hat das ja hier jemand am laufen und kann mal konkrete
aussagen machen (neuen Thread will ich aber jetzt nicht extra
aufmachen)
Gruß
Peter
Naja, zu mindest ist es 100pro unmöglich einem Baustein zwei Adressen zu
geben, schließlich wird über A0 A1 A2 jeweils einen TTL Pegel 0V oder 5V
angelegt, wo beispielsweise A0=0V;A1=0V;A2=5V ist. das hat zur Folge,
das der Baustein die Adresse 4 hat, nach binär 1-0-0. Bedenke das
A0A1A2 nicht mit dem I²C-Bus verbunden sind. Theoretisch müsste es aber
möglich sein zwei Bus systeme parallel laufen zu lassen. Entscheident
ist nur, das du den einzelnen Bausteinen keinen "zweiten namen" geben
kannst. Hier wird nur mit betriebsspannung gearbeitet, und NICHT mit
SDA.
MfG Malte
Danke mal Tomasz,
inzwischen hab ich es mit 16Bittern versucht und es hat funktioniert
:)
@Malte ???? (soll bitte nicht als Angriff verstanden werden, ich
versteh bloß nicht den zusammenhang).
Hab das ganze jetzt mit zwei Bausteinen von ST am laufen und
funktioniert einwandfrei.
Gruß
Peter