一.相同端口号问题
运行报错
端口号查询
lsusb
发现有两个端口号,idVendor,idProduct完全相同
二.利用udev解决问题
- udev介绍
udev 可以根据设备属性(例如设备型号、序列号等)来配置设备节点的名称、权限和所有权。 简而言之就是给设备起别名,当设备序列多时,可通过别名找到相应设备,方便调试和发现问题。 - 查询其idVendor,idProduct和serial
ls /dev/ttyUSB*
通过插拔设备,反复运行指令,确定其是/dev/ttyUSB多少,假设查询到这两个设备分别是/dev/ttyUSB0和/dev/ttyUSB1
udevadm info -a -n /dev/ttyUSB0
找到ATTRS{idProduct},ATTRS{idVendor},ATTRS{serial}的信息内容
3.编写XXX.sh文件(文件路径可任意选择)
echo 'KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60",ATTRS{serial}=="e0a30ce1cfe7ed11bb42d5770b2af5ab", MODE:="0777", GROUP:="dialout", SYMLINK+="arm"' >/etc/udev/rules.d/arm.rules
service udev reload
sleep 2
service udev restart
将上述所找的内容,改成自己所对应的信息
注意:SYMLINK+=“arm”,双引号中的内容为别名,设备启动可通过别名启动
4.运行.sh文件
cd XXXXXX
进入XXXXX.sh文件的目录下
sudo chmod 777 XXXX.sh #给文件赋权
sudo ./XXXXX.sh #udev配置别名
运行文件
ls /dev/arm #arm是别名
检查是否配置成功,如有输出则为配置成功
- 另一个设备更改也如此,这里不再进行赘述
- 重启设备完成配置