Ich möchte ein Python-Programm wie ein Terminal erstellen, um eine Anfrage mit Pyserial zu senden.
Aber wenn ich eine Anfrage wie "dataid 60000 get value" sende, zeigt es mir eine Fehlermeldung wie: TypeError: unicode strings are not supported, please encode to bytes: 'dataid 60000 get value'
Ich habe versucht,.encode zu verwenden, aber kein Ergebnis.
Siehe unten mein Code:
#Modules
from base64 import encode
import serial
port = "COM5"
baud = 115200
#Serial port configuration
com = serial.Serial(port, baud, timeout=1)
if com.isOpen():
print(com.name + ' is open...')
#Print output
while True:
cmd = input("Enter command or 'exit':")
if cmd == 'exit':
com.close()
exit()
else:
com.write(cmd)
out = com.read()
print('Receiving...'+out)
Danke im Voraus!:)
Lösung des Problems
Um Befehle über den seriellen/Konsolen-Port zu senden, verwenden Sie: com.write(cmd.encode("utf-8"))
odercom.write(b"string")
Dadurch wird Ihre Eingabe in Bytes codiert.
Keine Kommentare:
Kommentar veröffentlichen