在ubuntu上繫結USB介面的兩種方式

2021-09-26 04:22:24 字數 1980 閱讀 7801

方式

一、給固定的usb裝置乙個別名:

1.將串列埠裝置插入usb口,通過lsusb檢視埠資訊。例如:

這裡寫描述

id 1a86:7523 表示usb裝置的id(這個id由晶元製造商設定,可以唯一表示該裝置)

1a86 usb_device_descriptor.idvendor

7523 usb_device_descriptor.idproduct

2.在/etc/udev/rules.d/下建立任意名稱的規則配置檔案,如:usb.rules。

# set the udev rule , make the device_port be fixed by rplidar

#kernel=="ttyusb*", attrs=="10c4", attrs=="ea60", mode:="0777", symlink+="rplidar"

一定要是ttyusb*

3.重啟pc檢視串列埠裝置生成的符號鏈結。

4、用下面的命令就可以檢視對應的對映結果了。

yhzhao@yhzhao:~$ ls -l /dev |grep ttyusb

lrwxrwxrwx  1 root   root             7 apr 14 13:18 rplidar -> ttyusb0

crwxrwxrwx  1 root   uucp      188,   0 apr 14 13:18 ttyusb0

方式二、給固定的usb埠乙個別名:

但是有時候, 很多廠商由於特殊原因,在串列埠晶元上,寫入的裝置號的名字 都是一樣的。

所以要用到 另外乙個辦法,就是通過繫結裝置的硬體埠號 ,如下命令

echo  'kernels=="3-1.1",  mode:="0666", group:="dialout",  symlink+="usb_0"' >/etc/udev/rules.d/usb.rules  

會將硬體上屬於 3-1.1 的裝置號對映到usb_0上 , 可以通過以下命令 檢視 板子上的硬體埠的核心裝置名 。

udevadm info --attribute-walk --name=/dev/ttyacm0 ;  

該條命令會將 ttyacm0所對應的硬體埠的kernel裝置名 顯現出來, 得到kernel== '1-5.5.4', 而不是之前的ttyusb0,因為這個在linux上插拔的時候,會根據先後順序來產生usb/acm0 ,usb/acm1 ,

所以我們 在利用該值 , 如上 在udev 新增埠裝置規則進行串列埠的繫結,只不過繫結的是 具體的usb硬體對應的 kernels值。

第一步:

終端輸入:sudo vi /etc/udev/rules.d/10-local.rules

新增下面的內容

action=="add", kernels=="1-2:1.0",subsystems=="usb",attrs=="usb serial converter",mode:="0777",symlink+="gps_serial0"

action=="add", kernels=="1-3:1.0",subsystems=="usb",mode:="0777",symlink+="my4g_serial0"

action=="add", kernels=="1-3:1.1",subsystems=="usb",mode:="0777",symlink+="my4g_serial1"

action=="add", kernels=="1-3:1.2",subsystems=="usb",mode:="0777",symlink+="my4g_serial2"

action=="add", kernels=="1-3:1.3",subsystems=="usb",mode:="0777",symlink+="my4g_serial3"

action=="add", kernels=="1-3:1.4",subsystems=="usb",mode:="0777",symlink+="my4g_serial4"

Ubuntu16 04下繫結USB串列埠裝置埠號

最近除錯串列埠裝置,同一臺電腦上需要連線多個串列埠,為了保證串列埠不變,所以需要繫結usb串列埠裝置埠號,特此記錄。首先將串列埠裝置插入usb口,通過指令lsusb檢視埠資訊 如果不知道哪個是自己的裝置,可以拔掉串列埠,執行lsusb,然後做對比,就知道哪個是自己剛剛插入的usb裝置了 從終端列印的...

在ubuntu上實現炫酷的終端介面

以前看過一些科幻電影,畫面中總是會有乙個厲害的黑客,敲著一些完全看不懂的 開著幾個不知所以然的炫酷視窗,以前很羨慕,但現在就可以通過hollywood程式實現。ubuntu18可以直接安裝,其他版本的ubuntu需要安裝ppa apt add repository ppa hollywood ppa...

Ubuntu下USB串列埠繫結固定的裝置名

昨天學習了ubuntu 串口號固定 作用 為什麼需要固定串口號呢?因為在ros中要讀取外設的資料,通過串列埠通訊,這就顯得十分重要了,讀取資料就必須知道該串口號,但是在linux系統中,串口號是根據接入的順序來命名的,如果不固定串口號則需要每次檢視串口號,然後做相應的修改。step1 檢視串列埠資訊...