0

ソケットなどがJava/Androidでどのように機能するかは知っていますが、JavaまたはPythonを使用してデスクトップのCOMポートにどのように接続しますか? アドレスを使用しますか?または、必要なポートが利用可能かどうかを確認しますか?

どうやってそれをするのかわかりません。

提案?

Python または Java で回答を受け付けています。ありがとう。

編集 - Javaの答えはありますか?

4

2 に答える 2

3

Python では、PySerialを使用できます

ウェブサイトにたくさんのがあります。次に例を示します。

import serial
ser = serial.Serial('/dev/ttyS1', 9600, timeout=1)
ser.write("hello")
result = ser.readline()  # read a '\n' terminated line
print(result)
ser.close()

Windows を使用している場合は、たとえば次のことができます。

ser = serial.Serial('COM12', 19200, timeout=1)

もちろん、読み取りたい COM ポートを知っている必要があります。

ドキュメントによると、PySerialserial.tools.list_ports.comports()の最新バージョンで使用可能なポートを確認するために使用できます。

通常、COM ポート アドレスはオペレーティング システムによって選択されます。そのため、デバイスがどの COM ポートにあるかを知る必要があります (たとえば、Windows 7 では、構成パネルの「デバイスとプリンター」に一覧表示されます)。また、デバイスと通信する必要があるボーレートも知っておく必要があります (低速デバイスでは 9600 が一般的です)。

Java については、Windows、MacOS、Solaris、Linux で使用できるRXTXを既に使用しました。LGPL ライブラリです。繰り返しになりますが、何ができるかを知りたい場合は、たくさんの例があります。

于 2012-04-19T11:31:20.563 に答える
1

Python の場合、pySerialを使用します。これにより、シリアル ポートをファイル オブジェクトとして扱うことができます。チュートリアルの例から:

>>> import serial
>>> ser = serial.Serial("COM0")  # open COM0, could also be `/dev/ttyUSB0` for Linux, etc.
>>> print ser.portstr       # check which port was really used
>>> ser.write("hello")      # write a string
>>> ser.close()             # close port

Java の場合、JavaCommが必要です。たとえば、 SimpleRead.javaを参照してください。

于 2012-04-19T11:31:48.833 に答える