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
>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
Hallo Wolfram, perfekte Hilfe von Dir, besten Dank! Schönen Gruß Herr Philips
@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!
Bernhard und DiWM-R: da gibt es die AN460, unter: http://www.semiconductors.philips.com/acrobat_download/applicationnotes/AN460_1.pdf
Danke Rahul, ich werd mal etwas herumstöbern ;) Bernhard
>da gibt es die AN460
Siehste!
PS: IMHO hat Philips den I²C-Standard entwickelt. Andere nennen das
gleiche Ding anders, wegen der Lizenzgebühren...
Muß es unbedingt I2C sein? ICh hatte das gleiche Problem und bin auf SPI umgestiegen. Funktionierte einwandfrei. Grüße René
>bin auf SPI umgestiegen
nennt man sowas nicht "unsportlich"?
Hi Herr Philips, wie wärs mit einem ICoupler von Analog (www.analog.com)? I2C Isolator ADUM1250 Gruß Volkmar
Moin Moin, mit normalen Opto's gehts auch, siehe PDF File im Anhang. Ob das auch gleich mit 400kHz geht weiß ich nicht, test it. mfg Oliver
@Oliver, dafür brauchst Du aber noch ein paar zusätzliche Bauteile. Der Analog Chip braucht keine externen Komponenten. Wenns günstig sein soll, dann Deine Lösung, wenn man Platz sparen muss und wenig Aufwand haben will, dann den Chip. Gruß Volkmar
@Volkmar, Yo, aber wenn man das IC nur umständlich bekommt, ist es eine alternative. Zumal der P82B96 nur kapazitiv trennt, nicht optisch wie ich kurz überflogen habe und eine echte mit 2 Stromversorgungen ist es auch nicht. Oder habe ich was verstanden miss :-) ? mfg Oliver
@Oliver M.: Fuer den P82B96 gibt es eine Applikationsnote fuer eine Isolation mit oktoko0pplern. @Volkmar: Der ADUM1250 ist ein guter Tip, aber der Baustein selbst ist noch Pre-Release..
@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
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?
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...
@ Stefan Wimmer Dafür hast Du aber einen enormen Platzbedarf! Gruss, Jan
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.