USB的枚举过程

USB HID设备枚举过程 USB HID设备枚举过程一. 枚举过程二. 设备状态图三. USB Data Flow四. 枚举失败分析--USB无法识别、无反应 一. 枚举过程 USB设备插入检测,硬件上全速设备D+线上有1.5K上拉电阻,可便于USB主机检测到有设备连上。 等待稳定供电后,USB主机会对设备复位,即BusReset,复位后,主机将使用地址0与设备通信。 USB主机将向地址0设备的Endpoint 0 发送获取设备描述符的标准请求,设备收到该请求后,会按照主机请求的参数,在数据过程将设备描述符返回给主机,主机在成功获 阅读详情

当USB device 插入,和 host 连接后,host 会对 device 进行枚举。
通过枚举:获取设备的描述符信息。(主机根据此信息,加载对应驱动,确定通信方式等等)

  • 枚举过程如下:
    1、usb host 检测到 usb device 插入后,发送总线复位信号,复位 device。
    device 复位完成后,地址为0。
    host 向 地址0 的 endpoint 0 发送数据,请求设备描述符。
    device 收到主机请求后,发送 设备描述 给 host。
    host 接收并确认 device 发来的设备描述符后,向 device 回发一个 确认数据包(ACK)。
    2、host 再次复位 device,进入地址设置阶段。
    host 向 地址0 的 endpoint 0 发送设置地址请求数据包,包里就存放着 新的设备地址,因此无数据过程。
    device 收到后,向 host 回发一个0字节的状态数据包。
    host 收到这个 0字节状态数据包 以后,向 device 会发一个确认包(ACK)。
    device 在收到这个ACK包后,就开始使用新的地址了。
    3、host 向 新的设备地址 endpoint 0 发送请求设备描述符包,这一次 host 要获取整个设备描述符。
    4、类似于 步骤3,host 接下来以此获取 配置描述符、配置集合、字符串描述符 等等
USB枚举过程详解 阅读详情

相关推荐

usb枚举过程总结

USB枚举的主要目的是让主机识别并配置连接的USB设备。通过这个过程,主机可以确定设备的类型、功能和所需的资源,从而为设备加载合适的驱动程序,确保设备能够正常工作。如果枚举失败,设备可能无法被主机识别或正确配置,导致无法正常使用。黄毛入厂打螺丝——枚举:进厂-——插入检测人事面试——枚举过程给她自己的身份证明,五道口毕业证之类的,基本信息了解后,开始安排工位——给定新地址,一切都安排好了,就可以正常的打螺丝了——设备与主机正常通信。

qq_62782055的博客 1732

USB host枚举设备的过程

USB host枚举设备的过程 整理自网络     USB主机在检测到USB设备插入以后,就会对USB设备进行枚举了。枚举就是从设备中读到一些信息,知道设备是什么样的设备,如何进行通信,这样主机就可以根据这些信息加载合适的驱动程序。      首先说说USB的一种传输方式----控制传输。这种传输方式在USB中非常重要。他要保证数据的正确性,在设备的枚举过程中都是使用控制

SDU的专栏 4146

USB学习笔记——USB通信过程与枚举过程

在网上看到一篇文章就是讲这个的,仔细阅读后获得了很多感触,整理总结如下。 一、USB接口 在USB的集线器端D-,D+都接了下拉电阻,而USB设备端的D-,D+接了上拉电阻,所以当USB设备插入时可以根据集线器端D-,D+上的电压变化来判断是否有USB设备接入。 检测到有设备接入后,可以根据D-,D+来判断USB设备的工作模式,是低速还是全速或者高速。所以D-,D+这两根线很重要。 二、 USB数据传输过程 主机与USB设备相互传输数据具体过程如下: 1、客户软件首先将传输的数据放入缓冲

weixin_46199479的博客 5264

Linux下USB驱动详解(HOST)

转载地址:http://blog.chinaunix.net/uid-14518381-id-3904999.html USB驱动分为两块,一块是USB的bus驱动,这个东西,Linux内核已经做好了,我们可以不管,我们只需要了解它的功能。形象的说,USB的bus驱动相当于铺出一条路来,让所有的信息都可以通过这条USB通道到达该到的地方,这部分工作由usb_core(drivers/us

feng85016578的博客 1万+

USB 枚举过程

枚举过程的详细介绍 1、USB主机检测到 USB设备插入后,就会先对设备复位。USB设备在总线复位后其地址为 0 ,这样主机就可以通过地址 0和那些刚刚插入的设备通信。 2、USB主机往地址为 0的设备的端点 0发送获取设备描述符的标准请求(这是一个控制传输的建立过程)。设备收到该请求后,会按照主机请求的参数,在数据过程将设备描述符返回给主机。主机在成功获取到一个数据包的设备描述......

tyustli 3926

USB枚举过程详细分析

USB启过程中硬件上电、控制传输获取数据

USB协议学习:5、USB的枚举过程

地址偏移量字段名长度说明0bLength1描述符长度(字节):12H11描述符类型:设备=01H2bcdUSB2USB 规范版本号(BCD 码)41类代码51子类代码61协议代码71端点 0 支持最大数据包长度8idVender2供应商 ID10idProduct2产品 ID12bcdDevice2设备版本号(BCD 码)141供应商字符串描述符索引值15iProduct1产品字符串描述符索引值161。

嵌入山脊的博客 8934

pytorch转onnx转paddlepaddle

1.pt转onnx 可查看我之前的文章:https://blog.youkuaiyun.com/oyjwin/article/details/117778583?spm=1001.2014.3001.5501

oyjwin的博客 1461

USB枚举过程

本人在学习STM32 USB使用的过程中,收集网上的资料,阅读别人博文,拼凑零碎知识,边看边学,记录下学习过程。推荐看《圈圈教你玩USB》。 枚举前的工作 根据STM32的USB库做移植,介绍枚举过程,SetSystem函数是一些初始化化设置。 首先系统执行USB中断设置:USB_Interrupts_Config(); //中断向量表设置 然后执行USB时钟设置:Set_USBClock();...

BeginnerMind 1万+

【YOLO 系列】基于YOLOv8的工业零件表面缺陷智能检测系统【python源码+Pyqt5界面+数据集+训练代码】

本文详细介绍了如何基于YOLOv8深度学习模型和PyQt5图形界面,构建一套完整的工业零件表面缺陷智能检测系统。内容涵盖从环境搭建、数据集标注、模型训练调参到最终封装成可执行桌面软件的全流程,并深入解析了YOLOv8在工业视觉场景中的技术优势与落地优化策略。

ol78901234的博客 402

Abaqus 单元与全局刚度矩阵导出实战指南:从INP修改到结果解析

本文提供了Abaqus中导出单元刚度矩阵和全局刚度矩阵的完整实战指南。通过详细步骤讲解INP文件修改、关键指令插入及结果文件解析,帮助工程师、研究人员和二次开发者深入理解有限元软件内核,实现理论验证、二次开发与深度问题调试。

k8s6orchestrator的博客 898

usb驱动开发之USB协议枚举过程详解

本文把usb的枚举过程通过文字、程序和图形三种形式描述出来,并形成对照。 一  枚举过程之文字描述          •主机集线器监视着每个端口的信号电压,当有新设备接入时便可觉察。(集线器端口的两根信号线的每一根都有15kΩ的下拉电阻,而每一个设备在D+都有一个1.5kΩ的上拉电阻。当用USB线将PC和设备接通后,设备的上拉电阻使信号线的电位升高,因此被主机集线器检测到。)    • 连接

亚亚图雷的专栏 5736

TTL电路搭建半加器实验:操作指南完整版

通过TTL电路搭建半加器,详解逻辑设计与实验步骤,帮助掌握数字电路中的半加器工作原理与实际应用,适合电子技术初学者动手实践。

weixin_42524864的博客 356

【USB枚举过程】

USB 枚举过程是 USB 设备连接到主机后,主机识别设备、获取设备信息并为其分配资源的关键步骤。

weixin_40146547的博客 954

把慢点掰开看:在 SAP HANA 中启用 SQL 优化耗时跟踪 SqlOptTime 的实战指南

摘要:SAP HANA 性能排查中,常出现SQL查询时快时慢的现象,表面看似执行问题,实则是编译阶段耗时过长。通过SQL优化跟踪工具SqlOptStep和SqlOptTime,可精准区分编译与执行时间。SqlOptStep展示优化树变化过程,而SqlOptTime则记录各阶段耗时,帮助定位问题根源。启用SqlOptTime需配置traceprofile,建议限定特定用户以减少系统负载。实际案例显示,报表响应慢常由计算视图编译(CeQo)导致,而非执行阶段问题。解决方案包括调整计算视图展开方式或优化基础视图结

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1009

强化学习与行为树的融合在游戏编程中的应用

在游戏中,我们可以将游戏的状态作为智能体的状态,将游戏的奖励作为强化学习中的奖励信号,从而训练智能体在游戏中做出最佳决策。强化学习通过试错学习来优化角色的决策策略,而行为树提供了一种灵活的方式来组合和调整不同的行为。行为树可以灵活地调整和组合不同的行为,以适应游戏中不同的情境和目标。在游戏开发中,强化学习和行为树是两种常见的技术,它们被广泛应用于游戏智能的实现。接下来,我们可以定义一个具体的行为树(BehaviorTree),该行为树由一系列节点组成,每个节点代表一个特定的行为或决策。

TechO_O的博客 681

linux usb枚举过程分析

当守护程序第一次运行或usb port上状态发生变化,守护进程被唤醒都会运行hub_events函数,这个函数在usb系统中处理核心位置,usb的枚举过程就是由它完成,usb枚举过程流程图如图1所示; 图1 usb枚举流程图 由于hub_events函数比较长这里分几个部分进行讲解: [html]view plaincopy

hhcs 1万+

【四足机器人项目实战】四足机器人弹簧倒立摆(SLIP)动力学模型

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言1.动力学建模构型方法2.四足机器人动力学模型(1)多体动力学模型【针对躯干+脚建模】方法一:VMC(VirtualModelController)模型方法二:SLIP模型(2)浮基单体动力学模型【针对躯干建模】【用于MPC】 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对四足机器人动力学模型-VMC、SLIP和浮动机体模型做个简

qq_35635374的博客 7312

USB 之枚举过程概述

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey上篇笔记我们大概了解了一下 USB 设备插入主机后经历了什么阶段,本篇笔记和接下来的笔记将详细介绍整个流程。...

EmbeddedOsprey 5299

最新Codex接入DeepSeek官方API教程(无需cc-switch)

最新Codex接入DeepSeek官方API教程(无需cc-switch)

猿小白的博客 951

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

上一篇: USB 管道 && 端点
下一篇: 2.3 核心模块和应用程序的对比
你板子冒烟了
博客等级 码龄8年 1278粉丝 582原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值