mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI über Optokoppler


Autor: Ob der Koppler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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 ;)

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: David V. (dadido3)
Datum:

Bewertung
0 lesenswert
nicht 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 ;) )

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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:
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:
Response time
Rise time tr  VCE = 2V, I C = 2mA, RL = 100Ω    -  4   18 µs
Fall time tf                                    -  3   18 µs 
sieht es mit 18+18us nicht gut aus. 27kBit/sec dürften da sicher drin 
sein.

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: David V. (dadido3)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Bensch (Gast)
Datum:

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

Autor: aha (Gast)
Datum:

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

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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 ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.