Verständnis Zeichen, die vom Arduino
Habe ich ein Arduino board senden von Daten über einen seriellen port und ein Python-code-Lesen von Daten. Das Arduino-board nur sendet die Temperatur-es liest aus einem TMP36-sensor und wenn ich den port mit dem port-monitor, kommt mit der Arduino-IDE sehe ich das:
20.3
20.3
20.2
20.2
...
Ist vollkommen richtig. Nun, wenn ich die serielle Schnittstelle mittels Python ich dieses:
b'20.32\r\n'
b'20.32\r\n'
b'20.32\r\n'
b'20.80\r\n'
...
Was bedeutet, dass b' ' Sache zu tun? Wie kann ich behandeln Sie die Zeichenfolge, so dass ich nur die Anzeige die zahlen richtig?
Hier ist der code, den ich verwende:
import serial
ser = serial.Serial('/dev/ttyACM0', 9600)
while True:
message = ser.readline()
print(message)
Entschuldigt wenn es eine dumme Frage aber ich bin neu in Arduino, Python und serielle Programmierung 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
b
Präfix in Python 3 nur bedeutet, dass es ist einbytes
literal. Es ist nicht Teil der Ausgabe, die nur sagen Sie Art.Den
\r\n
ist ein common Carriage-Return und Newline Zeilenende-Zeichen. Sie können entfernen, die von Ihrem string durch den Aufrufstrip()
.Da diese floating-point-zahlen zurückgegeben wird, ich vermute, Sie gehen zu wollen, um Sie in irgendeiner Weise, nachdem Sie Lesen Sie auch:
Siehe auch:
Können Sie auch
decode()
undstrip()
auf einmal.Geben Sie: