当USB设备插上主机时,主机就通过一系列的动作来对设备进行枚举配置(配置是属于枚举的一个态,态表示暂时的状态),这些态如下:
1、接入态(Attached):设备接入主机后,主机通过检测信号线上的电平变化来发现设备的接入;
2、供电态(Powered):就是给设备供电,分为设备接入时的默认供电值,配置阶段后的供电值(按数据中要求的最大值,可通过编程设置);
3、缺省态(Default):USB在被配置之前,通过缺省地址0与主机进行通信;
4、地址态(Address):经过了配置,USB设备被复位后,就可以按主机分配给它的唯一地址来与主机通信,这种状态就是地址态;
5、配置态(Configured):通过各种标准的USB请求命令来获取设备的各种信息,并对设备的某此信息进行改变或设置;
6、挂起态(Suspended):USB总线处于空闲状态的话,该设备就要自动进入挂起状态,在进入挂起状态后,总的电流功耗不超过280UA。
下表汇集这些外置设备状态之间的转化关系:
连接 | 加电 | 缺省 | 编址 | 配置 | 挂起 | 说 明 |
---|---|---|---|---|---|---|
不 | __ __ | __ __ | __ __ | __ __ | __ __ | 设备尚未连接至接口.其他特性无关 |
是 | 不 | __ __ | __ __ | __ __ | __ __ | 设备已连接至接口,但未加电. 其他特性无关. |
是 | 是 | 是 | 不 | __ __ | __ __ | 设备已连接至接口,已加电. 并被复位. |
是 | 是 | 是 | 是 | 不 | __ __ | 设备已连接至接口,已加电. 并被复位.且分配了唯一地址. 尚未被配置. |
是 | 是 | 是 | 是 | 是 | 不 | 设备已连接至接口,已加电. 并被复位.且分配了唯一地址,并被配置.设备功能可被使用. |
是 | 是 | __ __ | __ __ | __ __ | 是 | 设备在至少3毫秒以内探测不到总线活动,自动进如挂起.设备功能不可用. |
下图为设备状态转化图: