在ubuntu下使用串口的时候,为了防止插拔usb后端口号发生变化,需要绑定设备名(对USB挂载设备映射)。
绑定的步骤分为3步
1. 获取待绑定的USB设备的ID号码
$ lsusb
在终端中输入上述命令,来获取下ID
如果想要获取更详细的数据,可以使用:
udevadm info -a -n /dev/ttyUSB*
2. 创建对应的规则文件
$ sudo gedit /etc/udev/rules.d/usb.rules
3. 将ID替换,为自己的设备起名,保存。
KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", MODE:="0777", SYMLINK+="dji"
红色是ID号码(需要替换),蓝色是新起的设备名。
重新插上设备,输入绑定的别名,就可以看到自己的设备了。
$ ls /dev/dji
因为同一类型的设备ID是一致的,所以这种方法就失效了。
我们为了标示设备,就需要连接器件进行修改。
以CP2102为例,可以通过官方的CP210xSetIDs.exe 修改设备中的serial项,并在rules文件中添加ATTRS{serial}项。
步骤如下
1. 下载官方的CP210xSetIDs.exe ,在windows下打开,插入CP2102,可以看到Serial Numer,修改此项,点击 Program Device。
2. 修改之前的rules文件,添加ATTRS{serial}=="0002",数值视实际而定
$ sudo gedit /etc/udev/rules.d/usb.rules
KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="0002", MODE:="0777", SYMLINK+="RFD"
3. 如此就可以保证绑定唯一的设备名了。