Tengo un dispositivo con un cable de puerto serie USB que me gustaría conectar a mi Raspberry Pi. El chipset para este cable USB a serie es el PL-2303 de Prolific Technology, Inc.
¿Cómo puedo leer datos de la conexión en serie de este dispositivo usando Python?
Respuestas:
Para hablar con un dispositivo en serie usando Python, use el módulo pyserial. Si no está disponible en su distribución, se puede instalar obteniendo una copia de la fuente de la página del proyecto pyserial y ejecutando "python setup.py install"
Ejemplos simples de uso de pyserial están disponibles en la breve introducción .
El módulo para el PL-2303 está disponible de forma predeterminada; consulte el repositorio de firmware de GitHub ; cuando conecte el dispositivo, debería verlo encenderse
/var/log/messages
. Me he conectado a un Arduino, y eso "simplemente funcionó" en el puerto de comunicaciones/dev/ttyUSB0
(dispositivo diferente, controlador, chipset, etc., por lo que su kilometraje puede variar ).fuente
El PL-2303 está bien soportado, y aparecerá como
/dev/ttyUSBx
. No se necesitan controladores. Léalo como lo haría con cualquier puerto serie normal. No he usado Python, pero en C ++, lo abro () en modo sin bloqueo, selecciono () para ver si hay datos para leer y luego hago una lectura ().fuente
Descargar pySerial ( https://pypi.python.org/pypi/pyserial )
Puede verificar la disponibilidad de ttyUSB con la línea
Para ver la salida en serie, use
Para romper crtl + c
Crea un archivo testserial.py pega este código
fuente
Gran tutorial para eso:
http://www.digitalmihailo.com/post/usb-programming-with-python-on-linux
Una fuente valiosa de información es http://www.lvr.com/usbc.htm Complete
fuente