USB CDC突然断开后还能自动重连吗?
我插拔一下能恢复,但断线的时候有没有办法让它自动识别回来?我是改成USB重启后才解决的。 我也想实现这个功能,暂时没搞定。 有可能是PC那边没释放端口。 DFU模式下也是这样吗? 加个断线检测逻辑试试? 我用Win10,经常要重新插。 USB唤醒那部分你配了吗? 是不是VBUS没检测到? 电源波动会导致USB掉线。 会不会是设备描述符有误? STM32F0的实现方式,通过控制USB D+和D-引脚的电平变化,模拟设备的重新插入,从而触发主机的重新枚举 在USB设备初始化前,将D+(PA12)和D-(PA11)引脚设置为推挽输出模式,并拉低电平。延迟一段时间(如10ms),再释放引脚,使其恢复为USB功能模式 主机端驱动,某些操作系统可能需要用户手动重新打开串口设备,但大多数情况下,主机会自动重新枚举设备 在检测到USB断开事件后(如通过USB中断或状态检查),调用上述函数重置USB引脚,并重新初始化USB设备 当USB设备断开后,主机(如PC)会检测到设备移除。若要重新连接,设备需触发主机的重新枚举过程 手动重连,如果自动重连逻辑复杂或不稳定,可以在应用层提示用户手动拔插USB线 在STM32F0上,USB CDC在断开后可以通过软件实现自动重连 在极端情况下,可通过看门狗复位整个设备,触发硬件级别的USB重新枚举 USB设备初始化时机,确保在重置引脚后,重新初始化USB设备,否则主机无法识别设备
页:
[1]