每一个interface 都有对应的一个或者几个端点(endpoint),端点描述符中描述符了接口对应的端点的位宽,方向(输入输出),传输的类型,00 = Control,Isochronous, Bulk ,Interrupt 等4种基本的传输方式,端点的packet包的大小,host主机访问设备的时间间隔,标准的端点描述符的大小是7个字节:
bLength:端点描述符标准是7个字节
bDescriptorType:端点描述符的 编号是0x05
bEndpointAddress:端点的地址,以及输入输出类型,假如是第一个端点,且作为输出类型,那么应该是0x01
bmAttributes:表明了端点的传输类型,假如是isochronous,又有新的定义,假如我们选择中断传输,那么应该是0x02
wMaxPacketSize:端点的最大的包的大小,对于high-speed isochronous模式以及中断端点,指定了每个微帧额外的传输事务的数量。
bInterval:Interval for polling endpoint for data transfers,就是关于轮询endpoint的时间间隔。
第一个字节是0x07,第二个是0x05,作为,第三个是作为端点地址,IN端点类型,地址是2,(宏定义为0),第四个字节是中断端点的类型,size是1024个字节,注意是低位在前,高位在后,即0x0400,第7个字节是0x08,那么针对于是usb high-speed设备来讲,且是中断端点,0x08意味着 (2 的(8-1)次方)*125us =16000us = 16ms 具体查看usb2.0协议。