J'ai un appareil avec un câble de port série USB que je voudrais connecter à mon Raspberry Pi. Le chipset pour ce câble USB vers série est le PL-2303 de Prolific Technology, Inc.
Comment lire les données de la connexion série de cet appareil à l'aide de Python?
Réponses:
Pour parler à un périphérique série à l'aide de Python, utilisez le module pyserial. S'il n'est pas disponible dans votre distribution, il peut être installé en obtenant une copie de la source à partir de la page du projet physique et en exécutant "python setup.py install"
Des exemples simples d'utilisation de pyserial sont disponibles dans la courte introduction .
Le module du PL-2303 est disponible par défaut - voir le référentiel du firmware GitHub - lorsque vous branchez l'appareil, vous devriez le voir s'allumer
/var/log/messages
. Je me suis connecté à un Arduino, et cela "a juste fonctionné" sur le port de communication/dev/ttyUSB0
(périphérique différent, pilote, chipset, etc., donc votre kilométrage peut varier ).la source
Le PL-2303 est bien pris en charge et il apparaîtra comme
/dev/ttyUSBx
. Aucun pilote n'est nécessaire. Lisez-le comme vous le feriez pour n'importe quel port série normal. Je n'ai pas utilisé Python, mais en C ++, je l'ouvre () en mode non bloquant, sélectionne () pour voir s'il y a des données à lire, puis fais une lecture ().la source
Téléchargez pySerial ( https://pypi.python.org/pypi/pyserial )
Vous pouvez vérifier la disponibilité de ttyUSB avec la ligne
Pour afficher la sortie série, utilisez
Pour décomposer crtl + c
Créer un fichier testserial.py coller ce code
la source
Grand tutoriel pour ça:
http://www.digitalmihailo.com/post/usb-programming-with-python-on-linux
Une source précieuse d'informations est http://www.lvr.com/usbc.htm Complete
la source