樹莓派的
usb埠接通時被對映為乙個檔案存在
/dev/
目錄下,通常是
ttyusb0, ttyusb1
等等。實際應用它存在這樣乙個問題,樹莓派並不是指定哪乙個埠就是
ttyusb0,
或哪乙個就是
ttyusb1,
而是把第乙個接入裝置的
usb口定為
ttyusb0,
第二個是
ttyusb1,
這在接乙個裝置時是優點,可是接多個裝置,在程式裡就分不清
ttyusb0
,ttyusb1
到底指的哪乙個裝置了。
所以應給各個
usb口定乙個固定的名字,在程式中好讓我們準確地找到它。方法如下:
1.檢視
usb號
執行命令:
在樹莓派系統裡,其實對
usb口是有區分的,反覆插拔
usb,並執行上面的命令,可以找出系統對
usb口的命名規律,如下圖所示:
不論怎樣插拔
usb,埠自身都是上面的編號,因此,只要給這幾個編號指定別名就可以了
2.編輯配置檔案
執行命令:
sudo vim/etc/udev/rules.d/99-com.rules
在檔案末尾加入下面內容
以上幾句話的意思就是為
usb編號指定別名。
3.重啟服務
執行命令:
sudo/etc/init.d/udev restart
4.檢視結果
執行命令:
可見,不論
ttyusb*
怎樣變,埠都有乙個自己的名字
5.程式中訪問:
# -*- coding: utf-8 -*-
import serial
import time
t0 = serial.serial('/dev/device0',9600)
t1 = serial.serial('/dev/device2',9600)
t2 = serial.serial('/dev/device3',9600)
樹莓派USB埠繫結
本文參考引用部落格 在做樹莓派相關的工程時,由於linux是按照插入順序對裝置進行編號,常遇到插拔不同usb裝置 如串列埠 攝像頭 感測器等外設 樹莓派識別埠號跳躍的問題,例如原本識別為 dev video0,重插後識別為 dev video2這種尷尬的問題。這使得在程式中固定埠號讀取十分不方便。幸...
一些固定的埠號
ssh伺服器,使用22埠 ftp伺服器,使用21埠 telnet伺服器,使用23埠 http伺服器,使用80埠 https伺服器,使用443埠 作業系統動態分配的埠號 檢視埠號 less etc services 就可以檢視linux下所有的埠號了埠號的理解 問題 乙個程序是否可以bind多個埠號呢...
埠號的分類
計算機 埠 1 是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬體領域的埠又稱介面,如 usb埠 串列埠等。軟體領域的埠一般指網路中面向連線服務和無連線服務的通訊協議埠,是一種抽象的軟體結構,包括一些資料結構和i o 基本輸入輸出 緩衝區。1 什麼是埠號 在一台主機上執行了多個服務...