USB百科
+ -

USB数据包的最大响应时间及超时指标

2021-11-10 1718 0

每个 USB 设备都必须响应默认管道上的 Setup 包。Setup包用于设备的检测和配置,并执行一些常用功能,例如设置 USB 设备的地址,请求设备的描述符或检查端点的状态。

符合 USB 规范的主机希望所有请求最多在5秒内得到处理。它还为特定请求指定了更严格的时间规定:

  • 不包含数据阶段(data stage)的标准设备请求必须在 50 毫秒内完成。
  • 包含数据阶段的标准设备请求必须在请求500毫秒内开始返回数据。
    (1)每个数据包必须在成功传输前一个包的 500毫秒内发送。
    (2)状态阶段(status stage)必须在最后一个数据包传输后的 50 毫秒内完成。
  • SetAddress 命令(该命令包含数据阶段)必须在 50ms 内处理命令并返回状态。在发送下一个请求之前,设备将有 2 毫秒的时间更改地址。

即使对于最慢的设备,这些超时时间也是可以接受的,但是对于调试来说增加了限制。50ms 的时间并不能在 9600bps 的异步串行端口上发送多少字符数据,也没有提供在线调试器/仿真器(In Circuit Debugger/Emulator)单步执行或中断执行以检查内部寄存器的功能。所以 USB 的调试需要使用迥异于其他微控制器的调试方法。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USB传输过程中的延迟
USB传输过程中的延迟可分为包间延迟、USB线缆上的延迟和USB集线器延迟。在数据传输时,USB主机和USB设备能够计算整个数据传输时间,这个数据传输的时间由发送方发数据信息包结束时开始计算,直到接收到接收方的应答信号为止。USB包间延迟USB数据传输的包间延迟只存在于一个USB数据流管理中的各......
UVC摄像头的延迟reduce latency
一般的ISP,200W30帧来说,sensor进来缓存一帧就是33ms+vpu处理时间大概10ms+jpeg编码时间16ms+USB传输时间200KB大概7、8ms,最后就是windows上的显示延迟时间,如果JPEG编码出来缓存不止一帧,时间就更长了,所以一般会超过100多ms另外,网络传输如使......
UVC 同步延迟控制
同步延迟控制的目的是将多个视频流从一个设备动态同步到主机,或者从多个设备同步到主机,以补偿多个流之间的不同延迟延迟是源从采集到总线上数据传输的内部延迟。只有那些能够使用可调延迟延迟参数的视频流设备支持此控制。该控件用于通知设备上的视频应用缓冲存储器管理器,以通过控制视频数据到其端点的输出定时来控制......
USB数据包的最大响应时间及超时指标
每个 USB 设备都必须响应默认管道上的 Setup 包。Setup包用于设备的检测和配置,并执行一些常用功能,例如设置 USB 设备的地址,请求设备的描述符或检查端点的状态。符合 USB 规范的主机希望所有请求最多在5秒内得到处理。它还为特定请求指定了更严格的时间规定:不包含数据阶段(dat......
Window系统USB驱动提交URB并超时示例代码
Windows系统自带的USB驱动URB会设置一个超时,这个时间大概是5秒钟。源代码可以参考如下实现:NTSTATUSUSBAudioCancelCompleteSynch( IN PDEVICE_OBJECT DeviceObject, IN PIRP ......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!