当前位置: 首页 > news >正文

解决 ubuntu 重启串口号变化

在多个串口设备连接ubuntu时,每次开机,串口号总是互相串,导致无法正常使用

解决这个问题的办法就是将串口的唯一序号和他的符号链接进行绑定,即可每次开机保证串口是唯一的

例如现在有两个串口

jetson@nano:~$ ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1

通过这个命令查看USB0串口的唯一序号

jetson@nano:~$ udevadm info -a -n /dev/ttyUSB0 | grep -E "idVendor|idProduct|serial|manufacturer"SUBSYSTEMS=="usb-serial"ATTRS{idProduct}=="7523"ATTRS{idVendor}=="1a86"ATTRS{idProduct}=="5411"ATTRS{idVendor}=="0bda"ATTRS{manufacturer}=="Generic"ATTRS{manufacturer}=="Linux 4.9.253-tegra xhci-hcd"ATTRS{idProduct}=="0002"ATTRS{serial}=="70090000.xusb"  <---这个就是串口唯一序号ATTRS{idVendor}=="1d6b"

USB 1 同理,记录其串口唯一序号

然后创建udev rules文件

sudo touch /etc/udev/rules.d/99-serial.rules

编辑它

sudo gedit /etc/udev/rules.d/99-serial.rules

输入内容

SUBSYSTEM=="tty", ATTRS{serial}=="70090000.xusb", SYMLINK+="imu"SUBSYSTEM=="tty", ATTRS{serial}=="0001", SYMLINK+="lidar"

ATTRS{serial}= 填写串口唯一序号

SYMLINK+= "" 双引号内填写串口符号链接名称 例如 “imu” ,那么符号链接就是 /dev/imu

编写完成后重新载入

sudo udevadm control --reload-rules
sudo udevadm trigger

拔插串口,查看符号链接是否生效

jetson@nano:~$ ls /dev/imu 
/dev/imu
jetson@nano:~$ ls /dev/lidar 
/dev/lidar

搞定!


文章转载自:

http://hPmAPXq0.cpLjq.cn
http://Ikp0SYkl.cpLjq.cn
http://qVpFQib0.cpLjq.cn
http://m5cFEjnJ.cpLjq.cn
http://HqNSB8Xk.cpLjq.cn
http://9ph1L8QH.cpLjq.cn
http://Z67ds2Co.cpLjq.cn
http://iSE87N5I.cpLjq.cn
http://n8YYi9KG.cpLjq.cn
http://sPrETOsM.cpLjq.cn
http://pKl5bZmj.cpLjq.cn
http://2twTZHbZ.cpLjq.cn
http://x2n1ZRaT.cpLjq.cn
http://rntivwBh.cpLjq.cn
http://HRRB7P9l.cpLjq.cn
http://26CSyRTA.cpLjq.cn
http://eWOkWQcc.cpLjq.cn
http://oCXG0Uw0.cpLjq.cn
http://N6wz06Pl.cpLjq.cn
http://ueikxJ4J.cpLjq.cn
http://JHEK6gws.cpLjq.cn
http://VCGlMYUD.cpLjq.cn
http://Ntg47uLO.cpLjq.cn
http://kquDetru.cpLjq.cn
http://QtD7k38l.cpLjq.cn
http://Kw1mYbYd.cpLjq.cn
http://bKvyje3q.cpLjq.cn
http://ftIedwNy.cpLjq.cn
http://5g4Zhrzq.cpLjq.cn
http://lob3uc3o.cpLjq.cn
http://www.dtcms.com/a/381580.html

相关文章:

  • 《算法与数据结构》第六章[第3节]:二叉树(第二部分)
  • 深入理解 Python 中的 `__call__` 方法
  • AI 智能体的定义与演进
  • 鸿蒙Next ArkWeb网页交互管理:从基础到高级实战
  • 给CentOS的虚拟机扩容
  • Redis 持久化:RDB 和 AOF 的 “爱恨情仇”
  • 多源最短路(Floyd算法
  • 【数据结构——图(例图篇)】
  • 安卓俄罗斯方块,经典拖动双模式体验
  • 21th cpp think
  • 收集飞花令碎片——C语言关键字typedef
  • Python/JS/Go/Java同步学习(第十二篇)四语言“字符串填充编号“对照表: 财务“小南“纸式填充术加凭证编号崩溃(附源码/截图/参数表/避坑指南)
  • 工具变量-5G试点城市DID数据(2014-2025年
  • 金融数学专业需要学哪些数学和编程内容?
  • 【算法】【链表】148.排序链表--通俗讲解
  • Linux 内核镜像与启动组件全解析:从 vmlinux 到 extlinux.conf
  • HIS架构智能化升级编程路径:从底层原理到临床实践的深度解析(上)
  • leetcode-加油站
  • Coze源码分析-资源库-创建知识库-前端源码-总结
  • 【PHP7内核剖析】-1.2 执行流程
  • Java 多线程进阶(四)-- 锁策略,CAS,synchronized的原理,JUC当中常见的类
  • 从ENIAC到Linux:计算机技术与商业模式的协同演进
  • UE5版本Windows构建pc平台报错googletest的问题记录
  • 【LeetCode】杨辉三角,轮转数组,洗牌算法
  • 5.Three.js 学习(基础+实践)
  • 在 React 中如何使用 useMemo 和 useCallback 优化性能?
  • C++20多线程新特性:更安全高效的并发编程
  • 结构光三维重建原理详解(1)
  • window显示驱动开发—视频呈现网络简介
  • Vision Transformer (ViT) :Transformer在computer vision领域的应用(二)