Ejemplo mínimo de RFC2217 con PySerial: Copiar datos recibidos del puerto serial a stdout

Ver también el mismo ejemplo para un puerto serial local: Ejemplo mínimo de PySerial: Copiar datos recibidos del puerto serial a stdout

Este ejemplo se conecta al puerto serial remoto RFC2217 en 10.1.2.3 puerto 1234. No envía datos al puerto serial sino que solo copia los datos recibidos del puerto serial a stdout.

pyserial_rfc2217_copy.py
#!/usr/bin/env python3
import serial
with serial.serial_for_url("rfc2217://10.1.2.3:1234", baudrate=115200) as ser:
    try:
        while True:
            response = ser.read()
            if response:
                print(response.decode("iso-8859-1"), end="")
    finally:
        ser.close()
pyserial_rfc2217_copy.py
#!/usr/bin/env python3
import serial
with serial.serial_for_url("rfc2217://10.1.2.3:1234", baudrate=115200) as ser:
    try:
        while True:
            response = ser.read()
            if response:
                print(response.decode("iso-8859-1"), end="")
    finally:
        ser.close()

Al usar la decodificación iso-8859-1, nos aseguramos de que incluso los bytes binarios sean decodificados de alguna manera y no causen una excepción.


Echa un vistazo a artículos similares por categoría: Embebido Python