私のラップトップは、ミニUSBポートを介して管理されているスイッチやファイアウォールなどのネットワークデバイスに接続してから接続するscreen
ために使用できますTTY
。
一時的なUSB-USB接続を介して実際に他のコンピュータ(ラップトップやサーバーなど)に接続できますか?良い:
Terminal Client Linux Box - USB PORT ===> Target Machine - USB PORT
オペレーティングシステムがLinux / Unix / BSDであると仮定すると、ハードウェア自体はUSBポートを介した端末エミュレーションをサポートしません。
この質問は純粋に好奇心からのものです。たとえば、TTYを介してRPIにアクセスしたいが、モニターを接続したくない場合です。
答え1
lsusb
はい、USBシリアルケーブルを使用して端末を使用して接続できますmodprobe usbserial
。USB - シリアルケーブル...
外部変換ラインは、内部ハードウェアサポートを直接実装します。したがって、元のボードにハードウェアサポートがあるかどうかにかかわらず、ソフトウェアオペレーティングシステムはこれを解決できます。USB-シリアル変換ハードウェアロジック...
jay_k@jay_k ~ $ lsusb
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 005: ID 2232:5005 Silicon Motion
Bus 002 Device 004: ID 8087:07dc Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
......
jay_k@jay_k ~ $ sudo modprobe usbserial vendor=VENDOR product=PRODUCT
VENDOR
PRODUCT
として識別されましたXXXX:XXXX
。これはを意味しますVENDOR:PRODUCT
。
実行後、modprobe
dmesgを使用してttyXXXを見つけることができます。良いです。
jay_k@jay_k ~ $ dmesg | grep tty
としてフォーマットされています/dev/ttyUSB...
。
.USBを使用してUSB-USB接続を作成することもできますData Communication Converter Cable
。ただし、この製品は韓国市場でのみ販売されています。外部リンク - 韓国オークション。
また、2つのシリアルコンバータと通信できます。 (ただし、オーバーヘッドがある)
Laptop ---> USB to Serial ---> Serial to USB -> Target
そしてbashを/dev/ttyUSB...
。
インターフェイスの出力をリダイレクトしますか?
通常のファイルと同様に、シリアルデバイスを使用する必要があります。唯一の違いは、速度と制御線の設定にいくつかのioctl()が必要であることです。
したがって、 os.system("echo ...しかし f = open('/dev/ttyUSB3', 'rw') を使用せずに f.write() および f.read() を使用してください。
理論的には速度などを設定するためにioctl()を使用できますが、その段階ではすべてのパラメータをマーシャリングするよりもpySerialを使用する方が簡単です。 ser = serial.Serial(port='/dev/ttyUSB3', baudrate=9600, timeout=1, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS) および ser.write() および ser.読む()。
シリアルポートの識別名を設定するには、/dev/ttyUSB3をハードコーディングする代わりにudevを使用する必要があります。単一のUSB / RS-232アダプタでこれを行う方法と、マルチポートUSB / RS-232アダプタでこれを行う方法は次のとおりです。