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

USB全速设备的挂起、唤醒Resume

2023-08-29 820 0

在介绍USB全速设备挂起Suspend、唤醒Resume之前先介绍USB全速设备的硬件连接方式。

USB全速设备的连接

USB全速设备的硬件连接和USB高速设备的硬件连接方式一样。区别是全速设备不会触发高速的协商。内容详见:USB2.0设备从全速模式到高速模式的识别过程及速率协商 https://www.usbzh.com/article/detail-672.html

USB2.0全速、低速和高速设备一样,都是通过 D+、D- 两个差分信号线进行通信。在下图中,最左边为全速/高速的硬件连接电路,而最右边为低速的硬件电路。两者的惟一区别就是在设备端上拉的1.5K电阻连接在D+还是D-上。USB硬件连接电路

USB电平信号

USB采用的是D+和D-两根信号线的差分信号进行数据传输。对于不同速度的的USB设备,其规定的差分信号线上 J、K 等状态的电平也会不同,下表则列出了在低速、全速、高速下 USB 状态对应的电平信号。
 J、K 状态

全速USB设备的挂起Suspend

USB是主从设备。所有命令都是由主机发起,设备端响应。在正常的情况下,USB主机会定时发送SOF包,对于全速设备是1ms,高速设备SOF包音隔为125us。若 USB 线上一直处于 Idle 状态超过 3ms,设备则认为这是一个挂起信号,设备需要在 10ms 内进入挂起状态.
挂起
USB 设备挂起时,可以停止设备的时钟,以进入低功耗模式。在挂起状态中,设备仍需继续向 D+/D- 的上拉电阻提供电压以保持 Idle 状态。

全速 USB 的 Resume 唤醒

在设备处于 Suspend 的状态下,若需要将设备退出 Suspend 状态,主机 host 需要向设备发送持续时间超过 20ms 的 Resume 信号,并且以 EOP 信号结尾,设备将在 Resume 信号结束后醒过来。在设备醒过来后,host 需要在 3ms 内发送 SOF 信号,以维持正常的通信模式,避免设备重新进入 Suspend 状态。
全速 USB 的 Resume 唤醒

全速 USB 的远程唤醒

对于普通的 Resume 唤醒,是由主机 host 唤醒 USB 设备,但同样,设备也可以唤醒主机 host,例如电脑休眠时,可以通过 USB 键盘唤醒主机,这种功能称为远程唤醒。

使用远程唤醒功能,需要 USB 设备支持远程唤醒功能,并且在配置描述符的设置中,将 USB 设备支持远程唤醒能力报告给主机。

通过 USB 设备远程唤醒主机时,USB 设备会生成一个 1ms-15ms 的 Resume 信号,host 在 1ms 内捕获到该信号,并且主机控制器对唤醒操作进行接管,继续产生 Resume 信号直到 20ms,并以 EOP 信号结尾。完成对设备的唤醒。

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......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

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