当前位置: 首页 > ops >正文

USB 标准请求

标准请求setup数据格式:

标准请求格式:

标准请求编号:

标准描述符编号:

标准特性选择:

GET_STATUS(请求码:0x00)

  • 适用对象:设备、接口、端点

  • 作用:查询目标对象的当前状态。

  • 说明

      按device请求

      按interface请求

      按endpoint请求

    • 设备返回如是否自供电(Self-Powered)、是否支持远程唤醒(Remote Wakeup)等状态位。

    • 端点返回是否处于暂停(STALL)状态。

    • 返回长度固定为 2 字节。

PTM


CLEAR_FEATURE(请求码:0x01)

  • 适用对象:设备、接口、端点

  • 作用:清除某个功能或状态。

  • 说明:常用于清除端点的暂停状态(端点从STALL恢复正常),或者禁用远程唤醒功能。


SET_FEATURE(请求码:0x03)

  • 适用对象:设备、接口、端点

  • 作用:启用某个功能或状态。

  • 说明:比如启用远程唤醒功能,或者让端点进入暂停状态。


SET_ADDRESS(请求码:0x05)

  • 适用对象:设备

  • 作用:设置设备的 USB 地址,范围是 1 到 127。

  • 说明:主机通过此请求在设备枚举阶段分配唯一地址。


GET_DESCRIPTOR(请求码:0x06)

  • 适用对象:设备

  • 作用:请求设备返回指定类型的描述符数据。

  • 说明:请求时通过 wValue 指定描述符类型(设备、配置、字符串等)和索引,主机用它来读取设备的各种描述信息。

四种大的组合包拿完


SET_DESCRIPTOR(请求码:0x07)

  • 适用对象:设备

  • 作用:设置或写入描述符。

  • 说明:极少用,主机可写入自定义描述符到设备。大多数设备不支持此请求。


GET_CONFIGURATION(请求码:0x08)

  • 适用对象:设备

  • 作用:查询设备当前启用的配置编号。

  • 说明:设备返回当前活动配置的 bConfigurationValue


SET_CONFIGURATION(请求码:0x09)

  • 适用对象:设备

  • 作用:设置设备的工作配置。

  • 说明:设备根据此请求激活对应配置的接口和端点,完成设备初始化。


GET_INTERFACE(请求码:0x0A)

  • 适用对象:接口

  • 作用:获取接口当前的备用设置编号(Alternate Setting)。

  • 说明:用于接口有多个备用设置时,主机查询当前使用的是哪一个。


SET_INTERFACE(请求码:0x0B)

  • 适用对象:接口

  • 作用:切换接口的备用设置。

  • 说明:主机可以通过此请求切换接口端点的工作模式,比如改变视频流的分辨率或帧率。


SYNCH_FRAME(请求码:0x0C)

  • 适用对象:端点

  • 作用:获取等时(Isochronous)端点的同步帧编号。

  • 说明:用于同步传输,帮助主机和设备协调数据传输时序。

Set Isochronous Delay(请求码:49)

  • 适用对象:设备

  • 作用:设置等时传输的延迟时间。

  • 说明:帮助同步传输,减少延迟对数据流影响。


Set SEL(请求码:48)

  • 适用对象:设备

  • 作用:报告设备支持的最大系统退出延迟。

  • 说明:主机用来优化节能策略,平衡性能和功耗。

Events and Their Effect on Device Parameters

  • 适用对象:设备

  • 作用:描述各种 USB 事件(如复位、挂起、恢复)对设备状态的影响。

  • 说明:帮助理解设备在不同事件下状态参数的变化和处理流程。

http://www.xdnf.cn/news/17515.html

相关文章:

  • gophis钓鱼流程
  • SSM+Dubbo+Zookeeper框架和springcloud框架,写业务的时候主要区别在哪?
  • 如何理解Tomcat、Servlet、Catanalina的关系
  • 【AI论文】R-Zero:从零数据起步的自进化推理大语言模型
  • android 换肤框架详解2-LayoutInflater源码解析
  • Mini-Omni: Language Models Can Hear, Talk While Thinking in Streaming
  • openpnp - 顶部相机环形灯光DIY
  • HTTPS 协议原理 ——4种方案
  • 如何解决 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本区域选择问题:key is invalid
  • VBA即用型代码手册:计算选择的单词数Count Words in Selection
  • 网络资源模板--基于Android Studio 实现的手绘板App
  • 第9节 大模型分布式推理核心挑战与解决方案
  • glide缓存策略和缓存命中
  • Godot ------ 平滑拖动01
  • GAI 与 Tesla 机器人的具体联动机制
  • 基于Spring Data Elasticsearch的分布式全文检索与集群性能优化实践指南
  • 飞算 JavaAI 智能进阶:从技术工具到金融科技开发范式的革新
  • 开博尔雷电5数据线:120Gbps“闪电传输”,以Intel硬核基因从容优化数字生活
  • 跨国智能制造场景下,如何选择更可靠的SD-WAN服务商?
  • 关系型数据库:原理、演进与生态全景——从理论基石到云原生的深度巡礼
  • 【MySQL✨】服务器安装 MySQL 及配置相关操作
  • 从零构建企业级K8S:高可用集群部署指南
  • TDengine IDMP 基本功能(2.数据建模)
  • 设备 “心电图” 系统专家 —— 一二三物联网智能监测方案,让故障预测精度大幅提升
  • MQTT:Java集成MQTT
  • 【LLM】OpenAI开源GPT级模型,120B及20B参数GPT-OSS
  • 调用springboot接口返回403,问题定位及总结
  • Java 大视界 -- Java 大数据机器学习模型在电商商品销量预测与库存精准管理中的应用(391)
  • 安装1panel之后如何通过nginx代理访问
  • 展锐平台(Android15)WLAN热点名称修改不生效问题分析