Pyserialを使ってシリアル通信
Pythonでシリアル通信を実装する場合、Pyserialが便利でしたので、簡単に紹介します。
最初にPyserialをインストールします。
pip install pyserial
COMポートをデバイスマネージャーで確認して、シリアル通信のインスタンスを定義します。
serial.Serialの1つ目の引数がポート番号、2つ目がボーレート、3つ目がタイムアウトの設定です。
import serial
ser = serial.Serial('COM9', 307200, timeout=1)
.writeコマンドを使ってメッセージを送信します。
#任意のメッセージを記述
senddata = [0x55, 0x0D, 0x0A]
#送信
send_binary = bytes(senddata)
ser.write(send_binary)
受信は.readコマンドを用います。
#受信
res = ser.read(4)
print(res)
readのカッコ内の数で受信するByte数を設定できます。
.readline () というコマンドを使えば、改行コードまでを受信してくれますが、今回試した機器は改行コードを返さない仕様だったため readline ではうまくいきませんでした。