ein Teil eines größeren Scripts ist bei mir das Einlesen einer Zeichenflolge über die serielle Schnittstelle.
Dies soll dann in einer Variable gespeichert werden und mit einer If-Abfrage weiterverarbeitet werden.
Dazu habe ich mir jetzt einen Code-Schnipsel nur für die serielle-Abfrage erstellt.
Ich sende den Code über das Tool hterm als Ascii-Zeichen (alles andere macht glaube ich keinen Sinn, also Bin, Hex, oder DEC).
Der Code wird auch von meinem Python-Script empfangen und mit den Steuerzeichen oder ohne die Steuerzeichen dargestellt.
Jedoch gibt die If-Abfrage immer "Falsch" aus. Habe es schon mit anderen Codierungen in Hterm versucht und auch im Script. Aber nix führt zum Erfolg.
Könnt Ihr mir bitte helfen? Ich hoffe es ist nur ein kleiner Fehler.
Danke Euch.
Code: Alles auswählen
# coding: utf-8
import serial
ser = serial.Serial('COM5', 9600)
test=4
#ser.write(test)
data = ser.readline()
#dataneu = filter(str.isdecimal, data)
dataneu = data.decode('ascii', 'ignore') # 'ignore' ignoriert nicht-ASCII-Zeichen
print(dataneu)
print (data)
if dataneu == 'asd':
print ('Rischdisch')
else:
print ('Folsch')
Code: Alles auswählen
>>> %Run testseriell.py
asd
b'asd\r\n'
Folsch
>>>