USB串口创建别名

在实际应用中,当电脑连接多台usb设备上,每台设备的代码要对串口进行区别,不然容易引起冲突,所以需要创建串口别名。

一、确认设备ID

lsusb

找到对应设备ID ,如下

Bus 003 Device 006: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

二、创建文件

新建 /etc/udev/rules.d/usbname.rules文件,添加以下内容,对应修改

KERNEL=="ttyUSB*", ATTRS{
   idVendor}=="1a86", ATTRS{
   idProduct}=="7523", MODE:="0777", SYMLINK+="usbname"  

三、权限

  1. 增加当前用户对串口的默认访问权限
sudo usermod -a -G dialout 用户名

这里的用户名,填写电脑系统的用户名
2.使UDEV配置生效

sudo service udev reload
sudo service udev restart

四、设置多个设备,若串口ID相同,添加区分

在同一台电脑(或者工控机)上同时有多个串口设备,若其中有两个或者两个以上串口设备ID相同时,需要根据电脑usb的物理顺序来区分。
先只插一个设备:

udevadm info --attribute-walk --name=/dev/ttyUSB0

得到

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0/ttyUSB0':
    KERNELS=="ttyUSB0"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ch341-uart"
    ATTRS{
   port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0':
    KERNELS=="2-2:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="ch341"
    ATTRS

你可能感兴趣的:(USB串口创建别名)