シリアルポートからデータを受信しました。それはASCIIデータ(パテのようなものではない)ですが、modbus rtu行からの16進数のデータです(例えば、0103AABBCCDD816Eのデータがあります。01は未処理の16進数、03は未処理の16進数など...)印刷機能のシリアルポートから16進データを表示
私は単に0103AABBCCDD816E
として印刷する必要があるのpython 3.6
を使用しています私はこのコードを試してみました:
rx_raw = ser.read(8)
rx=binascii.hexlify(bytearray(rx_raw))
print("raw: ")
print(rx_raw) # gives: b'\x01\x03\xaa\xbb\xcc\xdd\x81n'
print("\n")
print("hexiflied: ")
print(rx) # gives: b'0103aabbccdd816e'
binascii.hexlify(bytearray(rx_raw))
は私が必要なものはほとんどですが、私は取り除く必要がありますb' '
。
ありがとう、マイク。作品は完璧です! :) 素敵な一日を! – denderdale