文章目录

  • 前言
  • 方法一:同类型厂家设备也有效,固定的是工控机本体的端口号,需要固定设备插入位置
    • 1.查看USB端口信息,找到唯一KERNELS
    • 2.在/etc/udev/rules.d 路径下添加映射文件usb.rules(可取其他名字)
    • 3.重启后生效(重新插拔)
    • 4.代码中打开设备使用时,用 /dev/gps_sensor 打开串口即可
  • 方法二:都是不同类型厂家设备时使用,此方法可以*不用固定设备插入的位置*
    • 1.找到自己插入USB设备的ID号
    • 2.在/etc/udev/rules.d 路径下添加映射文件usb.rules(可取其他名字)
    • 3.重启后生效(重新插拔)
    • 4.代码中打开设备使用时,用 /dev/gps_sensor 打开串口即可
  • 参考:

前言

linux系统插入多个USB串口设备时,串口的编号不是固定的,与串口上电的顺序有关。为了解决每次上电顺序不同,或插入顺序不同的问题,可以将USB设备固定到某一端口位置,映射成自己的设备名字。


方法一:同类型厂家设备也有效,固定的是工控机本体的端口号,需要固定设备插入位置

先看固定方式

1.查看USB端口信息,找到唯一KERNELS

wjh@wjh_honor:~$ udevadm info --attribute-walk --name=/dev/ttyUSB0 |grep KERNELSKERNELS=="ttyUSB0"KERNELS=="1-5:1.0"KERNELS=="1-5"KERNELS=="usb1"KERNELS=="0000:00:14.0"KERNELS=="pci0000:00"

“1-5”这个与硬件本身端口有关,与插入设备无关,可以做标识。

2.在/etc/udev/rules.d 路径下添加映射文件usb.rules(可取其他名字)

根据KERNELS 在/etc/udev/rules.d/usb.rules 文件中添加端口映射

wjh@wjh_honor:~$ sudo vim /etc/udev/rules.d/usb.rules

添加如下代码:

KERNEL=="ttyUSB*",KERNELS=="1-5", MODE:="0777", SYMLINK+="gps_sensor"

3.重启后生效(重新插拔)

查看/dev/ttyUSB*下USB端口是否生效

wjh@wjh_honor:~$  ls -l /dev |grep ttyUSB
lrwxrwxrwx  1 root root           7 12月 10 09:42 gps_sensor -> ttyUSB0
crwxrwxrwx  1 root dialout 188,   0 12月 10 09:42 ttyUSB0

4.代码中打开设备使用时,用 /dev/gps_sensor 打开串口即可


方法二:都是不同类型厂家设备时使用,此方法可以不用固定设备插入的位置

1.找到自己插入USB设备的ID号

wjh@wjh_honor:~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0408:1020 Quanta Computer, Inc.
Bus 001 Device 012: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter//就是这个!
Bus 001 Device 011: ID 2109:2815 VIA Labs, Inc.
Bus 001 Device 008: ID 046d:c542 Logitech, Inc.
Bus 001 Device 004: ID 8087:0aaa Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

“ID 1a86:7523”这个就是设备ID,不同厂家设备ID都不同,唯一标识号,可以做标识。

2.在/etc/udev/rules.d 路径下添加映射文件usb.rules(可取其他名字)

根据设备ID号 在/etc/udev/rules.d/usb.rules 文件中添加端口映射

wjh@wjh_honor:~$ sudo vim /etc/udev/rules.d/usb.rules

添加如下代码:

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

3.重启后生效(重新插拔)

查看/dev/ttyUSB*下USB端口是否生效

wjh@wjh_honor:~$  ls -l /dev |grep ttyUSB
lrwxrwxrwx  1 root root           7 12月 10 09:52 gps_sensor -> ttyUSB0
crwxrwxrwx  1 root dialout 188,   0 12月 10 09:52 ttyUSB0

4.代码中打开设备使用时,用 /dev/gps_sensor 打开串口即可

参考:

https://blog.csdn.net/qq_38441692/article/details/88314310
https://www.cnblogs.com/CZM-/p/6113475.html

linux系统USB端口序号绑定,相同或不同设备厂家都可相关推荐

  1. Linux 系统USB设备检测

    Linux 系统USB设备检测 Linux下查看USB设备命令: 参考链接: https://wenku.baidu.com/view/a33c0d616aeae009581b6bd97f192279 ...

  2. Linux系统中端口映射是什么意思?

    百度百科中解释说:端口映射是NAT的一种,功能是把在公网的地址转翻译成私有地址,采用路由方式的ADSL宽带路由器拥有一个动态或固定的公网IP,ADSL直接接在HUB或交换机上,所有的电脑共享上网.那么 ...

  3. linux中查端口命令,Linux系统查看端口的操作办法

    有部分Linux系统的用户,不知道如何查看上的端口,今天小编就来介绍一下,如何使用netstat , ss 和 lsof 命令找出哪些服务上使用哪些端口的办法. 1.正在侦听的端口 网络端口由编号,关 ...

  4. 阿里云服务器上的linux系统开放端口

    阿里云服务器上的linux系统开放端口 防火墙状态查看 开放端口 重启防火墙 查看已开放的端口 阿里云服务器开放安全组 防火墙状态查看 firewall-cmd --state running表示防火 ...

  5. linux系统下,浏览器怎么调用本地硬件设备如指纹仪等。

    linux系统下,浏览器怎么调用本地硬件设备如指纹仪等. 这个问题是一个同学在项目开发中遇到的问题,做的也是政府部门相关的项目,由于现在政府部门都在慢慢开始放弃windows系统改用Linux系统了, ...

  6. linux 查询usb端口名称,在Linux系统里识别USB设备名字的4种方法

    对于初学者来说,在 Linux 系统里你必须掌握的技术之一就是识别出插入系统里的各种设备.这也许是你的系统硬盘.外部的存储设备或者是可移动设备,比如 USB 设备或 SD 闪存卡等. 现如今,使用 U ...

  7. Linux系统IO端口,Linux系统对IO端口和IO内存的管理

    五.Linux下访问IO端口 对于某一既定的系统,它要么是独立编址.要么是统一编址,具体采用哪一种则取决于CPU的体系结构. 如,PowerPC.m68k等采用统一编址,而X86等则采用独立编址,存在 ...

  8. linux 查看usb端口_linux开发:Linux下查看端口占用

    怎么查看linux系统中已经被占用的端口?下面我就统一给大家解释一下. 提到端口,那首先来回顾端口定义,为了区分一台主机接收到的数据包应该转交给哪个任务来进行处理,使用端口号来区别:我们知道TCP端口 ...

  9. linux查看usb设备文件,4 种方法识别Linux系统 USB 设备

    导读 如果在系统中插入一个设备,尤其是在桌面环境下,比如 USB 设备,它会自动挂载到一个指定目录,一般是在 /media/username/device-label 目录下,之后你就可以进入到该目录 ...

最新文章

  1. php 前端控制器,前端控制器模式
  2. UA MATH571A QE练习 R语言 非参数回归 上
  3. html实战例子: 点击图片超链接跳转
  4. python输出日期语句_python输出语句怎么用
  5. php 支付宝订单查询_5. PHP接入支付宝单笔订单查询接口
  6. 网站安装打包 软件环境检测与安装[二] 下
  7. 购物商城Web开发第二十三天
  8. docker mysql 日志_在docker mysql容器中启用日志记录
  9. java 缓冲流 刷新_java – 缓冲和刷新Apache Beam流数据
  10. 这位硬核程序员,想好怎么过春节了吗?
  11. Beego框架简介准备搭建分布式爬虫
  12. 【李宏毅2020 ML/DL】P99-105 Life Long Learning
  13. 香农编码的gui编码_1、香农编码方法
  14. 小米路由器无线网无法连接到服务器,小米路由器桥接后进不了路由器设置
  15. 怎么复制图片的html代码,修改设置让你轻松复制网页文字或图片
  16. 揭秘:为什么羊毛党可以0元购物?
  17. $.ajax %5b%5d,数据传回后台数带有%5B%5D的问题
  18. c语言有cot三角函数吗,c/c++ 实现三角函数(不使用库函数) sin/cos/tan/cot
  19. 2021-01-19 :在pycharm中创建包含anaconda中各种库的环境
  20. 路由器DNS被劫持 解决办法

热门文章

  1. in on at 总结
  2. 数据标准:数澜科技之标准管理
  3. java如何得到项目的webRoot 路径?system.root
  4. 制作gif动图python_利用Python如何制作好玩的GIF动图详解
  5. 电子学会青少年软件编程 Python编程等级考试二级真题解析(选择题)2021年12月
  6. 微信小程序使用echarts显示全国地图
  7. 对象族谱之类实例化过程
  8. pmbok第六版变化说明
  9. ISIS-路由器邻接关系建立
  10. grasshopper