我的程序现在使用了两个Arduinos。 我在Linux和Linux新手,端口不是静态的,比如“com3”和“com6”,我认为连接的第一个Arduino是“ttyUSB0”,第二个是“ttyUSB1”等等上。但是,由于两者在操作系统启动时都已连接,我可以确定端口名称是否保持不变?或者是否有其他方式按名称访问端口?
答案 0 :(得分:3)
使用udev!
udevadm info -a -n /dev/ttyUSB1 | grep '{serial}' | head -n1
应该为您提供USB接口序列号。
然后你可以写udev规则:
例如
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A6008isP", SYMLINK+="arduino"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A7004IXj", SYMLINK+="buspirate"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="FTDIF46B", SYMLINK+="cisco.serial"