最近正在在linux平台下写一个C的程序。这里,我希望程序能够及时的知道有usb
设备插入,并保存这个设备产生的设备文件。但是,不知道应该如何实现?
具体一点来说,如果大家使用过GSM等无线模块的话,会知道:当一个模块插入usb
插口后,系统会自动识别并加载usbserial驱动,并在/dev /目录下生成ttyUSB0的
设备文件。如果插入多个(也有一些模块,如LC6311,会一下产生6个设备文
件),则继续生成 ttyUSB1,ttyUSB2...等设备文件。我的程序里要实现的就是,
当设备插入usb插口后,能够及时的检测到设备信息(如 VendorID,ProductID等信
息),并知道对应的设备产生了哪些设备文件(如果这是第一个虚拟串口设备,这
里往往便是/dev /ttyUSB0)。
我大致了解了一下libusb库,应该是可以通过轮询的方法检测到设备和相应ID信
息,但是,似乎没有办法知道这个usb设备产生了哪些设备文件。请问大家有好的
办法么?
xzpeter