Pablo Iranzo Gómez's blog

feb 23, 2010

pyserial

Pyserial

Esta semana estuve jugando con python para interrogar mediante puerto serie dispositivos.

La verdad es que resultó mucho más sencillo de lo que pensaba, algo de complicación a la hora de interpretar las constantes de ascii para el group separator (GS).

La interrogación es tan sencilla como hacer:

    import sys
    import serial

    try:
        ser = serial.Serial(port='/dev/ttyS0', baudrate=9600, bytesize=serial.EIGHTBITS, timeout=1, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, xonxoff=1,rtscts=0)
    except:
        print "Fallo al abrir el dispositivo"
        sys.exit(-1)


    ser.write("Hola")
    respuesta=ser.readline()
    string="%s" % (chr(26))
    ser.write(string)
    ser.close()

Jugando un poco con los requisitos, podemos hablar el lenguaje del dispositivo que tengamos conectado o empezar con los ejemplos de terminal, etc que acompañan a pyserial (terminales, etc)

A partir de aquí, es cuestión de coger la referencia técnica del dispositivo a interrogar y ponernos a ello.

Nota: Si quieres cambiar la velocidad, lo puedes hacer de forma dinámica haciendo:

   ser.baudrate=19200
posted at 22:50  ·   ·  python