LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1420|回复: 6

求教:如何编程取得usb设备的描述信息 如:manufacture ID 和product ID?

[复制链接]
发表于 2008-1-16 18:51:51 | 显示全部楼层 |阅读模式
如题:

      在linux系统下 ,在用C编写的程序中:

       如何得到主机上面有多少usb port呢?
      怎样选中一个usb port进行操作?
      当有usb设备插入时,如何得到该usb设备的相关信息呢?

谁能给个提示啊? 谢谢了!
发表于 2008-1-16 20:56:07 | 显示全部楼层
使用libusb
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-17 14:42:11 | 显示全部楼层
若是在嵌入式开发环境中,没有libusb呢 ?
另外,如何取得SATA硬盘的S/N呢,也是嵌入式环境下?
谢谢了!
回复 支持 反对

使用道具 举报

发表于 2008-1-18 09:37:21 | 显示全部楼层
/proc 下面应该有吧。

USB:
$ cat /proc/bus/usb/devices

T:  Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=16 #Cfgs=  1
P:  Vendor=09a6 ProdID=8001 Rev= 1.00
S:  Manufacturer=USB
S:  Product=USB Flash Disk
S:  SerialNumber=20031204105645-01
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=01(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-18 12:09:46 | 显示全部楼层
没有啊   
在我的环境里  /proc/bus 下没有usb这个目录的

系统里的 usb 驱动是怎么得到这些信息的呢 ?
我们能不能调用驱动的函数或是他的返回值来取得呢?

谢谢!
回复 支持 反对

使用道具 举报

发表于 2008-1-18 13:29:16 | 显示全部楼层
跟进驱动里看看里面是怎样实现的就知道了
回复 支持 反对

使用道具 举报

发表于 2008-1-18 14:25:50 | 显示全部楼层
2.6以上内核,udevd
2.4内核,hotplug
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表