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

ubuntu工控机固定设备usb串口号

ubuntu工控机固定设备usb串口号

1、多个USB设备的ID相同

ubuntu系统中的串口使用权限并没有对所有的用户进行开放,所以在使用代码对串口进行操作时,需要打开用户对串口的使用权限,否则在代码中会出现“串口无法打开的报错”,只有在加sudo时才能正常运行。

tty设备的用户主是root,所属组是dialout;而ubuntu安装时,默认使用的账户并没有加入到dialout组中,因此需要将用户加入到dialout组中

(1) 打开当前用户的串口使用权限

查看当前用户名

whu

1)查看当前用户是属于哪些组,组中是否有dialout

groups user_name

将当前用户加入到dialout组中

sudo usermod -a -G dialout user_name

  1. 查看是否添加成功,按照1)的方法

(2)lsusb查看设备ID

lsusb

(2) 查看当前插入设备的串口名

ubuntu中支持多个串口操作,可以通过设备插拔来发现当前的设备使用的串口名。

ls -l /dev/tty*  

(3) 查看usb口的KERNELS

udevadm info /dev/ttyUSB0

udevadm info -n /dev/ttyUSB0

udevadm info -a -n /dev/ttyUSB0

(4)创建 udev 规则文件

sudo vim /etc/udev/rules.d/myusb.rules

ACTION=="add",KERNELS=="1-3.4",SUBSYSTEMS=="usb",MODE:="0777",SYMLINK+="myusb"

SYMLINK 属性指定固定名称

(5)验证

拔掉usb,终端输入

sudo service udev reload

sudo service udev restart

插上usb,终端输入:

ls /dev/myusb

2、usb设备ID不同

ubuntu工控机固定设备usb串口号(详细)_ubuntu固定串口号-CSDN博客

固定 设备的 USB转串口号//查看当前有哪几个串口ls /dev/tty*//查看设备串口信息lsusbcd /etc/udev/rules.dsudo gedit myusb.rules //输入KERNEL=="ttyUSB*", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", MODE:="0777", SYMLINK+="imu"//其中的“067b”,"2303"为usb线的ID,"imu"为usb串口名//拔掉usb,终端输入:sudo service udev reloadsudo service udev restart//插上usb,终端输入,验证ls /dev/imu //imu为自己设的usb串口名//[优点:插不同usb口都有同样的端口号]//缺点:换一条带有同芯片的usb转接线也会出现相同点串口名,如我买的一款usb口温度传感器就和我用来连接无线数传的usb转接 线有同样的ID “1a86:7523” ,这时两条usb同时接时就无法准确获取相应口的信息。。。

lsusb  #插拔看设备id号

/etc/udev/rules.d/your_usb.rules

ls /dev/tty*

http://www.dtcms.com/a/198383.html

相关文章:

  • 给easyui的textbox绑定回车事件
  • 计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 13.几何着色器(一)修改顶点
  • React Flow 边事件处理实战:鼠标事件、键盘操作及连接规则设置(附完整代码)
  • 学习黑客HTTP(HyperText Transfer Protoco)
  • 从代码学习深度学习 - 近似训练 PyTorch版
  • [强化学习的数学原理—赵世钰老师]学习笔记02-贝尔曼方程-下
  • 【AWS】从 0 基础直觉性地理解 IAM(Identity and Access Management)
  • CudaMemCpy returns cudaErrorInvalidValue
  • 《Vite 报错》ReferenceError: module is not defined in ES module scope
  • 学习黑客Active Directory入门
  • 重读《人件》Peopleware -(10-2)Ⅱ 办公环境 Ⅲ 节省办公空间的费用(下)
  • 多头自注意力机制—Transformer模型的并行特征捕获引擎
  • 打卡Day29
  • Vue百日学习计划Day24-28天详细计划-Gemini版
  • C++中的容器
  • Spring Boot JWT认证示例项目
  • 怎样免费开发部署自己的网站?
  • react深入2 - react-redux
  • MySQL——6、内置函数
  • 2025年- H31-Lc139- 242.回文链表(快慢指针)---java版--需2刷
  • c++编写中遇见的错误
  • 如何利用DeepSeek提升工作效率
  • LaTeX OCR - 数学公式识别系统
  • matlab分段函数
  • 大模型解析:AI技术的现状、原理与应用前景
  • Ubuntu搭建NFS服务器的方法
  • 【Linux】第十八章 调优系统性能
  • 面试中的线程题
  • 系统架构设计(十二):统一过程模型(RUP)
  • 【设计模式】- 行为型模式2