2

Arduino シリアル モニタからデータを読み込もうとしていますが、pyserial の readline 関数に問題があります。モニターに出力する簡単なコードは次のとおりです。

void setup() {
  Serial.begin(19200);
}

void loop() {
  Serial.print("helloWorld");
  delay(1);        // delay in between reads for stability
}

そして、印刷された出力を読み取るために使用しているPythonコードは次のとおりです。

import serial
arduinoSerialData = serial.Serial()
arduinoSerialData.port = "COM4"
arduinoSerialData.baudrate = 19200
arduinoSerialData.timeout = 1
arduinoSerialData.setDTR(False)
#arduinoSerialData.setRTS(False)
arduinoSerialData.open()
while(True):
    b = arduinoSerialData.readline().decode('utf-8').strip().split(',')
    print(b)


これはエラーです:

  File "SerialRead.py", line 11, in <module>
    str_b = b.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x91 in position 7: invalid start byte

何がうまくいかないのかわかりません。誰か提案はありますか?お時間をいただきありがとうございます!

4

1 に答える 1