(实例讲解USB枚举(配置)过程) 结合自己用BUShound抓的数据(下图),发现几乎完全一致。 中间涉及到一个USB Mass Storage协议,可以参考这个: 和这个: 系统梳理一下USB设备(U盘)的上电使用过程: 第一阶段:标准请求过程 目的:配置USB设备,就是让host知道你到底是什么设备,这个通过接口描述符中的binterfaceclass获得,然后给设备分配一个地址方便后
USB主机在检测到USB设备插入后,就要对设备进行枚举了。为什么要枚举枚举就是从设备读取各种描述符信息,这样主机就可以根据这些信息来加载合适的驱动程序,从而知道设备是什么样的设备,如何进行通信等。枚举过程:1、  USB主机检测到USB设备插入之后,就会先对设备复位。USB设备在总线复位后其地址为0,这样主机就可以通过地址0和那些刚刚插入的设备通信。USB主机往地址为0的设备的端点0
转载 11月前
150阅读
图解USB总线枚举过程1. 检测到USB设备后,对USB设备复位,使设备地址变为0x0。发80 06 01 00 00 40 00命令,读取设备描述符命令,由于不知道设备描述符的长度,暂时要求返回数据长度为0x40。2. 给这个新接上的设备分配地址。3. 设置地址成功后,对新地址发送获取设备描述符命令,此时已经知道了它的长度,直接按这个长度即可。4. 在得到设备描述符后,我们再发获取配置描述符命
作者:鱼鹰OspreyID   :emOsprey上篇笔记我们大概了解了一下 USB 设备插入主机后经历了什么阶段,本篇笔记和接下来的笔记将详细介绍整个流程。每一个USB插入后交互的数据都可能不同,比如 U 盘和 CDC 设备的数据交互肯定不同,但基本流程是一致的,所以鱼鹰将以 CDC 设备作为接下来的讲解目标介绍交互情况。USB 枚举,在有些资料中,认为是插入USB后,USB
     本系统中所谓USB设备与主机是通过检测Vcc上拉电阻的变化来确定是否有设备连接的。在D12内部集成了1.5kΩ的上拉电阻,默认状态下不与Vcc相连,程序运行时可以向D12发送连接命令使1.5kΩ电阻连接到Vcc,这样主机便检测到有设备连接。它的枚举过程分析如下。设备连接到总线后,设备从总线获得5V电源,程序首先初始化,端口,然后向D12发出USB
附一个很好的枚举过程的详细流程:◆ 用户将一个USB设备插入USB端口,主机为端口供电,设备此时处于上电状态。 ◆ 主机检测设备。 ◆ 集线器使用中断通道将事件报告给主机。 ◆ 主机发送Get_Port_Status(读端口状态)请求,以获取更多的设备信息。 ◆ 集线器检测设备是低速运行还是高速运行,并将此信息送给主机,这是对Get_Port_Status请求的响应。 ◆ 主机发送Set_Port
转载 7月前
38阅读
简述USB总线的枚举大体过程
转载 2022-09-08 11:09:26
656阅读
从硬件到软件,从电气特性到传输事务的建立,下面的思维导图是实例通过数据分析仪得到的流程。对调试USB底层驱动有很好的指导作用。先看USB设备状态,对于全速设备,电气上,主机监测到D+ 上拉,则认为已连接,开始加电,第三步后开始软件方面的枚举过程。 连 接 加 电 缺 省 编 址 配 置 挂 起 说 明不 __ ____ ____ ____ ____ __设备尚未连接至接口.其他特性无关是 不 __
  USB主机在检测到USB设备插入后,就要对设备进行枚举了。枚举就是从设备读取一些信息,知道设备是什么样的设备,如何进行通信,这样主机就可以根据这些信息来加载合适的驱动程序。调试USB设备,很重要的一点就是USB枚举过程,只要枚举成功了,那么就已经成功大半了。   控制传输在USB中是非常重要的,它要保证数据的正确性,在设备的枚举过程中都是使用控制传输。控制传输分为三个过程:①建立过
转载 2023-06-03 21:06:12
233阅读
USB设备的枚举过程     USB主机在检测到USB设备插入后,就要对设备进行枚举了。为什么要枚举呢?枚举就是从设备读取一些信息,知道设备是什么样的设备,如何进行通信,这样主机就可以根据这些信息来加载合适的驱动程序。调试USB设备,很重要的一点就是USB枚举过程,只要枚举成功了,那么就已经成功大半了。     在说枚举之前,先大概说
转载 6月前
67阅读
图解枚举过程
原创 2022-01-06 17:44:02
1311阅读
一个USB设备有一个设备描述符,设备描述符里面决定了该设备有多少种配置, 每种配置描述符对应着配置描述符;而在配置描述符中又定义了该配置里面有多少个接口, 每个接口有对应的接口描述符;在接口描述符里面又定义了该接口有多少个端点, 每个端点对应一个端点描述符;端点描述符定义了端点的大小,类型等等。 由此我们可以看出,USB的描述符之间的关系是一层一层的, 最上一层是设备描述符, 下面是配置描述符,再
usb
原创 2021-04-16 13:20:04
606阅读
转自:http://blog.csdn.net/myarrow/article/details/82700600. 枚举流程 • 连接了设备的 HUB 在 HOST 查询其状态改变端点 时返回对应的 bitmap,告知HOST 某个PORT状态发生了改变。 • 主机向 HUB 查询该PORT的状态,...
转载 2015-09-25 09:57:00
236阅读
2评论
主机对USB 设备的识别过程叫做枚举,一个完整的Windows 对USB 设备枚举过程为: (1) Get Device Descriptor。主机的第一个命令要求得到设备描述符,此SETUP 包为8 个字节数据(80,06,00,01,00,00,40,00),发向地址0,端口0。“40”表示返回数据长度最大为40H 个字节。实际上,只返回一个包,即数组DEV_DESC[ ]中的前8 个字节,用于说明设备的描述符的真实长度和设备的类型。
原创 2010-01-22 17:10:46
5228阅读
6评论
一、USB枚举失败在控制传输的时候如果设备回复给主机的描述符错误的话,主机
原创 2022-11-01 00:01:50
686阅读
usb开发工作日志之二——usb设备枚举过程USB主机在检测到USB设备插入后,就要对设备进行枚
转载 2023-05-22 11:28:17
56阅读
hello 今天继续整理 USB 设备描述符信息,简单了解,什么是设备描述符,以及为什么要有描述符
原创 2022-03-07 16:41:13
1879阅读
1.2.8判断pcie设备是否支持雷电技术Intel具有一种基于Thunderbolt技术的PCIE变体,它结合了DisplayPort和PCIe协议,与Mini DisplayPort兼容。 Thunderbolt技术融合两种通信方法或者说协议,其中PCI Express用于数据传输,可以连接几乎任何类型的设备,DisplayPort用于显示,能同步传输1080p乃至超高清视频和最多八声道音频。
PCIE背景知识学习(8)枚举——搜索发现拓扑(Enumeration-Discovering the Topology)在完成了系统上电或是复位之后,配置软件需要扫描PCIe网络结构,来搜索发现整个机器的拓扑,并学习这个网络结构是如何被填充的(例如里面都有多少总线、多少设备以及它们的编号等等)。在这进行之前,如图 3‑10所示,软件唯一知道的就是拓扑中有一个Host/PCI Bridge以及这个
枚举之前,是设备插入,具体过程如下:    不论此时设备是否插入USB端口(USB HUB),主机都会轮回查询各个USB端口,主机检测到D+与D-之间有电压差,就认为有新的设备接入,主机等待100ms后发出复位请求。设备接收到复位请求后将产生一个外部中断信号枚举过程:    主机这时候只是知道有新的设备插入了,但是不知道插进来的是什么东西,枚举过程就是让主
转载 8月前
61阅读
  • 1
  • 2
  • 3
  • 4
  • 5