
我有一個在 Linux (Ubuntu) 上運行的應用程序,需要將硬體連接到串行端口。
我希望該硬體位於 LAN 上其他位置的 Windows 電腦 (XP SP3) 上。
因此,我需要在 Windows 機器上安裝一個串列伺服器來取得 Com1 並連接到 TCP/IP。然後,Linux 機器上的客戶端將 TCP/IP 連接到 /dev/tty2 連接埠。
由於這些是跨平台的,我認為重定向器應該符合 RFC 2217。但我猜想可以在兩個平台上安裝的不相容的單一製造商解決方案可能會起作用。
但是,它必須是免費軟體。
我知道 Ubuntu 上有“ser2net”,我正在努力理解它。
謝謝你的幫助,馬克。
答案1
好吧,我想我已經有了。
在Linux機器上,我安裝並使用了命令索卡特, 因此:
sudo socat -d -d pty,link=/dev/ttys1,raw,echo=0,waitslave tcp:192.168.1.95:3000;
(注意 ttys 中的小寫 s。這在我的應用程式中似乎是允許的。)這創建了一個名為 /dev/ttys1 的鏈接,該鏈接指向 /dev/pts/1。
然後在 Windows 上,我使用皮拉康這裡Pira CZ 遠端 COM 連接埠 |皮拉.cz。
我將其設置為使用 Com1(我的硬體所在的位置)以及與上面相同的連接埠(3000。)
我現在正在處理權限。如果我不放,我的應用程式和 socat 都會抱怨 須藤在前面,但我想我可以處理這個問題。
這有多可靠還有待觀察。如果 piracom 或 socat 斷開連接,最好有一個自動腳本來檢測和修復它們。
標記。