2016-07-18 12 views
10

Ich möchte in der Lage sein, von seriellen Anschlüssen auf meinem Computer zu lesen und in eine Datei zu schreiben. Inside dev/(mit Bash-Shell unter Windows 10) Ich kann nicht scheinen, meinen USB-seriellen Port zu lokalisieren (ich habe tty, tty0, tty1, und das ist es für tty).Probleme beim Lokalisieren meiner seriellen Ports mit Bash unter Windows 10

Befindet es sich irgendwo anders oder ist es sogar über die Bash Shell erreichbar? Ich möchte nur wissen, wie ich an dieser Stelle darauf zugreifen kann.

Im Gerätemanager, COM4 zeigt unter Ports, wenn ich meinen USB anschließen. Ich führte auch den Befehl "wmic Pfad Win32_SerialPort" in der Windows-Eingabeaufforderung und es hieß "No Instance (s) Available." Daher bin ich sehr verwirrt darüber, wie ich meine seriellen Ports sehen kann und warum sie in bestimmten Fällen nicht angezeigt werden.

Jede Klärung, wie serielle Ports arbeiten, vor allem mit USB, würde sehr geschätzt werden, da ich ziemlich neu mit diesem Zeug bin. Vielen Dank!

+0

versuchen Sie einfach 'com1'. Windows hat immer noch die alten DOS-basierten Legacy- "Device" -Dateinamen wie "con", "com1", "nul", etc ... –

+1

Das ist nicht, was die Frage stellt, dos-basierte Legacy-Gerätenamen sind irrelevant. Das Problem ist der Zugriff auf ein serielles Gerät in Bash Shell auf Windows 10. Ich habe das gleiche Problem beim Zugriff auf einen FTDI-Chip, der COM4 sein sollte –

+0

Ich habe das gleiche Problem wie @DanGriffin, würde gerne TX und RX serielle Daten von meinem FTDI-Gerät auf WSL. Alles, was ich bisher gefunden habe, stammt aus der Vor-AU, aber sagt, dass dies noch nicht unterstützt wird :( – Toby

Antwort

4

Ich habe das gleiche Problem. Anscheinend können Sie in Bash unter Ubuntu unter Windows (BoUoW) immer noch keine seriellen Ports verwenden. Sie können grundlegende Lese- und Schreibvorgänge mit socat durchführen. Ich benutzte Cygwin, um einen Socat-Server zu erstellen, der meine seriellen Anschlüsse sieht. Ich hatte jedoch Probleme mit DTR- und RTS-Pins.

Mit socat können Sie virtuelle serielle Ports erstellen oder einen seriellen Port über TCP weiterleiten. (Und vieles mehr.)

In Cygwin sind serielle Ports unter/dev/as ttyS * aufgeführt. Zum Beispiel ist COM3/dev/ttyS2 und COM4 ist/dev/ttyS3.

den Server in Cygwin starten

mit

socat -d -d -d TCP4-LISTEN:2022,reuseaddr,fork /dev/ttyS3

Starten Sie den Client auf BoUoW mit

socat PTY,link=/tmp/vmodem0 TCP:localhost:2022 

Dies wird eine virtuelle serielle Schnittstelle in BoUoW in/tmp/vmodem0 erstellen, die verbunden ist, COM4 auf Ihrem Computer.

+0

Ich habe den Teil überflogen, der besagt, dass COM4 zu/dev/ttyS3 gehört und dachte, dass COMx auf/dev/ttySx abbilden würde und mir den Kopf kratzte. Stellen Sie sicher, dass Sie den nicht intuitiven Mapping-Namen verwenden! –