<Raspberry:udev> linux下给特定USB端口特定设备绑定自定义设备符

最近项目在使用树莓派,需要在树莓派上挂载多个USB转串口模块,但是linux下识别USB设备通常是按照插入顺序命名的,比如第一个插入就是USB0第二个USB1如此类推。。。这样就给我们写脚本或者写程序上添加不少难度,因为存在开机时设备名不稳定随时改变的可能。
这时候我们就可以用到udev规则,就可以实现给在特定的USB端口上的特定设备一个自定义的设备文件链接。
参考:
http://lnmcc.net/2014/03/14/%E4%BD%BF%E7%94%A8udev%E8%A7%84%E5%88%99%E5%9B%BA%E5%AE%9A%E8%AE%BE%E5%A4%87%E5%90%8D/
实现:
终端输入udevadm info --attribute-walk --name=/dev/video0
然后会有一大堆东西打出来

KERNELS=="1-1.3:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="cp210x"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceSubClass}=="00"
    ATTRS{bInterfaceProtocol}=="00"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{authorized}=="1"
    ATTRS{supports_autosuspend}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{interface}=="CP2102 USB to UART Bridge Controller"

我们需要的是这一段
接着在/etc/udev/rules.d下建立一个60-USBSerial.rules的文件,内容:

ACTION=="add",KERNELS=="1-1.x:1.0(物理端口)",SUBSYSTEMS=="usb",DRIVERS=="cp210x",SYMLINK+="MY_Serial"

重启udev服务:

/etc/init.d/udev restart

到这里就可以实现上述功能。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值