我正在使用两个Wavecom 16端口调制解调器。当我将调制解调器连接到我的系统时,我能够列出所有/dev/ttyUSB
端口名称,但我也想知道,哪个调制解调器包含端口0到16,哪个包含端口17到32?
可以在一天内多次连接和删除调制解调器,因此我还希望在调制解调器断开连接并再次连接时保留日志。
任何想法如何使用c / c ++ / php script / node.js?
答案 0 :(得分:18)
您可以从sys
文件系统获取此信息。从shell中检查很容易,然后执行一个相同的程序:
cd /sys/devices
find -name "ttyUSB0"
。它可能会在./pci0000:00/0000:00:1d.0/usb2/2-2/2-2.1/2-2.1:1.0/...
pci*
部分是USB控制器。有趣的是2-2.1
,它是USB设备。在该目录中,有许多文件可识别您的设备:
serial
:序列号。可能是你想要的。idVendor
和idProduct
:设备的USB标识符。步骤1和2的一个简单方法是:
cd /sys/class/tty/
readlink ttyUSBn
将为您提供设备目录的完整路径。作为脚注,请注意sysfs
的某些部分被认为是API稳定的,而某些部分则不是。有关详细信息,请参阅official sysfs rules。