I2C-Bus über Optokoppler ansteuern - geht das?

Gast #349312
Lesenswert?

Hallo zusammen,

ich möchte einen mega16(slave), über I2C, an einen mega64(master)
betreiben.
Da der mega16 aber an hohes Potential liegt wollte ich die Anbindung
über Optokoppler vornehmen. Aber dann geht die BUS-Fähigkeit verloren.

Kennt jemand Möglichkeiten, wie ich beide Forderungen(gal.Trennung und
Busfähigkeit) verwirklichen kann?


Vielen Dank für Eure Hilfe!

Herr Philips
#349314
Lesenswert?

>Da der mega16 aber an hohes Potential liegt wollte ich die Anbindung
>über Optokoppler vornehmen

Das ist nicht ganz einfach, denn gerade die SDA-Leitung ist
bidirektional.

d.h. der Master und der Slave müssen diese Leitung gegen GND schalten
können.

Man könnte mit vielen Einschränkungen einen Datenaustausch vom Master
zum Slave realisieren, wenn man beispielsweise das Antwort-Bit
(Acknowledge) nicht abragt.

Funktioniert aber nur bei einem Software TWI.


Bernhard
Gast #349316
Lesenswert?

@Bernhard: Es gibt schon fertige Lösungen...
Sowas gibt es ja auch für CAN oder 2-Wire-RS485...

Ob der P82B96 auch galvanisch trennt, müsste im Datenblatt stehen.
Philips hat übrigens eine ganze Reihe von I²C-Bausteinen... Einfach mal
auf deren Internetseite gucken!
Gast #349327
Lesenswert?

@Oliver (Datum: 04.07.2006 17:55),

> mit normalen Opto's gehts auch, siehe PDF File im Anhang.
> Ob das auch gleich mit 400kHz geht weiß ich nicht, test it.

Die vorgeschlagene Schaltung mit dem Optokoppler 6N139 funktioniert
sicherlich nicht zuverlässig mit 400kHz.

1997 hatte ich eine ähnliche Schaltung Nr.964062-1 aus Elektor
(vermutlich Heft 7-8/96) gebaut und getestet. Die war ebenfalls mit dem
6N139 und hatte bei 100kHz nicht funktioniert.

Der Grund:
Nach I2C-Spezifikation (100kHz) soll SCL tHIGH mindestens 4uS sein.
Aber, Optokoppler 6N139 kann dies wegen den vorgeschalteten
Strombegrenzungswiderstände nicht zuverlässig einhalten weil tPHL MAX.
und tPLH MAX. zu gross sind. (Stichwort: Propagation delay time to
logic Low, bzw. to logic High. Siehe Datenblatt.)

Durch reduzierung der Widerstände hatte ich den Strom erhöht von etwa
1mA auf etwa 2,3mA und dadurch das Propagation delay vom 6N139
verkürzt.
Dann hatte es (experimentell auf Labortisch) bei 45kHz zuverlässig
funktioniert mit einen PCD8584 als I2C-Master.

Für mich war die Schaltung damals zu langsam und unbrauchbar.

Auch in der vorgeschlagene Schaltung (PDF File) werden die 6N139 einen
SCL-Takt von 100kHz nicht schaffen.
Obwohl es möglicherweise durch zufall vielleicht mal funktionieren mag,
wenn mann glücklicherweise etwas schnellere 6N139 erwischt, ist dies
kaum hardwaremässig reproduzierbar.

Vielleicht gibt es aber heute einen anderen, besser geeigneten
Optokopplertyp.

ADUM1250 sieht da aber vielversprechender und einfacher aus.

Gruss
Peter -NL
#505032
Lesenswert?

hallo,

ich habe zwei Samples vom ADUM1250 ergattern können und ich bin 
begeistert!

400khz absolut kein Problem, bei meinem Test Programm habe ich 100 mByte 
Daten (+start, stop, Adress, etc. Overhead) bei 400hkz mehrfach 
fehlerfrei übertragen bekommen, ohne irgendwelche zusätzliche 
Beschaltung, nur der ADUM1250 und die üblichen Pull Up's.

Ich bin sehr glücklich mit dem Ding, ist ein großer Gewinn. Vorher war 
die galvanische Trennung deutlich Platz intensiver und sehr 
unzuverlässig.

Das Problem ist nun die zukünftige Beschaffung.

Ich habe bei Farnell sowie Reichelt angefragt, beide können den ADUM1250 
nicht beschaffen, nur von CSD electronics habe ich ein Angebot bekommen:

ADUM1250ARZ

Stückpreise
Ab 1 Stk 8,19 €
Ab 2 Stk 7,99 €
Ab 5 Stk 7,49 €

Lieferzeit ca 10 Tage

Kennt vielleichtt sonst jemand eine Bezugsquelle?
#505455
Lesenswert?

Spoerle ist z.B. noch'n Analog Devices Dissi, listet aber auch 
Lagerbestand=0.

Bei DEN Preisen ist es ja günstiger zwei µCs z.B. über RS485 iCoupler 
(Preis um die 3,80) zu koppeln und einen davon (z.B. einen Tiny26 für 
ca. 'nen Euro) dann auf der anderen Seite I2C handeln lassen...

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