Hi, ich Programmiere gerade ein Programm (C#), dass über die serielle Schnittstelle mit einem Mikrocontroller quatscht. Jetzt habe ich den nicht immer zur Verfügung würde mein Programm aber trotzdem gerne testen. Dazu suche ich sowas in der Art wie einen virtellen COM-Port. Auf die eine Seite kann sich mein C#-Programm mit dem verbinden, auf der anderen kann ich z.B. mit einem Terminal draufgehen und die Antworten simulieren, später mir evtl. sogar einen entsprechenden Simulator basteln. Gibts sowas? Oder irgendwas ähnliches? VG da_user
Matthias S. schrieb: > Gibts sowas? Oder irgendwas ähnliches? Du suchst vielleicht ein virtuelles Nullmodem, z.B. http://com0com.sourceforge.net/
Wolfgang schrieb: > Du suchst vielleicht ein virtuelles Nullmodem, z.B. > http://com0com.sourceforge.net/ Das funktioniert, in der richtigen Version für's eigene OS und nach korrekter Konfiguration, tatsächlich sehr gut. Was aber i.d.R. noch viel besser und einfacher funktioniert: Ein echtes Nullmodem... Kostet maximal ein weitere reale serielle Schnittstelle und ein reales Nullmodem-Kabel... Wenig erstaunlich kann man damit exakt dasselbe bauen, was man auch mit com0com baut. Bloß halt ohne diverse drohende Fallstricke, die den Normaluser normalerweise schnell überfordern...
Matthias S. schrieb: > Dazu suche ich sowas in der Art wie einen virtellen COM-Port. Dann leg dir doch irgend einen USB->Serial-Konverter zu, den es beimfreundlichen Chinesen für zwofuffzig gibt und brücke dessen RxD und TxD. Dann hast du deinen Ausgabe- und zugleich deine Eingabe-Kanal in Realität. W.S.
W.S. schrieb: > Dann leg dir doch irgend einen USB->Serial-Konverter zu, den es > beimfreundlichen Chinesen für zwofuffzig gibt und brücke dessen RxD und > TxD. Und wie verbindest Du gleichzeitig zwei Programme damit? Gefragt ist das hier: > Auf die eine Seite kann sich mein C#-Programm mit dem verbinden, auf der > anderen kann ich z.B. mit einem Terminal draufgehen Da hilft eine serielle Schnittstelle nicht. Also bräuchte man schon zwei USB-UART-Bridges, die man mit einem Nullmodemkabel miteinander verbindet.
Wolfgang schrieb: > Matthias S. schrieb: >> Gibts sowas? Oder irgendwas ähnliches? > > Du suchst vielleicht ein virtuelles Nullmodem, z.B. > http://com0com.sourceforge.net/ Nullmodenkabel! Das ist vor meiner Zeit, könnte aber genau das sein, was ich brauche. Ich will möglichst nicht mit ext. Hardware nochmal rumbasteln, bzw. die mit mir rumschleppen müssen. Dankeschön an alle!
Bau ein IP-Socket in dein Programm ein und schalte zwischen Serial und Socket per Tastendruck, Config-File oder #def ... beim Start um. Kannst ja beide Schnittstellen-Typen hinter identische Funktionen wrappen, so hat es keine Auswirkungen auf den restlichen Sourcecode. Terminalprogramme (z.B. "Putty"), die auch TCP können, gibts wie Sand am Meer. Nimm als Verbindungsparameter "localhost" oder "127.0.0.1" und eine ansonsten nicht genutzte Portnummer oberhalb 1024, z.B. 3307 (ausprobieren). Der Vorteil: KEINE zus. Software, keine Treiber und keine Kabel erforderlich.
:
Bearbeitet durch User
https://www.eltima.com/products/vspdxp/?gclid=CjwKCAiAtorUBRBnEiwAfcp_Y0Grf-_R07Qs-SSlP83pUvZHi3XaOLQGRii8itMAmAahavA-QvUNjxoCPvAQAvD_BwE Auch noch eine Möglichkeit.
Der große Vorteil gegenüber com0com ist der, daß man dafür bezahlen muss.
Rufus Τ. F. schrieb: > Der große Vorteil gegenüber com0com ist der, daß man dafür bezahlen > muss. Du hast vergessen, "Vorteil" in Anführungszeichen zu setzen, um die Ironie auch für DAUs deutlich zu machen... ------------------------------------------------------------------------ ----------------------------- Aber trotzdem: für DAU-Dummdödel kann der Erwerb einer zusätzlichen Schnittstelle und eines Nullmodemkabels tatsächlich der einfachere und billigere Weg sein. Ja klar, er muss Kohle (in sehr überschaubarem Umfang) in die Beschaffung der Hardware investieren, spart dafür aber u.U. viele Stunden (in kaum abschätzbaren Umfang, die Grenze ist die mögliche Idiotie und die halte ich, wie Einstein, für ziemlich unendlich) bei der korrekten Installation und Konfiguration von com0com. Das ist nämlich keinesfalls vollständig selbsterklärend und DAU-tauglich. Schon die Wahl des korrekten Downloads dürfte viele DAUs hoffnungslos überfordern und dann oft für einen kompletten Fehlschlag sorgen, was der DAU allerdings erst nach vielen Stunden vergeblicher (weil: vorherein zum Scheitern verurteilter) Konfigurationsversuche bemerkt...
Ich mache es immer mit 2 wirklichen Schnittstellen. Erstens braucht man (wenn man sie überhaupt nutzt) oft mehrere, zweitens "sieht" man notfalls mit einer 5V-LED die Signale, wenn man sie vom Signal zu GND schaltet (und ja, sie könnten durchbrennen... aber sie tun es nicht und dann ist eine Diskussion darüber auch sinnlos. Und wenn sie es tun, dann halt eine Diode dazu.) Für die zweite kannst Du dann irgendein ein Programm nehmen. Matthias S. schrieb: > Dazu suche ich sowas in der Art wie einen virtellen COM-Port. Auf die > eine Seite kann sich mein C#-Programm mit dem verbinden, auf der anderen > kann ich z.B. mit einem Terminal draufgehen und die Antworten > simulieren, später mir evtl. sogar einen entsprechenden Simulator > basteln. Wenn Du ein C# Programm hast, dass RS232 spricht, ... dann ist das in der Regel eine gute Basis für einen Hack der Gegenstelle.
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.