Hallo, ich möchte den UART eines Atmegas zur Steuerung und Ausgabe von Messdaten mittels angeschlossenem PC verwenden. Ich hätte das Ganze gerne galvanisch getrennt, also Optokoppler. Ich möchte keine umständlichen DC-DC-Wandler für die Hilfsspannung einsetzen, sondern einen nicht genutzten Portpin der seriellen Schnittstelle, der auf "0" (=+12V) gesetzt wird, dazu verwenden. Da die seriellen Schnittstellen ja nach der Norm den Strom auf ca. 20mA begrenzen, könnte ich doch RXD auf der PC-Seite direkt mit dem Stromversorgungspin verbinden und beide mit dem Phototransistor im Optokoppler nach Masse ziehen. Evtl. noch eine Diode davor, falls der Stromversorgungspin mal auf "1" (-12V) steht. Zum Senden (von PC-Seite aus) würde einfach die LED im (zweiten) Optokoppler über einen Vorwiderstand (kann wegen eingebauter Strombegrenzung evtl auch entfallen) und eine antiparallele Schutzdiode an TXD angeschlossen. Meint ihr das würde so gehen? Welchen (zweifach-) Optokoppler sollte ich am besten nehmen? Kann ich mich auf die 20mA-Begrenzung auch bei modernen onboard-Schnittstellen verlassen? Wie sieht es mit Notebooks aus, die ja oft nur +-5V an der RS232 bringen? Achja, ich brauche natürlich keine Handshakeleitungen, und von der Geschwindigkeit reichen mir auch 9600 Bit/s. Gruß, Stefan
Geh mal besser davon aus, dass du nur 8 mA verfügbar hast und das die Spannung dabei auch vielleicht nur +-5V ist. Ist so meine Erfahrung. Beim Optokoppler musst du auf einen entsprechenden CTR achten. Winfried
Hallo Winfried, danke für die Infos. Ich werd es mal mit einem CNY74-2 versuchen und entsprechende Schutzwiderstände und -Dioden vorsehen. Auch wenn nur 8mA verfügbar sind, auf die Strombegrenzung kann ich mich doch schon verlassen, oder? Ich würde das Gerät auch gerne mal am Notebook betreiben, und da läßt sich nix reparieren... Stefan
Stefan:"Wie sieht es mit Notebooks aus, die ja oft nur +-5V an der RS232 bringen?" Ich dachte bis jetzt ,das der +-12V Pegel fester Bestandteil der RS 232 Spezifikation ist. Kann es denn funktionieren ,wenn ein Notebook +-5V bringt ,aber die Gegenseite ja erst <=+12 V als "High" erkennt?
Hallo Patrik, Ja, laut der Spez. ist +-12V vorgesehen, aber fast alle Geräte interpretieren auch schon TTL-Pegel (0V/5V) korrekt. Manche Notebooks und Onboard-Schnittstellen liefern deshalb erheblich weniger, z.B. eben +-5V. Stefan
Auf die Strombegrenzung kannst du dich verlassen. Da sollte nichts anbrennen. Aber nichts geht über eigene Erfahrungen: Miss doch einfach mal den Kurzschlußstrom gegen Masse. Winfried
Ich denke mal, ich werde einfach die Widerstände so berechnen, daß auch bei 5V noch sicher geschaltet wird, und gleichzeitig auch bei 12V ca. 10mA nicht überschritten werden. Dann bin ich auf der sicheren Seite. Stefan
bleibt noch das Problem der -xxV. Den RxD-Eingang einfach zwischen Masse und +xxV umzutasten, wird bestenfalls an einigen Computern funktionieren, eine ordentliche Lösung ist das nicht. Nochwas: der Ruhezustand der RxD-Leitung ist -xxV. Und mit dem CNY74 könnte es auch Probleme mit dem LED-Strom geben. Es gibt sicher Gründe, galvanisch zu trennen. Was sind deine?
hi, stimmt, zwischen 5v und masse umtasten geht nur bei neueren rechnern, mit den kadetten 8088 und manchen 286-boards kriegt man probleme (wer setzt die noch ein???), da waren die schnittstellen noch streng nach v24 standart ausgebildet. alle 16550 uart's lesen zuverlässig den pegelwechsel von 5v nach gnd und zurück, probier mal: ein bc546 als inverter, 4k7 (-> 1mA strom) nach pc-rx, funtzt tadellos. das ganze hat natürlich einschränkungen wenn die rs232 parameter bis zur grenze ausgereizt werden, aber 9600 baud, 5m kabel geht tiptop. gruss, harry
ist doch kein Problem der verwendeten UARTs, sondern eine Frage der eingesetzten Treiber, also in der Art des MAX232 (die natürlich im PC nicht eingesetzt werden, sondern eher was in der Richtung 1488/1489)
ah, wieder mal supergenau. okay, damit's korrekt wird. ... alle 16550 uart's / und das ganze geraffel, was hintendranne hängt / lesen ... jedenfalls funktioniert's, war das nicht die frage???
Was die Treiberseite (z.B. MAX232) anbelangt, habe ich gute Erfahrungen mit der Atmel-Standardschaltung (siehe Anhang) gemacht. Funktioniert auch noch runter bis 2 Volt, das macht ein normaler MAX232 schon nicht mehr mit. Vielleicht kann man da ja die Transistoren irgendwie durch Optokoppler ersetzen... Gruß Ingo
Was übrigens die Pegel der RS232-Norm betrifft: +3 .. +15V und -3 .. -15V sind der gültige Bereich für Empfänger.
@crazy horse: Der Grund für die Potentialtrennung: Ich will meine Computer (besonders onboard-RS232 und Notebook) auf jeden Fall schützen, auch wenn etwas schiefgeht. Ich steuere über PWM mehrere induktive Lasten (Motoren), muß gleichzeitig aber die Gesamtstromaufnahme mit einem Shunt messen; ich müsste also die PWM-Endstufen mit Optokopplern und auch noch die Strommessung mit einem (analogen) Koppler versehen, um den ganzen µC frei von Einflüssen von der Hochstromseite zu halten. Außerdem sollen auch noch die +5V über einen gut abgeblockten Regler aus der Stromversorgung für die Motoren verwendet werden. Da dachte ich, es wäre einfacher, auf der RS232-Seite die Trennung zu machen, und im Extremfall einen gebratenen Atmega zu haben, ist erträglicher, als ein kaputter serieller Port am Notebook. Stefan
ich sag mal, in dem Fall brauchst du keine Trennung. Echte Probleme kommen von grob unterschiedlichen Massepotentialen/schleifen und den damit verbundenen Ausgleichsströmen, sollten bei dir nicht vorkommen. Die Schnittstellenbausteine können einiges ab. Für Ängstliche: in die Rx und Tx-Leitung je einen 100Ohm-Widerstand und eine bidirektionale TVS-Diode von Rx und Tx nach Masse.
@crazy horse: Ok, vielen Dank erstmal für die Infos. Du hast recht, unterschiedliche Massepotentiale sollten eigentlich bei mir nicht auftreten. Vielleicht sollte ich doch auf die Trennung verzichten. Dann kann ich auch eine "richtige" RS232 mit einem MAX232 o.ä. einbauen und muss nicht ewig dran rumpfuschen bis es auch mit dem Notebook geht. Noch was zu den TVS-Dioden: Vom Prinzip her kann man die sich wie eine bidirektionale Z-Diode vorstellen, oder? Dann bräuchte ich also welche mit knapp über +-12V Durchbruchspannung? Gruß, Stefan
Würden sich in deinem Fall nicht Photomos-Relais anbieten ? Auf PC-Seite werden nur 2mA zum durchschalten der LED benötigt und die Geschwindigkeit ist auch kein Problem, da ja komplett Halbleiter. Thorsten
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.