Ich entwickle ein Projekt, bei dem eine Reihe von Hardwaresensoren über serielle RS232-Ports mit dem Bereitstellungscomputer verbunden sind.
Aber ... Ich entwickle auf einem Computer ohne physische serielle RS232-Anschlüsse, aber ich möchte gefälschte serielle Anschlüsse erstellen, mit denen ich Daten verbinden und ausgeben kann, um Eingaben von Hardwaresensoren zu fälschen.
Kennt jemand eine Möglichkeit, eine gefälschte serielle Schnittstelle zu erstellen und unter Windows XP zu steuern?
windows
mocking
serial-port
hardware-interface
virtual-serial-port
Passend zum Satz
quelle
quelle
Antworten:
Wenn Sie für Windows entwickeln, ist das com0com- Projekt möglicherweise genau das, wonach Sie suchen.
Es bietet Paare von virtuellen COM-Ports, die über eine Nullmodem-Verbindung verbunden sind. Sie können dann Ihre bevorzugte Terminalanwendung oder was auch immer Sie möchten verwenden, um Daten an einen COM-Port zu senden und von dem anderen zu empfangen.
BEARBEITEN:
Wie Thomas betonte, fehlt dem Projekt ein signierter Treiber, was bei bestimmten Windows-Versionen (z. B. Windows 7 x64) besonders problematisch ist.
Es gibt einige inoffizielle com0com- Versionen, die einen signierten Treiber enthalten. Eine aktuelle Version (3.0.0.0) kann zB hier heruntergeladen werden .
quelle
com0com
Projekt ein ausgezeichnetes Open Source-Projekt ist, da es den Gerätetreiber ohne digitale Signatur installieren sollte, funktionieren einige Windows-Systeme, die den digital signierten Treiber überprüfen, nicht mit seiner virtuellen seriellen Schnittstelle. Ich will nur, dass die Leute es wissen.Ich weiß, dass dies ein alter Beitrag ist, aber falls jemand anderes auf diese Frage stößt, ist VSPE (Virtual Serial Port Emulator) von Eterlogic eine
guteOption. Er bietet eine API zum Erstellen von virtuellen Comport-Geräten im Kernelmodus, z. B. Konnektoren, Mapper, Splitter usw. . jedoch , sind einige der Fähigkeiten waren wirklich nicht Fähigkeiten überhaupt .EDIT
Eine viel bessere Wahl , Eltima . Dieses Produkt ist vollständig gebacken. Guter technischer Support für Entwickler. Das Produkt hat alles getan, was es zu tun behauptete. Zu den Produktoptionen gehören sowohl Desktopanwendungen als auch Softwareentwicklungskits mit APIs.
Keines dieser Produkte ist Open Source oder kostenlos. Wie andere Beiträge hier bereits betont haben, gibt es jedoch andere Möglichkeiten. Hier ist eine Liste verschiedener serieller Dienstprogramme:
com0com (aktuell)
com0com - Mit signiertem Treiber (alte Version)
Ein weiterer Ort für com0com mit signiertem Treiber (Pete's Blog)
Taktische Software
Termite
COM Port Serial Emulator
Kermit (veraltet, aber immer noch herunterladbar)
HWVSP3
HHD Software (kostenlose Edition)
quelle
Ich verwende com0com - Mit signiertem Treiber unter Windows 7 x64, um COM3 UND COM4 als Paar zu emulieren.
Dann benutze ich COM Dataport Emulator , um von COM4 zu empfangen.
Dann öffne ich COM3 mit der App im Entwickeln (c #) und sende Daten an COM3.
Die über COM3 gesendeten Daten werden von COM4 empfangen und vom 'COM Dataport Emulator' angezeigt, der auch eine Antwort zurücksenden kann (nicht automatisiert).
Mit diesen 2 großartigen Programmen gelang es mir, die serielle RS-232-Kommunikation zu emulieren.
Ich hoffe es hilft.
Beide Programme sind kostenlos !!!!!
quelle
Eine andere Alternative, obwohl das OP nicht danach gefragt hat:
Es gibt USB-zu-Seriell-Adapter. Je nach Adaptertyp benötigen Sie möglicherweise auch ein Nullmodemkabel.
Sie sind unter Linux extrem einfach zu bedienen und funktionieren auch unter Windows, wenn Sie funktionierende Treiber installiert haben.
Auf diese Weise können Sie direkt mit den Sensoren arbeiten und müssen nicht versuchen, Daten zu emulieren. Auf diese Weise können Sie vielleicht sogar ein anämisches System aufbauen. (Aufgrund Ihrer emulierten Dateneingaben, die nicht alle Fälle abdecken, führt dies zu einem spröden System.)
Es ist oft besser, mit dem echten Zeug zu arbeiten.
quelle
screen /dev/ttyUSB0 9600
oder verwendenminicom
Sie, wenn Sie Software für diese Hardware benötigen.Es gibt immer die Hardware-Route. Kaufen Sie zwei USB-zu-Seriell-Wandler und verbinden Sie sie über ein NULL-Modem.
Profi-Tipps: 1) Windows kann den Adaptern nach jedem Ruhezustand oder Neustart des Geräts neue COM-Ports zuweisen. 2) Die Marktführer bei Chips für USB zu Seriell sind Prolific und FTDI. Beide Unternehmen kämpfen gegen Fälschungen und werden möglicherweise in zukünftigen offiziellen Windows-Treibern blockiert. Die Linux-Treiber funktionieren jedoch gut mit den Klonen.
quelle
Ich habe eltima verwendet, um eine virtuelle serielle Schnittstelle für das Debuggen meiner Modbus-Anwendung herzustellen. Es ist wirklich eine sehr gute Anwendung in der Entwicklungsphase, um das Programm der seriellen Schnittstelle zu überprüfen, ohne Hardware anzuschließen.
quelle