Linux之固定USB串口号
1.写在前面
我使用的系统版本Ubuntu 18.04
目的:使用RS232串口转USB接口, 固定USB串口设备名称
本文仅做记录留存使用.
在做串口通信方面的编程时,会遇到硬件设备无RS232串口,只能通过232转USB转接头连接主机, 但在设备断电重启或者重新插拔后, 对应的ttyUSB数值会改变, 那么我们在程序中写死的串口名(假如是"ttyUSB0")会因为设备的断电重启等因素而无法通信.
2.解决办法
固定USB串口设备名.
- 首先确认我们当前使用的是哪个串口, ttyUSB0还是ttyUSB4,或者其他的; 如果不能确定, 可使用串口工具看一下是哪个串口输出的
- 我的是ttyUSB4, 输入命令
ls sys/class/tty/ttyUSB* -l
可得到如下图:
图中红线标出的地方需要记住, 之后会有用
- 进入/etc/udev/rules.d/目录下
cd /etc/udev/rules.d/
在该目录下新建.rules文件,并打开准备写入(注:文件名可自己定义, 我的是base.rules, 后缀一定是.rules)
sudo vim base.rules
在该文件下写入:
(KERNEL后面的就是我们查询到的,上张图片标红的
SYMLINK后面的是自己命名的, 用来替换USB串口名使用)
保存,退出;;;;
- 将我们的USB设备重新插拔后,会在/dev/下面生成SYMLINK后面自己定义的名称的文件
到这里就完成了…
- 最后在程序中, 我们调用的串口名要由之前的 “ttyUSB4” 改为 “myencoder” 即可…