“也就是0端点既可以IN又可以OUT,但其他端点只能IN或只能OUT。”
这个理解不正确
我觉得你们把pipe和endpoint搞混了
每个usb设备都必须由control pipe,control pipe就必须有0x00 0x80两个端点
usb 规范中
“An endpoint is a uniquely identifiable portion of a USB device that is the terminus of a communication
flow between the host and device.”
所以 0端点这个说法不严谨 应该说 0x00端点 是device的control pipe的收端点
0x80是device control pipe的发端点
“Each endpoint has a device-determined direction of data flow.”
这句话很明确 每个端点都有明确的数据方向 虽然每个端点都可以收发host的
但对应用编写来说 要么是收(0x0*) 要么是发(0x8*)