2016-11-03 5 views
0

Ich bin neu in Python. Ich versuche, Daten von dem Temperatursensor über RS485 in Python zu fangenKommunizieren über RS485 in Python

Hier meinen Code:

ser = serial.Serial(
port='COM3', 
baudrate=19200, 
parity=serial.PARITY_NONE, 
stopbits=serial.STOPBITS_ONE, 
bytesize=serial.EIGHTBITS) 

print ser.write('{02RDD}\r') 

Antwort: >> 8

Die Antwort ist immer Stringlänge (ex ser.write (“ abcd "), Antwort ist" 4 ") egal was ich sende.

Bitte helfen Sie mir, wie Sie dieses Problem zu lösen, Dank

+0

Nun, ja. Das ist, was 'Serial.write' zurückgibt. Was hast du erwartet? – duskwuff

Antwort

0

Wenn Sie von der seriellen Schnittstelle lesen möchten ser.read() oder ser.readline() verwenden.

Die , die Sie verwendet haben, gibt nur die Anzahl der gesendeten Bytes zurück, die der Länge der Zeichenfolge entsprechen sollte. So scheint es richtig zu funktionieren.

Sie sollten vielleicht die Beispiele durchgehen, die in der pyserial-Dokumentation enthalten sind, um Sie mit der Bibliothek besser vertraut zu machen.

Verwandte Themen