,在设备开发中,常用到基于USB的虚拟串口,此类接口在linux平台上被枚举为ttyUSB设备。
当有多个ttyUSB设备时,常常导致分不清是哪个功能接口。
,其实还是可以很容易分出来的,在sysfs中通过以下步骤查看可以轻而易举的搞得一清二楚。
,查看sys目录,会看到总线子目录
/#:ls /sys block ,,,, class ,,,,,,, devices  firmware , kernel ,,, pmu ,,,,,中兴通讯 bus ,,,,,, dev ,,,,,,,,, dwc_usb  fs ,,,,,,, module ,,,权力
,查看巴士子目录,会有USB子目录
/#:ls /sys/公共汽车 clocksource , i2c ,,,,,,,,,,,, rpmsg_zx29  serio ,,,,,,的usb cpu ,,,,,,,,, platform ,,,, scsi ,,,,,,,, spi ,,,,,,,,, usb串口
,查看USB子目录,会有设备和驱动程序子目录
/,#,ls sys/汽车/USB devices ,,,,,,,,,,, drivers_autoprobe uevent drivers ,,,,,,,,,,, drivers_probe
,在设备目录下,即是所有的USB设备
/,#,ls sys/汽车/USB设备 1-0:1.0 , 1-1 ,,,,, 1-1:1.0 , 1-1:1.1 , 1-1:1.2 , 1-1:1.3 , 1-1:1.4 , 1-1:1.6 , usb1
,任选一个查看,比如选择1-1:1.2,可以看到该设备的诸多属性
/,#,ls sys/汽车/usb/设备/1-1:1.2 bAlternateSetting ,,,, driver ,,,,,,,,,,,,,,,子系统 bInterfaceClass ,,,,,, ep_03 ,,,,,,,,,,,,,,, supports_autosuspend bInterfaceNumber ,,,,, ep_83 ,,,,,,,,,,,,,,, ttyUSB0 bInterfaceProtocol ,,, interface ,,,,,,,,,,, uevent bInterfaceSubClass ,, modalias bNumEndpoints ,,,,,,,,权力
,同时可以看的到,它所对应的ttyUSB设备是ttyUSB0,但是这个是哪个接口,是什么功能呢?
其实1-1:1.2这个名字已经表明了是接口2,但是对于普通人来说很难去记,还是进一步查看确认一下才好。查看接口号:
, bInterfaceNumber代表接口号,可以看到是02年
/,#,cat sys/汽车/usb/设备/1-1:1.2/bInterfaceNumber 02
查看对应的功能接口描述,接口代表功能接口描述,可以看到是USB-AT,表明是在口
/,#,cat sys/汽车/usb/设备/1-1:1.2/接口 USB-AT
由此可知,ttyUSB0对应的是口。
其他的所有接口也可以通过该方法查看。