Raspberry Pi'ye bağlamak istediğim bir USB seri port kablosu olan bir cihazım var. Bu USB'den seri kabloya yonga seti Prolific Technology, Inc.'den PL-2303
Python kullanarak bu cihazın seri bağlantısından verileri nasıl okuyabilirim?
Raspberry Pi'ye bağlamak istediğim bir USB seri port kablosu olan bir cihazım var. Bu USB'den seri kabloya yonga seti Prolific Technology, Inc.'den PL-2303
Python kullanarak bu cihazın seri bağlantısından verileri nasıl okuyabilirim?
Yanıtlar:
Python kullanarak bir seri cihazla konuşmak için, pyserial modülünü kullanın. Dağıtımınızda kullanılamıyorsa , kaynakın bir kopyasını pyserial proje sayfasından alıp "python setup.py install" komutunu çalıştırarak kurulabilir.
Kısa tanıtımda psikolojik kullanımın basit örnekleri mevcuttur .
PL-2303 modülü varsayılan olarak mevcuttur - GitHub deposuna bakın - cihazı taktığınızda cihazın ateşlendiğini görmelisiniz /var/log/messages
. Bir Arduino'ya bağlandım ve iletişim bağlantı noktasında "yeni çalıştı" /dev/ttyUSB0
(farklı cihaz, sürücü, yonga seti, vb. Böylece kilometreniz değişebilir ).
PL-2303 iyi desteklenmektedir ve olarak görünecektir /dev/ttyUSBx
. Sürücüye gerek yok. Herhangi bir normal seri bağlantı noktasında olduğu gibi okuyun. Python kullanmadım, ancak C ++ 'da engellemeyen modda () açıyorum, okunacak veri olup olmadığını görmek için () öğesini seçin ve sonra bir okuma () yapın.
PySerial'i indirin ( https://pypi.python.org/pypi/pyserial )
wget http://pypi.python.org/packages/source/p/pyserial/pyserial-2.7.tar.gz?raw=true -O pyserial-2.7.tar.gz
tar -xzf pyserial-2.7.tar.gz
cd pyserial-2.7
sudo python setup.py install
TtyUSB kullanılabilirliğini hat ile kontrol edebilirsiniz
ls -ltr /dev|grep -i ttyUSB
Seri çıkışı görüntülemek için
tail -f /dev/ttyUSB<NUMBER FROM ABOVE>
Crtl + c'yi patlatmak için
Bu kodu bir testerial.py dosyası yapıştırın
#!/usr/bin/python
from time import sleep
import serial
# Establish the connection on a specific port
ser = serial.Serial('/dev/ttyUSB0', 9600)
x = 1 while True:
print ser.readline() # Read the newest output
x += 1
Bunun için harika bir öğretici:
http://www.digitalmihailo.com/post/usb-programming-with-python-on-linux
Değerli bir bilgi kaynağı http://www.lvr.com/usbc.htm Tamamlandı