以USB CDC 设备在linux上加载后形成 /dev/ttyACM0 节点为例, 找寻此设备的物理路径.
正常流程下, 内核扫描USB总线, 轮训每个端口, 交互后获取该端口上的设备类型并加载驱动, 驱动加载完毕后在用户空间形成 ttyACM0 节点.
驱动加载形成节点的路径为 /sys/class/tty/ttyACM0
-
ray@SE_SERVER:/sys/class/tty/ttyACM0$ ls -l
-
总用量 0
-
-r--r--r-- 1 root root 4096 6月 7 17:31 dev
-
lrwxrwxrwx 1 root root 0 6月 7 17:31 device -> ../../../3-5.2:1.0
-
drwxr-xr-x 2 root root 0 6月 7 17:31 power
-
lrwxrwxrwx 1 root root 0 6月 7 17:31 subsystem -> ../../../../../../../../../class/tty
-
-rw-r--r-- 1 root root 4096 6月 7 17:31 uevent
可以看出逻辑上的 设备节点ttyACM0 , 对应的物理路径为
3-5.2:1.0, 其中3位总线号, 5位一级HUB的Port, 2为二级HUB的Port 1.0代表终结点,此为通讯终节点, 一般1.1位数据终结点.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果外设为 HID设备, 插入一个USB 鼠标.
阅读(2836) | 评论(0) | 转发(0) |