ich bin aktuell dabei, ein GSM Modul über Python anzusteuern. Nun aber bekomme ich eine Fehler beim ausführen des Programmes ausgespuckt. Das Programm soll an "COM7" den Befehl "AT" senden, und soll vorher noch ausgeben, ob der Port offen ist. Das Programm gibt noch an "COM7 ist offen", stürzt aber dann mit dem Fehler code "Can only concatenate str (not "bytes") to str" ab.
Hat jemand davon eine Ahnung wie ich das beheben kann?
Code:
Code: Alles auswählen
import serial, time
def serial_def():
ser = serial.Serial()
ser.port = "COM7"
ser.baudrate = 9600
ser.bytesize = serial.EIGHTBITS
ser.parity = serial.PARITY_NONE
ser.stopbits = serial.STOPBITS_ONE
ser.timeout = 2
ser.xonxoff = False
ser.rtscts = False
ser.dsrdtr = False
ser.writeTimeout = 2
ser.open()
if ser.isOpen():
print(ser.name + ' is open...')
ser.write(str.encode("AT"+"\r\n"))
time.sleep(1)
out=''
while True:
out += ser.read(1)
print (out)
ser.close()
if __name__ == '__main__':
serial_def()