Forum: Mikrocontroller und Digitale Elektronik SPI über Optokoppler


von Ob der Koppler (Gast)


Angehängte Dateien:

Lesenswert?

Guten Tag,

Ich hab mal ein paar Fragen zu dem Optokoppler PC847/817...

Also, mein Vorhaben ist allgemein gesagt 2 Mikrocontroller (Atmega)
bidirektional und galvanisch getrennt miteinander zu verbinden.
Da hab ich mir überlegt dies über die SPI schnittstelle zu realisieren,
da dies mit TWI wohl nicht so einfach wird.

So, jetzt kommt das Bild ins Spiel.
(Zur Info: Die Fähnchen mit 1_... kommen vom Master
und 0_ ist dann wohl der Slave. Disable interessiert hier mal nicht ;) )

Und jetzt die Fragen:

1.) Könnte das so funktionieren?
    Wenn jetzt zum Bleistift der Mikrocontroller 1_SCK auf (D)GND zieht,
    dann würde ja auch 0_SCK auf (A)GND gezogen werden.

2.) Ich hab noch nichts mit SPI gemacht,
    ist es möglich die internen Pullups für die Eingänge zu aktivieren?
    Sonst müsste ich externe Widerstände anbringen, ist ja nicht 
schlimm,
    muss aber nicht sein ;)

3.) Falls es funktioniert, wird es wahrscheinlich nicht so rasend 
schnell
    sein. Gibt es schnellere Optokoppler? Es gibt ja den 6N137.
    Aber der ist erstens viel zu groß, und mit mehreren Kanälen
    hab ich auch keinen gefunden.
    Es sollten schon folgende Bedingungen erfüllt sein:
     - Er sollte bei Angelika erhältlich sein.
     - Möglichst kleines Gehäuse (DIP4 ist Optimal),
       oder halt mehrere Koppler in einem Gehäuse.
       Insgesamt muss ich auf 5 Koppler kommen.
     - Und wie gesagt die Geschwindigkeit.

Das wars dann erstmal,
vielen Dank schonmal im Vorraus ;)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Könnte das so funktionieren?
Ja, aber sieh dir mal die Richtung von MOSI und MISO nochmal an. Einer 
ist falsch :-/

> Sonst müsste ich externe Widerstände anbringen, ist ja nicht
> schlimm,  muss aber nicht sein ;)
Mach an die Kollektoren der OK Pullups  (max. 2k2), damit das nicht 
allzu langsam wird. Die internen Widerstände (falls du sie überhaupt 
eingeschaltet bekommst) sind viel zu hochohmig und zu schlecht 
definiert.

> Falls es funktioniert, wird es wahrscheinlich nicht so schnell sein.
Reicht dir eine maximale Übertragungsgeschwindigkeit von ca. 100kBit/sec 
(eher weniger) aus?

> Es gibt ja den 6N137.
Ja, nimm den. Alle anderen scheitern schon an Forderung 1:
>    Es sollten schon folgende Bedingungen erfüllt sein:
>     - Er sollte bei Angelika erhältlich sein.

von David V. (dadido3)


Lesenswert?

Gut, dann lag ich ja nicht so falsch ^^

Also, wo meinst du denn ist MISO & MOSI falsch. Ich kann da nichts 
falsches erkennen :/

Vereinfacht sieht das Ganze so aus:

Master       |        Slave

SCK      -------->    SCK
MOSI     -------->    MOSI
MISO     <--------    MISO
SS       -------->    SS

Dann noch ne andere Frage die mir gerade einfällt:
Benötige ich Slave Select, ich hab nämlich nur die beiden 
Mikrocontroller.

Dann zur Geschwindigkeit:
Wenn wirklich 100kbit/s möglich ist, dann ist das vollkommend 
ausreichend.
Jetzt ist nurnoch die Dimensionierung des Pullup's unklar.

Im Datenblatt http://www.21icsearch.com/download.asp?id=1400895
denke ich mal, dass Fig.10 das Beschreibt. Aber welche Response Time 
bräuchte ich denn für die 100kbit/s (mit ein wenig Sicherheit)?

mfG

Dadido3
(aka Ob der Koppler ;) )

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Also, wo meinst du denn ist MISO & MOSI falsch. Ich kann da nichts
> falsches erkennen :/
Jetzt, wo ich auf die kleinen Labels sehe, sehe ichs auch. Es stimmt so.

Bei meinen Schaltplänen kann ich mitten durch alle beteiligten 
Optokoppler einen Strich ziehen, und dann ist das Potential 0 (AGND) auf 
der linken Seite, und Potential 1 (DGND) auf der rechten.
Du hast da offenbar eine andere visuelle Ausrichtung ;-)


> Wenn wirklich 100kbit/s möglich ist...
Ich habe mich für den 817 ein wenig zu weit aus dem Fenster gelehnt :-(
Im DB steht:
1
Cut-off frequency fc VCE = 5V, I C = 2mA, R L = 100Ω, - 3dB :  80 kHz
D.h. in der Praxis wirst du da geräumig weit weg bleiben müssen.
Wenn ich dann das sehe:
1
Response time
2
Rise time tr  VCE = 2V, I C = 2mA, RL = 100Ω    -  4   18 µs
3
Fall time tf                                    -  3   18 µs
sieht es mit 18+18us nicht gut aus. 27kBit/sec dürften da sicher drin 
sein.

von Bensch (Gast)


Lesenswert?

> Gibt es schnellere Optokoppler? Es gibt ja den 6N137.
    Aber der ist erstens viel zu groß, und mit mehreren Kanälen
    hab ich auch keinen gefunden.

Dualkoppler HCPL2531 oder 2631 DIL8
Gibt natürlich auch SMD oder die ADUM-Serie

von David V. (dadido3)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die Info.

Also der HCPL2531 hört sich klassse an, da hab ich dann sogar ein wenig 
Luft
nach oben. (Und wie ich sehe ist der 2631 Pinkompatibel, sehr Gut)

Jetzt noch die Frage ob mein Aufbau so Ok ist.
Nicht dass ich was vergessen/vertauscht hab und mich später ärgere ;)
Die Widerstandswerte hab ich aus dem Datenblatt
(Switching Characteristics --> Test Conditions), sind die soweit ok?

MfG

dadido3

von Pieter (Gast)


Lesenswert?

moin moin,

bau Dir mal eine Messschaltung für die Schaltzeitenmessung, diese sind 
auch bei gleichen Typen sehr unterschiedlich.
Schnelle wirds, wenn der Optokoppler nur die BE-Stecke eines Transis 
kurzschliessen muss.

MfG
Pieter

von Bensch (Gast)


Lesenswert?

Bis auf die krummen Widerstandswerte und fehlende Cs an Vcc und Gnd 
DIREKT am Koppler ist's ok.

von aha (Gast)


Lesenswert?

Neben den AnalogDevices ADuM1301 resp aduM1401 wuerde ich mir auch noch 
die kapazitiven TexasInstruments koppler anschauen. zB die ISO721

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Jetzt noch die Frage ob mein Aufbau so Ok ist.
Sieht ok aus.

> Die Widerstandswerte hab ich aus dem Datenblatt
> (Switching Characteristics --> Test Conditions), sind die soweit ok?
Ich habe den HCPL0600 (=6N137 SMD).
Meine Kollektorwiderstände sind 330 Ohm für 2MBit/s.
Für deine Baudrate sind die 1k9 Widerstände i.O.

Ein Tipp: nimm trotzdem eher 1k8 (Kollektor) und 330 Ohm (Diode), diese 
Werte sind geläufiger ;-)

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
Noch kein Account? Hier anmelden.