和PCI总线设备相同,USB设备也必须有自己的装备信息,以便完成即插即用。可是USB设备的装备信息比PCI设备杂乱许多,这是由于USB设备的描述符品种比较多。要了解USB设备的描述符,首要需求看一下USB设备的逻辑结构(编程结构)。
一个USB设备能够有几种装备。比方,一个最大需求200 mA电流的设备和一个总线供电的LJSB设备相连时,它只能取得100 mA电流。在这种状况下,这个设备就不被支撑,主机软件也不会激活这个设备。为了防止呈现这个状况,设备的设计者能够供给一种可选的装备,把设备对总线电流量的要求削减到100 mA(当然,应采纳办法确保在100 mA时也能作业,比方,封闭某些功用)。
一个USB设备能够有几个接口。比方,USB数字电话有两个接口:音频接口(发送器和接收器)和人机接口(拨号设备)。又如,CD-ROM有三个接口:音频接口、视频接口和大容量存储接口。在USB体系中,一个接口完成一种功用。也可反过来说,设备中具有某种独立功用的部分构成一个接口。
端点的概念在前面现已说到,端点是主机和设备之间通讯流的结尾。比方,设备的一个输出寄存器便是一个输出端点。一个设备能够有多个端点,而端点总是归于某个接口的,这是由于端点是依据接口的需求设置的,一个接口能够有多个端点。
认识了USB设备的逻辑构成,就能够扫描一下USB设备的描述符。在USB体系中,设备的描述符包含:
①设备描述符:每个设备有一个设备描述符,它包含了设备的一般信息,而且标出了一个设备所支撑的或许的装备的数量(一个或几个)。此外,它还包含了缺省通讯管道(端点0)的信息。
②装备描述符:一个设备对它所支撑的每一种装备都有一个装备描述符。它包含关于装备的一般信息,而且界说了当运用这些装备时的接口数量。
③接口描述符:供给了关于接口的一般信息,也指出了特定的接口所支撑设备类。此外,它还指出了该接口进行通讯时所运用的端点描述符的数量。
④端点描述符:一个端点描述符界说了一个通讯点。端点描述符包含了一些信息,例如,端点支撑的传输类型(指块传输、中止传输、等时传输和操控传输)以及支撑的最高传输速率。
⑤字符串描述符:可选的描述符,由UNICODE(一致字符编码标准,用16位二进制数表明一个字符)字符串组成。它供给了那些可显示出来供人们读取的信息。能够为制造商、产品、序列号、装备和接口等界说字符串描述符。例如,为某个接口界说一个字符串描述符,并在接口描述符中设置指向该字符串描述符的指针。这样,可显示出与这个接口有关的阐明信息。
⑥设备类界说描述符:可用来界说新的设备类,以便在标准设备类的基础上添加一些新的功用。
各种描述符的格局和意义在USB总线标准中都清楚地作了阐明