PySerial sendet nur Nullen

Gast #5382564
Lesenswert?

Hallo, Ich habe hier einen China-UART-converter von dem Ich weiss dass 
er funktioniert (Controller flashen kann er). Jetzt wollte ich ihn mit 
PySerial Daten senden lassen aber leider funktioniert das nicht. Das 
Python-script:
1
import serial
2

3
ser = serial.Serial(
4
    port="COM20",
5
    baudrate=9600,
6
    parity=serial.PARITY_NONE,
7
    stopbits=serial.STOPBITS_ONE,
8
    bytesize=serial.EIGHTBITS
9
)
10

11

12
def sendMessage(msg):
13
    for x in msg:
14
        ser.write(ord(x))
15
    ser.close
16

17

18
sendMessage("Test")
Dass der UART-Converter an COM20 ist habe Ich mit der Arduino-IDE 
rausgefunden. Wenn Ich das ganze jetzt mit einem Logicanalyzer anschauen 
sieht der aber nur Nullen (Saleae Logic, "Async Serial" ausgewählt, 9600 
baud, 8 bits per transfer, 1 Stop Bit, No Parity Bit, Least Significant 
Bit First, Not Inverted). Ich habe auch schon ein bisschen rumprobiert 
aber da der Verlauf nur wie ein PWM-Signal aussieht scheinen es wirklich 
nullen zu sein die rauskommen und der Decoder ist nicht das Problem. Hat 
jemand Erfahrung mit der Lib und weiss was Ich noch probieren kann?
Danke schonmal!
Gast #5382971
Lesenswert?

Du solltest dem write geben, was es will:
"This should be of type bytes (or compatible such as bytearray or 
memoryview). Unicode strings must be encoded (e.g. 
'hello'.encode('utf-8')."

Du gibst ihm einen integer...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren