USB总线枚举是指对USB总线上接入的USB设备进行识别和寻址操作。由于USB支持热插拔和即插即用,所以当一个USB设备接入USB或从USB上拆除时,主机必须使用总线枚举的过程来识别和管理必要的设备状态变化。并动态地对它进行配置。
当设备连接到主机时,按照以下顺序进行枚举:
1.连接了设备的HUB在HOST查询其状态改变端点时返回对应的bitmap,告知HOST某个PORT状态发生了改变。
2.主机向HUB查询该PORT的状态,得知有设备连接,并知道了该设备的基本特性。
3.主机等待(至少lOOmS)设备上电稳定,然后向HUB发送请求,复位并使能该PORT。
4.HUB执行PORT复位操作,复位完成后该PORT就使能了。现在设备进入SUdefault状态,可以从Vbus获取不超过lOOmA的电流。主机可以通过0地址与其通讯。
5.主机通过0地址向该设备发送get—device—descriptor标准请求,获取设备的描述符。
6.主机再次向HUB发送请求,复位该PORT。
7.主机通过标准请求set—address给设备分配地址。
8.主机通过新地址向设备发送get—device_descriptor标准请求,获取设备的描述符。
9.主机通过新地址向设备发送其他get—configuration请求,获取设备的配置描述符。
10.根据配置信息,主机选择合适配置,通过set—configuration请求对设备而进行配置。这时设备方可正常使用。
当USB设备被拆除时,集线器也会通知主机。拆除一个设备会使该设备所接入的端口被禁用。一旦收到了拆除指示,主机将立即更新它的本地拓扑结构信息。
关键字:USB总线 枚举过程
引用地址:
USB总线枚举过程
推荐阅读最新更新时间:2024-05-03 00:33
基于CP2102的RS232转USB接口的应用设计
1 引言
目前仪器设备大都采用RS232接口与计算机通信,但随着计算机技术的发展,支持热插拔的USB标准接口将取代RS232接口,因此计算机将越来越少配置甚至不配置RS232接口。RS232接口与USB接口虽然都属于串行接几,但它们的数据格式、通信协议、信号电平以及机械连接方式则不同。这样计算机不能控制现有仪器设备,解决这一问题就得把现有的仪器设备的RS232接口转换成USB接口。实现这种转换有两种方案,一种方案是从硬件底层固件开始全面开发系统,该方案由于开发成本高、难度大,加之单片机的限制,因而很少采用;另一种方案是采用USB/RS232桥接器件如CP2102,CP2103进行设计,计算机通过USB接口虚拟
[模拟电子]
基于STM32的USB枚举过程学习笔记(一)
之前使用ST官方的库以及网络的资料,完成了使用USB HID类进行STM32和PC机的通讯。由于其他原因并没有深入的分析,虽然实现了功能,但是关于USB设备的枚举,以及具体的通讯方式都没有清晰的概念,所以现在回头重新学习USB相关知识。主要参考资料是《圈圈教你玩USB》、USB枚举过程图解,ST官方的USB HID例程。 一,USB数据包 1. USB数据包分类 USB总线上的数据传输以包为基本的单位。USB协议规定了四种包:令牌包、数据包、握手包、特殊包。不同的包通过包中的8位PID域区分。 令牌包 令牌包用于启动 一次USB传输,USB的数据传输必须由主机发起。令牌包有四种: 输出令牌包
[单片机]
基于USB总线的多路同步数据采集系统
1. 引言 通用串行总线(USB,Universal Serial Bus)是现代PC数据传输的发展趋势, PC的所有外设,包括键盘、鼠标、显示器、打印机、录音机、数字音响、电视机顶盒、数码相机、扫描仪、MODEM及各种多媒体音频、视频设备均可通过USB接口接入PC。USB总线同步数据采集系统即为这种总线接入系统。 2. 硬件方案 本系统采用MAXIAM公司的MAX125四路12位同步采集芯片,只需一个启动信号即可实现同步采集、数据转换,完成后给出一个转换完成信号,可从端口依次读取A/D转换数据,送入单片机处理;USB接口芯片采用PHILIPS公司的PDIUSBD12,此芯片单片集成SIE、FIFO存储器、收
[嵌入式]
基于MSP430及USB总线的便携式血压计的设计
目前,市场上的血压计大部分仍是水银血压计,电子血压计在国外已经大量普及,而我国才开始应用。水银血压计每次测量必须由医生戴上听诊器进行测量,测量过程复杂,而且不同的医生,测量结果可能不同。而电子血压计弥补了水银血压计的不足。本文使用低功耗MSP430单片机对人体血压信号进行采集,通过USB控制芯片CH375将这些数据存储到U盘中,可以通过PC机的软件分析一天中血压的变化。 1 硬件设计 1.1芯片介绍 MSP430是近几年流行的16位单片机,由于它具有超低功耗(在5V电压下运行于12MHz的80C51工作电流达到十几mA;而MSP430在3V时的工作电流为340μA,在2.2V的工作电流为220μA)、众多的片
[单片机]