6楼:
我试了一下,发送Suspend()之后硬件不再响应主机命令,但没有用示波器观察USB线上的包(麻烦);再发Resume()之后,设备才响应主机命令。
我使用Suspend()函数之后的现象,是跟你一样的,也要再发Resume()之后,设备才响应主机命令。
所以说从上位机角度看,USB设备没响应,像是挂起一样,示波器实际一测量,USB总线上还是有SOF包的
其实你还可以做一个试验,验证一下!不是说挂起后,8051会进入节电模式,晶振什么都停止了嘛!所以8051是不运行的,但是我通过在单片机程序主循环里,加入了串口发送代码,让他不停的给(最好速度控制一下!)PC机发信息,来看8051有没有停止运行!我的结果是,上位机调用Suspend()函数后串口调试助手不断接收到51的数据!并没挂起!
这个办法你可以试一试,不用示波器也行!
|