Ich habe auf Python 3.3 umgestellt und pyserial-2.6 erneut installiert.
(Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:06:53) [MSC v.1600 64 bit (AMD64)] on win32)
Das Programm habe ich soweit wieder zum laufen bekommen. Nun hänge ich seit 2 Tagen an der seriellen Schnitstelle und komme nicht weiter.
Code: Alles auswählen
#ser = serial.Serial(comport, 9600, timeout=1, parity=serial.PARITY_EVEN)
ser = serial.Serial()
ser.port = comport
ser.baudrate = 9600
ser.bytesize = serial.EIGHTBITS
ser.parity = serial.PARITY_EVEN
ser.timeout = 1
ser.open()
#print ("ser =", ser)
ser.write("'\x02\x1F\x02'") #Logo Init
print ("Logo Init fertig")
status = ser.read(5)
print (status)
ser.write('\x55\x17\x17\xAA') #Logo in Run oder Stop??
print ("Logo in Run oder Stop fertig")
status = ser.read(2)
ser.write('\x55\x13\x13\x00\xAA') #Logo IO Status holen
byte = ser.read(1)
antw = ord(byte)
debug (antw)
print ("Logo IO Status holen fertig")
Code: Alles auswählen
print ("ser =", ser)
Das Programm bricht beim Ersten ser.write ab und in der IDLE Shell wird "string argument without an encoding" als Fehler angezeigt .
Die Programmzeilen mit ser.write sind unverändert gegenüber der Pyhton 2.7 Version, in der es ohne Probleme funktioniert.
Hat jemand eine Idee was ich noch versuchen könnte?
Danke
Marc