USB接口
绪论
UCHARbDescriptorType;
USHORTwTotalLength;UCHARbNumInterfaces;UCHARbConfigurationValue;UCHARiConfiguration;UCHARbmAttributes;
UCHARMaxPower;
}USB_CONFIGURATION_DESCRIPTOR,宰PUSB_CONFIGURATIONDESCRIPTOR;
bLength和山DescriptorType域应为9和2,即是一个9字节长的配置描述符。wTotalLength域为该配置描述符长度加上该配置内所有接口和端点描述符长度的总和。通常,主机在发出一个GETDESCRIPTOR请求并正确接收到9字节长的配置描述符后,就会再发出一个GETDESCRIPTOR请求并指定这个总长度。第二个请求把这个大联合描述符传输回来。
bNumInterfaces指出该配置有多少个接口。这个值仅是接口的数量,不包括接口中的替换设置。这个域的目的是允许多功能设备存在,如一个有定位器(类似于鼠标)的键
盘。
bConngurationValue域是该配置的索引值。可以用这个值SET设备置入未配置状态,此时仅有端点0是活动的)
CONFIGURATION
控制请求中选择这个配置。注意设备的第一个配置描述符的索引为1。(选择配置0将把
iConfiguration域是一个可选的串描述符索引,指向描述该配置的Unicode字符串。此值为0表明该配置没有串描述符。
bmAttributes字节包含描述该配置中设备电源和其它特性的的位掩码,见表l一5。一个支持远程唤醒的配置应有远程唤醒属性位。该字节最高两位与MaxPower域一起描述配置中的电源特性。基本上,设置了最高位的配置都同时在MaxPower域中指出要从tJSB总线上获取的最大电流量(单位为2mA)。使用外接电源的配置需要设置自供电属性位。
表I-5.配置属性位‘¨
Tab.1-5ConfigurContributionBit
位掩码
80h40h20h
符号名称
USB—CONFIG—BUs-POWERED
描述废弃应总为1该配置为白供电该配置有远程唤醒特征
USB—CONFlqSELF—POWERED
USB—CONFIG—REMO理肜AKEUP
接口描述符
每个配置有一个或多个接口描述符,它们描述了设备提供功能的接口。
typedef
struct_USB—INTERFACE_DESCRIPTOR{
7