Hallo, wie im Betreff beschrieben suche ich eine Möglichkeit am COM-Port eines PCs ( RS232 Schnittstelle mit DE9-Stecker) 4 Ausgänge zu steuern. Im normalen Protokoll dieser 9 poligen Schnittstelle gibt es ja nur 3 Ausgänge (TX,RTS und DTR). Die serielle Kommunikation (RX,TX) geht bzw. kommt von einem Mikrocontroller. Ich möchte jedoch noch 3 weiter Ausgänge ( außer dem bereits benutzten RXD ) direkt vom PC unabhängig vom Mikrocontroller steuern ( also ohne besondere Signalzeichen, die der Mikrocontroller aus der seriellen Kommunikation bezieht und entsprechend auswertet und schaltet ). Hardwaremäßig habe ich wie gesagt am PC den DE9 Stecker, den ich auf ein RJ12 Kabel adaptiere, wodurch ich genau auf meine 6 benötigten Leitungen (RX, TX, Masse + 3 Steuerausgänge ) komme. Sieht jemand eine Möglichkeit diese Ausgänge mit einem Trick irgendwie aus den Eingängen zu schalten? Oder muss ich doch einen Jumper setzen,der dann per Hand betätigt werden muss um das Signal zu schalten? Grüße Stefan
Der "Trick" wäre, einen Empfänger an den Port zu hängen. Der könnte im einfachsten Fall das zuletzt empfangene Byte an einem 8-bit Port zur Verfügung stellen. Dann kannst Du per Terminal-Programm durch senden des passenden Zeichens alle 8 Ausgänge schalten. Optimal für sowas ist H-Term. Mit freundlichen Grüßen Thorsten Ostermann
Vielen Dank für die schnelle Antwort. Diese Lösung scheint mir geeignet und ich werde sie auch so umsetzen auf HTterm war ich auch schon während meiner Suche gestoßen. Eine allgemeine Frage hätte ich noch die mich bis jetzt etwas verwirrt hat (auf verschiedenen Internetseiten findet man verschiedene Aussagen dazu): Sind bei der RS232-Schnittstelle nur die Pegel der Sendeleitungen(RX,TX) invers? ( also -12...-5V für Mark und +5...+12V für Space ) oder sind auch die Pegel der Steuerleitungen ( RTS,DTR...) invers ausgeführt? Das wäre nämlich die Frage, da ich für die Pegelwandlung einen MAX3232 verwende, der meiner Kenntnis nach ja immmer die Pegel invertiert, wodurch ich die Steuerlogik anpassen müsste. Mit freundlichen Grüßen Stefan
Stefan schrieb: > der meiner Kenntnis nach ja immmer die Pegel invertiert was auch üblich und notwendig ist: UARTs geben die Status-Signale als /RTS usw. aus, so dass nach Invertierung durch den Treiber ON = +12V ist. RxD und TxD werden nicht invertiert vom UART ausgegeben, daher ist Mark = -12V und Space = +12V, das ist so genormt. Also wenn du per Software RTS setzt, kommen +12V raus. Gruss Reinhard
Hoffentlich meine letzte Frage. Nur zum Verständnis ( da sonst die komplette Platine direkt in den Schrott wandern müsste ): Ich gebe über den RTS am PC eine 1(Mark) raus also kommen aus dem DE9-Stecker +12V ( da es invertiert als /RTS ausgegeben wird). Nun schicke ich dieses Signal direkt durch einen MAX3232, der die Pegel auf TTL wandelt und invertiert also hab ich als TTL Pegel meiner ursprünglichen Mark ganz am Ende ein low ( 0 V ) auf TTL Pegel mit dem ich in die Logikschaltung gehe. Freundliche Grüße Stefan
Stefan schrieb: > ganz am Ende ein low ( 0 V ) auf TTL Pegel Genau, das andere UART hat/hätte ja auch /CTS als Eingang. Gruss Reinhard
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.