我需要处理两个通过两个串行连接发送调试数据的自定义硬件。这些串行连接通过两个串行到USB转换器。串口至USB设备具有相同的供应商编号,设备编号以及显然相同的序列号。如何从我的串行端口始终记录数据?
下面是问题:我想分别记录两个串行端口。自定义硬件需要不断重新启动,并且它们是否连接到相同的/dev/ttyUSB*
是完全随机的。我怎样才能让他们每次都选择相同的设备路径?我可以让它取决于它插入什么端口,但这似乎有点哈克。
所以,我跑了反对udevadm的输出差异,像这样:
$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB1` > usb1
$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB2` > usb2
$ diff usb1 usb2
The output of the diff is long; you can see it here
Grepping串行(两者相同):
$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB2` | grep serial
SUBSYSTEMS=="usb-serial"
ATTRS{serial}=="0001"
ATTRS{serial}=="0000:00:1d.7"
其他信息:
我正在使用PuTTY从串口读取数据。
OS:
$ uname -a
Linux xxxxxxxx.localdomain 2.6.32-279.14.1.el6.x86_64 #1 SMP Tue Nov 6 23:43:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
请参阅http://askubuntu.com/questions/49910/how-to-distinguish-between-identical-usb-to-serial-adapters –
@KarlBielefeldt我宁愿不让它依赖于它是哪个端口插入,但如果这是唯一的方法,我会采取。 –
据我所知,如果序列号相同,那*就是唯一的方法。 –