2015-09-21 6 views
0

У меня есть два Arduinos, которые теперь используются моей программой. SInce Я нахожусь в Linux и новичок в Linux, порт не статичен, как «com3» и «com6», я думаю, что это «ttyUSB0» для первого подключенного Arduino, а «ttyUSB1» для второго и скоро. Но так как оба связаны при загрузке ОС, могу ли я быть уверенным, что имена портов останутся прежними? Или есть другой способ доступа к портам по имени?постоянные имена портов USB? (Linux)

ответ

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" 
+0

В "ATTRS {серийный}" является серийным nubmer? –

+0

Это параметр для серийного номера устройства USB. –

+0

Немного запутанный, который является серийным номером/строкой, которую я могу ввести в свою программу? –