Forum: Mikrocontroller und Digitale Elektronik Max232 Spannungsversorgung via DTR und RTS der RS232-Schnittstelle


von Al (Gast)


Lesenswert?

Hallo,

habe mir für einen Ami dieses Interface nachgebaut:

http://www.techedge.com.au/vehicle/aldl8192/8192hw.htm

Der Spannungsregler 78L05 benötigt mindestens 7 Volt, um 5 Volt ausgeben 
zu können. RTS und DTR geben aber nur 5,5 Volt her.

An das Auto habe ich das Interface noch nicht geklemmt, aber die 
Diagnoseprogramme erkennen es und stufen es als funktionstüchtig ein, 
obwohl der Max232-Chip nur mit etwa 3,0 versorgt wird, da RTS und DTR 
nicht mehr erbringen.

Kann ich das Interface so verwenden oder sollte ich lieber statt RTS und 
DTR die Bordspannung des Wagens nutzen? Könnte ich Letzteres machen, 
ohne die Platine umlöten zu müssen?

Danke.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn Du einen Max3232 verwenden würdest, wäre die Versorgung mit nur 3V 
kein Problem; der Max232 aber will 5V sehen.

Statt des 7805 könntest Du auch einen LDO (d.h. einen Linearregler mit 
geringerem Spannungsabfall) verwenden.

Die Bordspannung des Autos kannst Du natürlich auch verwenden, 
allerdings solltest Du die nicht ohne weitere Filterung an den beiden 
Dioden da anschließen; das Auto-Netz ist als sehr verseucht anzusehen, 
mit Spannungsspitzen und heftigen anderen Störungen.

von Al (Gast)


Lesenswert?

Danke!

Mich überrascht, dass das Interface von den Diagnoseprogrammen ohne 
Probleme erkannt wurde, obwohl die Spannung nicht ausreichen dürfte.

Statt Bordspannung werde ich vorübergehend eine 9 Volt-Batterie als 
Spannungsquelle nutzen.

Langfristig wäre mir das mit der Bordspannung allerdings lieber. Wie 
könnte ich die von dir erwähnte Filterung am besten erreichen?

In ähnlichen Schaltplänen befindet sich trotz Bordspannungsquelle auch 
keine Filterung:

http://static.moates.net/imagery/gmecm/max232.jpg

http://www.staff.uni-marburg.de/~bernebur/g20/schalt/aldlstecker/ALDLSchaltplan.jpg

Oder ist die Filterung beim letzten Link gegeben?

Ich frage mich auch, ob es RS232-Schnittstellen gibt, bei denen DTR und 
RTS 12 Volt liefern. Laut Wikipedia soll das ja möglich sein. Dann wäre 
interessant, an welchen Geräten diese Schnittstelle aufzufinden wäre.

Mein Uralt-Laptop mit einer "echten" RS-232-Schnittstelle gibt 
jedenfalls ebenso nicht mehr als 5 Volt her.

Mir ist auch aufgefallen, dass im Datenblatt des Max232 Kondensatoren 
mit 1,0 uF angegeben sind. Ich habe welche mit 3,3 uF verwendet. Könnte 
es da Probleme geben?

Danke.

Gruß

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Welchen Pegel RS232-Schnittstellen liefern, hat mit dem verwendeten 
RS232-Treiber zu tun. "Legal" sind alle Pegel im Bereich zwischen 3V und 
15V (und -3V bis -15V).

Klassische RS232-Treiber wie MC1488/1489 bzw. SN75188/189 benötigen eine 
symmetrische Versorgungsspannung, neuere Treiber wie MAX232 und Co. 
erzeugen sich die Versorgungsspannung aus einer asymmetrischen 
niedrigeren selbst.

In den Onboard-Schnittstellen von Desktop-PCs werden immer noch 
Varianten der klassischen Treiber eingesetzt (nur nicht gestückelt aus 
separaten Empfängern/Sendern, sondern kombiniert in Form von SN75232) 
und diese mit ±12V versorgt. Damit kommen auch ±12V als Signalpegel dort 
'raus.

Der MAX232 (und seine vielen Geschwister) erzeugt sich die benötigte 
Spannung mittels zweier Ladungspumpen (die Hilfskondensatoren benötigen, 
die üblicherweise extern angeschlossen werden müssen). Die erste 
Ladungspumpe wird zur Verdoppelung der Versorgungsspannung verwendet, 
die zweite zur Erzeugung einer negativen zweiten Spannung gleichen 
Betrags.

Bei Speisung mit 5V stehen somit ±10V zur Verfügung. Bei Speisung mit 3V 
(und folglich einem MAX3232) sind das dann nur noch ±6V.

Das ist auch noch in der Spezifikation.

Signalleitungen von RS232-Schnittstellen zur "Phantomspeisung" zu 
verwenden ist altbekannt, man muss halt dabei bedenken, daß a) nicht der 
ideale Spannungshub von ±12V zur Verfügung steht und b) das ganze auch 
nur mit ein paar mA belastbar ist.

Das hat früher (also vor einem Vierteljahrhundert) gereicht, um serielle 
Mäuse damit zu betreiben -- ja, vor der PS/2-Schnittstelle (die vor der 
USB-Schnittstelle verwendet wurde) hat man Mäuse an der 
RS232-Schnittstelle betrieben.

Wenn also eine andere Spannungsquelle verfügbar ist (wie in Deinem 
Auto), dann ist es sinnvoll, die zu verwenden.

Keine der von Dir verlinkten Schaltungen sieht irgendwelche Filterung 
der Versorgungsspannung im Auto vor, hier mal ein paar Hinweise, wie man 
es besser machen kann:

http://www.ostermann-net.de/electronic/dse-faq.htm#F.23

> Mir ist auch aufgefallen, dass im Datenblatt des Max232 Kondensatoren
> mit 1,0 uF angegeben sind. Ich habe welche mit 3,3 uF verwendet. Könnte
> es da Probleme geben?

Du solltest Dir das Datenblatt genau der MAX232-Variante ansehen, die 
Du verwendest; das ist trotz des Namens kein Generikum. Es gibt MAX232, 
die 10µF benötigen (das war das ursprüngliche Design von Maxim), es gibt 
welche, die bereits mit 1µF glücklich sind (Maxim hat das Design 
irgendwann mal überarbeitet).
Nimm das Datenblatt vom Hersteller Deines MAX232.

: Bearbeitet durch User
von Al (Gast)


Lesenswert?

Danke!

Rufus Τ. F. schrieb:


> Bei Speisung mit 5V stehen somit ±10V zur Verfügung. Bei Speisung mit 3V
> (und folglich einem MAX3232) sind das dann nur noch ±6V.

Richtig. An Pin 2 messe ich knapp 10 Volt und an Pin 6 folglich etwa -10 
Volt beim Max232, wenn die 9-Voltbatterie die Schaltung versorgt.

Mit DTR und RTS messe ich entsprechend weniger.

> Das ist auch noch in der Spezifikation.

Bedeutet das, dass die Spannungsversorgung von DTR und RTS reicht, um 
das Interface einwandfrei betreiben zu können?

> Das hat früher (also vor einem Vierteljahrhundert) gereicht, um serielle
> Mäuse damit zu betreiben -- ja, vor der PS/2-Schnittstelle (die vor der
> USB-Schnittstelle verwendet wurde) hat man Mäuse an der
> RS232-Schnittstelle betrieben.

Ist lange her, aber solche Computer habe ich auch besessen, wo die Maus 
noch via RS232 angeschlossen wurde.

> Du solltest Dir das Datenblatt genau der MAX232-Variante ansehen, die
> Du verwendest;

Danach habe ich auch schon gesucht. Im Einsatz ist ein Max232cpe+. 
Finden konnte ich bisher nur das allgemeine Datenblatt, in dem die 
besagten Kondensatoren mit 1,0 uf aufgelistet sind. Ich hoffe, dass mit 
den von mir eingebauten 3,3 uf-Elkos nichts passieren kann.

von Al (Gast)


Lesenswert?

Habe es jetzt mal nur mit der 9V-Batterie statt DTR und RTS als 
Spannungsversorgung probiert. Das Interface wurde danach nicht mehr von 
der Software erkannt.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Wenn dein Uralt Laptop neben der RS232 auch schon eine USB Buchse hat, 
kannst du daraus die 5V ziehen. Oder aus einer PS/2 Buchse, sofern 
vorhanden:
https://en.wikipedia.org/wiki/PS/2_port

Al schrieb:
> Das Interface wurde danach nicht mehr von
> der Software erkannt.

Das Interface selber wird ohne Anschluss ans Auto nicht als solches 
erkannt, das klappt nur nach Anschluss an die ECU. Aber du kannst ohne 
den Anschluss nochmal die Spannungen messen, die aus dem Regler kommen 
und die am MAX232 stehen, z.B. die internen Ladungspumpen.

Meiner Erfahrung nach ist der MAX232 sehr empfindlich gegen 
Überspannung, 7V als Versorgung haben bisher hier jeden gekillt, der dem 
ausgesetzt war.
Seitdem lege ich zum Schutz des MAX immer noch eine 5,6V Z-Diode über 
seine Versorgung.

: Bearbeitet durch User
von Dietrich L. (dietrichl)


Lesenswert?

Al schrieb:
> Finden konnte ich bisher nur das allgemeine Datenblatt, in dem die
> besagten Kondensatoren mit 1,0 uf aufgelistet sind. Ich hoffe, dass mit
> den von mir eingebauten 3,3 uf-Elkos nichts passieren kann.

Das ist kein Problem, denn der angegebene Wert ist ein Mindestwert. 
Größer geht immer.
Übrigens: Es gibt auch welche, die mit 0,1µF auskommen. Wenn man 10µF 
verwendet, funktionieren alle MAX232-Varianten.

von Axel R. (Gast)


Lesenswert?

Gibt auch Mäxe, die verdreifachen die Versorgungsspannungen und sogar 
welche, mit integrierten Step-up, um zB in 1.8V Umgebungen eingestzt 
werden zu können.
http://datasheets.maximintegrated.com/en/ds/MAX3218.pdf

StromTuner

von Al (Gast)



Lesenswert?

Vielen Dank für eure Antworten, die sehr viel Licht ins Dunkle gebracht 
haben.

Den Plus-Pol der 9-Volt-Batterie hatte ich mit den beiden Dioden, die 
zuvor mit RTS und DTR verbunden waren, angeklemmt. Den Minus-Pol verband 
ich mit Buchse 5 des RS232-Anschlusses. Der Spannungsregler gab 5,06 
Volt aus und dennoch wurde das Interface von den Diagnoseprogrammen 
nicht mehr erkannt.

Erst als ich das Ganze wieder, wie im Schaltschema von Gargano 
aufgezeigt, zurückversetzte, ließ sich das Interface wieder von der 
Software erkennen.

Hier zwei Logs von Tests, die ich mit eine speziell dafür geeigneten 
Programm gemacht habe, ohne dass das Interface mit dem Auto verbunden 
war:

____________________________________________________________________

Executing Extended Test procedure
Setting Baud to  4800: >>Baud set to 4800

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Executing Extended Test procedure
Setting Baud to  8192: >>Baud set to 8192

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Executing Extended Test procedure
Setting Baud to  9600: >>Baud set to 9600

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Executing Extended Test procedure
Setting Baud to  19200: >>Baud set to 19200

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Executing Extended Test procedure
Setting Baud to  57600: >>Baud set to 57600

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Executing Extended Test procedure
Setting Baud to  115200: >>Baud set to 115200

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Extended Test complete, all phases passed
___________________________________________________________________

Executing Extended Test procedure

Setting Baud to  8192:
 >>Baud set to 8192

Beginning Phase1 COM test:
-->Enabling DTR only power...
-->Sending Test Data...
 >>DTR Power Phase1 Test Passed

Beginning Phase2 COM test:
-->Enabling RTS only power...
-->Sending Test Data...
 >>DTR Power Phase2 Test Passed

Beginning Phase3 COM test:
-->Enabling RTS + DTS power...
-->Sending Test Data...
 >>DTR Power Phase3 Test Passed

Beginning Phase4 COM test:
 Checking 8192 BAUD Compatability
 -->Enabling RTS + DTS power...
 -->Setting BAUD rate to 8192
 >>Baud set to 8192
    This will take several seconds...
 >>Transfer Speed Good!
   Expected   8192
   Measured   8222
   Acceptable Range = 7782 to 8600
   Difference 0,4%

Fast Test complete, all phases passed
____________________________________________________________________

Auch andere Programme gaben danach ein positives Feedback, wie ihr den 
Anhängen entnehmen könnt.

von Al (Gast)


Lesenswert?

Bei allen Screenshots, die hier angehängt sind, ist das Interface nur 
mit dem Laptop verbunden gewesen.

Gruß

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Al schrieb:
> dennoch wurde das Interface von den Diagnoseprogrammen nicht mehr
> erkannt.

Ohne gleichzeitig angeschlossenes Auto kann dieses "Interface" auch 
nicht erkannt werden. Wie sollte das gehen?

von Al (Gast)


Lesenswert?

Rufus Τ. F. schrieb:

> Ohne gleichzeitig angeschlossenes Auto kann dieses "Interface" auch
> nicht erkannt werden. Wie sollte das gehen?

Das weiß ich nicht, bin nicht vom Fach.

Ich weiß nur, was die Fahrzeug-Diagnoseprogramme mir melden, obwohl das 
Interface nicht mit dem Auto verbunden ist.
Wie diese Meldungen aussehen, lässt sich anhand meiner Screenshots 
erkennen.

Bei dem Testprogramm, dessen Logs ich hier bereitgestellt habe, ist es 
noch so, dass das Interface keinesfalls am Auto angeschlossen sein darf, 
wenn die Tests von der Software durchgeführt werden.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Rufus Τ. F. schrieb:
> Ohne gleichzeitig angeschlossenes Auto kann dieses "Interface" auch
> nicht erkannt werden. Wie sollte das gehen?

Na doch, kann doch gehen. Ich hatte das Loopback von TXD zu RXD (R1 zu 
T1) auch erst nicht gesehen, aber das kann eine Software schon prüfen. 
Was die auch kann, ist, mal Saft auf DTR und/oder RTS zu geben und dann 
zu testen, ob das Loopback funktioniert.
Wenn sie das zwingend so testet, kann man das Interface natürlich nicht 
anders speisen, man müsste zumindest eine Freigabe durch DTR und RTS 
konstruieren.

von Al (Gast)


Lesenswert?

Habe in der Zwischenzeit Gargano angeschrieben und ihn darauf 
hingewiesen, dass nur 5,5 Volt von DTR und RTS geliefert werden.

Seine Antwort:
______________________________________________________________________ 
_
A goodRS232 driver should supply 7 Volts as minimum logic level (3 Volts 
is the logic level minimum, so the river should have a higher value as a 
minimum).

How are you measuring 5 Volts - as an average?

Another option is to use an LDO regulator (or even a shunt zener)

Peter.
______________________________________________________________________ 
_

Habe eben mit meinem Velleman HPS140i-Oszi die Spannung von RTS und DTR 
gemessen und den Testlauf der Software durchgeführt. Die Spannung 
variiert während des Testlaufs zwischen -6,13 Volt und +5,1 Volt. Sieben 
Volt hab ich da nicht sehen können.

von Axel R. (Gast)


Lesenswert?

minus 6 und plus 5 ist doch ok...

StromTuner

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Angehängte Dateien:

Lesenswert?

Du kannst dir natürlich einen LDO oder auch die simple Schaltung mit 
5,6V Zenerdiode und Längstransistor machen, dann kommst du immerhin auf 
4,5V Speisung oder so.
Oder du baust dir eine Logik, die Power zwar von USB, PS/2 oder dem Auto 
zieht, aber durch Pegel an dem Diodenknoten von DSR und CTS 
freigeschaltet wird. Dann sollte das Verhalten wieder dem Original 
entsprechen.
Siehe das angehängte Plänchen.

Soweit ich das sehe, gelten +/- 5V als der minimale erlaubte 
Spannungshub des Senders bei RS232 mit Last, der Receiver soll +/-3 V 
Pegel mimimal erkennen. Die 7V des Autors sind also schon etwas 
optimistisch.

https://www.lammertbies.nl/comm/info/RS-485.html#char
https://en.wikipedia.org/wiki/RS-232#Voltage_levels

von Feldkurat K. (feldkurat)


Lesenswert?

Rufus Τ. F. schrieb:
> Ohne gleichzeitig angeschlossenes Auto kann dieses "Interface" auch
> nicht erkannt werden.

Das ist nicht wahr.

> Wie sollte das gehen?

Das sollte so gehen, daß die Signale RXD und TXD vom Rechner auf der 
Fahrzeugseite des Max232 über einen 1 Kiloohm Widerstand und eine Diode 
miteinander verbunden sind. (Vergleiche den Schaltplan im ersten 
Beitrag)
Dadurch kann das Programm das Vorhandensein des Adapters und seine 
Funktion feststellen.

Falls Dir das nicht in den Kram passt, kannst Du diese Antwort ruhig 
löschen. Dann schreibt eben jemand Anderer die Wahrheit hin.

-Feldkurat-

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Feldkurat K. schrieb:
> Falls Dir das nicht in den Kram passt, kannst Du diese Antwort ruhig
> löschen. Dann schreibt eben jemand Anderer die Wahrheit hin.

Was schreibst du für einen Unsinn - das ist doch schon längst geklärt:

Matthias S. schrieb:
> Rufus Τ. F. schrieb:
>> Ohne gleichzeitig angeschlossenes Auto kann dieses "Interface" auch
>> nicht erkannt werden. Wie sollte das gehen?
>
> Na doch, kann doch gehen. Ich hatte das Loopback von TXD zu RXD (R1 zu
> T1) auch erst nicht gesehen, aber das kann eine Software schon prüfen.
> Was die auch kann, ist, mal Saft auf DTR und/oder RTS zu geben und dann
> zu testen, ob das Loopback funktioniert.

Warum sollte jemand deinen, zugegeben nutzlosen, Beitrag löschen? 
Paranoia? Verfolgt dich jemand?

von Al (Gast)


Lesenswert?

Freut mich, dass so viele antworten.

Fairerweise muss man die Zeit berücksichtigen als Gargano den Schaltplan 
erstellte. Damals (vor 17 Jahren) war es wohl noch kein Problem 
RS232-Schnittstellen an PCs vorzufinden, die via DTR und RTS mehr als 
nur 5 Volt liefern konnten.

Vorhin habe ich mir einen alten PC aus 2004 geschnappt, der noch über 
einen "echten" Com-Port verfügt. An DTR und RTS konnte ich dort -10,73 
Volt messen. Zum Vergleich: Mein Laptop liefert da nur -5,9 Volt.

Mit -10,73 Volt sollte das Interface einwandfrei funktionieren. Da ich 
den Wagen zunächst eh nur im Stand auslesen möchte, sollte der alte PC 
aus 2004 dafür ausreichen.

Schöner wäre natürlich die Lösung von Matthias S. Dafür reicht mein 
Laienwissen jedoch nicht aus. Ich wüsste gar nicht, wie ich das 
"Plänchen" in die Gargano-Schaltung unterbringen sollte.

Gruß

von Feldkurat K. (feldkurat)


Lesenswert?

Matthias S. schrieb:
> Warum sollte jemand deinen, zugegeben nutzlosen, Beitrag löschen?
> Paranoia? Verfolgt dich jemand?

Sieh mal in Dein Postfach.

-Feldkurat-

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Angehängte Dateien:

Lesenswert?

Al schrieb:
> Schöner wäre natürlich die Lösung von Matthias S. Dafür reicht mein
> Laienwissen jedoch nicht aus. Ich wüsste gar nicht, wie ich das
> "Plänchen" in die Gargano-Schaltung unterbringen sollte.

Ich habs dir mal in die Schaltung reingekliert. Das wäre für Anschluss 
ans 12V Netz des Kfz.
Wenn du lieber 5V aus PS/2 Buchse oder USB des Notebook saugen willst, 
muss der MOSFet ein Logikleveltyp sein (P-Kanal, wohlgemerkt) und der 
78L05 Spannungsregler entfällt, ebenso der 22-100 Ohm Vorwiderstand.

von Al (Gast)


Lesenswert?

Super, danke! Damit kann ich was anfangen. So wie in deinem Schaltbild 
dargestellt, werde ich es auch umsetzen.

Ich habe das Interface jetzt mal an den alten PC angeklemmt. Sobald die 
Testsoftware gestartet wird, werden aus -10,73 Volt bei DTR und RTS 
sofort +7,51 Volt. Letzteres meinte Gargano evtl. in seiner Mail, als er 
7 Volt erwähnte.

Nochmals vielen Dank!

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.