77251380 发表于 2013-5-23 00:09 
我也觉得这个应该是例程里有的,毕竟这也是鼠标的基本功能。但是睡眠时,一样往上发左键加坐标,PC就是不 ...
例程是基于ST EVAL板子的。我曾今跑过STM3210E-EVAL板,系统休眠后可以通过按KEY键(不是joystick的方向键)来远程唤醒PC。
具体的代码就是:按键KEY按下--> EXTI9_5_IRQHandler() --> Rsume(RESUME_INTERNAL)-->Resume_Init():退出USB模块的低功耗模式,重新配置时钟等。此时MCU已被唤醒,而主机还没有开始通信,就是说MCU在继续等待SOF信号的过程中又失望了,于是又触发到了ESOF中断(USB的中断之一)
在USB_ISR中的ESOF case中,Resume(RESUME_ESOF),直到在Resume()中的RESUME_START case中使用【wCNTR |= CNTR_RESUME;】来使得MCU发出resume信号,然后在RESUME_ON case中计数,直到过了10ms后,撤销resume信号。
|