USB2.0物理层的电信号
+ -

USB设备挂起Supsend及唤醒Resume实现

2024-11-28 0 0

为什么需要进行USB唤醒与挂起

答案就是电源管理,节能。
连接到USB主机端的设备必须遵守主机功率预算求。USB总线电源是一种有限的资源。USB设备(总线供电或自供电)必须将VBUS的功耗限制在更低直到它们进入配置状态。作为一种省电方式,当USB设备观察到超过3ms没有总线活动(恒定空闲状态),它们进入挂起状态,消耗量小于2.5 mA(根据系统中的挂起电流ECNUSB2.0规范)。

当USB设备处于挂起状态时,它仍然为其D+或D-上拉电阻器供电,以保持空闲状态并保持其内部状态,包括地址和配置。当它被USB总线上的恢复信号唤醒时,它不需要经过重新枚举过程。

USB总线上的恢复信号可以由主机和设备发送。远程唤醒功能使USB设备能够唤醒挂起的主机;例如,将鼠标连接到笔记本电脑,只需点击鼠标即可唤醒笔记本电脑。远程唤醒功能在枚举阶段中上报的配置描述符中报告,可以使用标准USB请求启用(或禁用)。

USB总线挂起和唤醒状态

USB规范定义了与USB总线上的电压信号相对应的总线状态。本节解释USB总线如何定义挂起、恢复和空闲状态的总线状态。

下图显示了连接到D+的1.5kΩ上拉的全速总线状态。以下讨论的总线状态以全速状态为例。有关低速或高速总线状态定义,请参阅USB2.0规范。
全速状态

JK状态定义

对于全速状态,J状态即差分1,即D+为逻辑高,D-为逻辑低,而K状态即差分0,即D-为逻辑高,D+为逻辑0。
J:差分1
k:差分0

空闲IDLE状态

全速下空闲状态为“J”状态,即差分为1

挂起状态

因为当USB总线处于空闲状态超过3ms时,就会进入挂起状态,所以挂起状态与空闲状态相同,或者就像全速总线段中的J状态一样,即全速下,K状态保持3ms。
挂起状态

唤醒状态

当设备处于挂起状态时,设备端口上的数据K状态意味着从挂起状态恢复。这意味着恢复信号是全速段中从数据J状态到数据K状态的变化.
唤醒状态

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协议的第9章讲到USB可见设备状态,分为连接(Attached),上电(Powered),默认(Default),地址(Address),配置(Configured)和挂起(Suspended)6个状态。所谓可见,即USB系统和主机可见的状态,其他状态属于USB设备内部而不可见。其中有关电源的......
USB设备复位、挂起和恢复命令
USB主机除了在正常的操作期间发送到设备的控制命令外,主机还可以发出三种独特的信号条件:复位、挂起或恢复挂起的设备。设备复位RESET在枚举过程中,主机向设备发出复位信号。注意此USB 复位与硬件或上电复位不相同,是两个概念。USB 复位的目的是设置设备的软件状态,以便进行枚举。当 D- 和 D......
USB键盘定义HID报告描述符一键关机、唤醒和睡眠功能
这是本人电脑的USB键盘复合设备中的一个HID功能,用于实现一键关机,唤醒机器和一键进入睡眠状态。使用USB标准请求及描述符在线分析工具http://www.usbzh.com/tool/usb.html 分析该报告描述符0x05, 0x01, // Usage Page (Gene......
带系统唤醒、睡眠、关机的HID鼠标报告描述符
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)0x09, 0x02, // Usage (Mouse)0xA1, 0x01, // Collection (Application)0x85, 0x01......
HID设备电源控制IOCTL_GET_SYS_BUTTON_CAPS
IOCTL_GET_SYS_BUTTON_CAPS 用于获取HID支持的电源功能。在HID报告描述符USAGE_PAGE(0X01)中为:Usage IDUsage NameUsage TypesSection81System Power DownOSC4.582......
USB设备远程唤醒RemoteWakeUp
USB设备的Remote Wakeup是可选的,其功能用于远程唤醒待机状态下的主机。USB设备通过配置描述符bmAttributes字段的D5标识其是否支持远程唤醒。支持远程唤醒的USB设备必须支持USB的标准请求CLEAR_FEATURE和SET_FEATURE。USB主机通过SET_FEATU......
从Windows驱动层WDM理解USB设备电源管理的休眠和唤醒
Windows电源管理的IPR是通过主功能号IRP_MJ_POWER实现的,其中有4个子功能号,分别为:#define IRP_MN_WAIT_WAKE 0x00#define IRP_MN_POWER_SEQUENCE 0x01......
USB全速设备的挂起唤醒Resume
在介绍USB全速设备挂起Suspend、唤醒Resume之前先介绍USB全速设备的硬件连接方式。USB全速设备的连接USB全速设备的硬件连接和USB高速设备的硬件连接方式一样。区别是全速设备不会触发高速的协商。内容详见:USB2.0设备从全速模式到高速模式的识别过程及速率协商 https://ww......
USB设备挂起Supsend及唤醒Resume实现
为什么需要进行USB唤醒挂起答案就是电源管理,节能。连接到USB主机端的设备必须遵守主机功率预算求。USB总线电源是一种有限的资源。USB设备(总线供电或自供电)必须将VBUS的功耗限制在更低直到它们进入配置状态。作为一种省电方式,当USB设备观察到超过3ms没有总线活动(恒定空闲状态),它们进入......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

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

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