2016-07-18 112 views
10

Desidero poter leggere le porte seriali sul mio computer e scrivere su un file. All'interno di dev/(usando la shell di Bash su Windows 10) non riesco a trovare la mia porta seriale USB (ho tty, tty0, tty1, e questo è tutto per tty).Problemi nel localizzare le porte seriali utilizzando Bash su Windows 10

Si trova da qualche altra parte o addirittura accessibile tramite Bash Shell? Voglio solo essere in grado di sapere come accedervi a questo punto.

In Gestione periferiche, COM4 si presenta sotto le porte quando collego il mio usb. Ho anche eseguito il comando "percorso wmic Win32_SerialPort" nel prompt dei comandi di Windows e ha detto "Nessuna istanza disponibile." Quindi sono molto confuso su come posso visualizzare le mie porte seriali e perché non vengono visualizzate in determinati casi.

Qualsiasi chiarimento su come funzionano le porte seriali, in particolare con USB, sarebbe molto apprezzato, dato che sono abbastanza nuovo con questa roba. Grazie!

+0

provare solo 'com1'. Windows ha ancora i vecchi nomi di file "dispositivo" legacy basati su dos come "con", "com1", "nul", ecc ... –

+1

Questo non è quello che la domanda si pone, i nomi dei dispositivi legacy basati su dos sono irrilevanti. Il problema è accedere a un dispositivo seriale nella shell Bash su Windows 10. Ho lo stesso problema nel tentativo di accedere a un chip ftdi che dovrebbe essere COM4 –

+0

Ho lo stesso identico problema di @DanGriffin, mi piacerebbe avere i dati seriali di TX e RX dal mio Dispositivo FTDI su WSL. Tutto quello che ho trovato fino ad oggi proviene da pre-AU, ma dice che questo non è ancora supportato :( – Toby

risposta

4

Ho lo stesso problema. Apparentemente non è possibile utilizzare le porte seriali in Bash su Ubuntu su Windows (BoUoW). È possibile eseguire operazioni di lettura e scrittura di base utilizzando socat. Ho usato Cygwin per creare un server socat che vede le mie porte seriali. Ho avuto problemi con i pin DTR e RTS però.

Con socat è possibile creare porte seriali virtuali o inoltrare una porta seriale su TCP. (E molto altro.)

Nelle porte seriali Cygwin sono elencate in/dev/come ttyS *. Ad esempio COM3 è/dev/ttyS2 e COM4 è/dev/ttyS3.

avviare il server in Cygwin con

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

Avviare il client su BoUoW con

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

Questo creerà una porta seriale virtuale in BoUoW a/tmp/vmodem0 che è collegato al COM4 sulla tua macchina.

+0

Ho scostato la parte che dice che le mappe COM4 sono in/dev/ttyS3 e ho pensato che COMx sarebbe mappato a/dev/ttySx e mi stava grattando la testa. Assicurati di utilizzare il nome di mapping non intuitivo! –

Problemi correlati