|
情况是这样的,用STM32F105作host驱动U盘,用的STM32的MSC库,前面都没有问题 Enumeration completed > USBH_USR_UserInput OK. (我只在原库基础上加了串口中断输出调试) 一直卡在USBH_MSC_Handle 里的USBH_MSC_GETMaxLUN 里的USBH_CtlReq等,卡在(case CMD_WAIT)这了,谁知道是什么原因?如何解? 贴码如下: USBH_Status USBH_CtlReq (USB_OTG_CORE_HANDLE *pdev, USBH_HOST *phost, uint8_t *buff, uint16_t length) { USBH_Status status; status = USBH_BUSY; switch (phost->RequestState) { case CMD_SEND: /* Start a SETUP transfer */ USBH_SubmitSetupRequest(phost, buff, length); phost->RequestState = CMD_WAIT; status = USBH_BUSY; break; case CMD_WAIT: if (phost->Control.state == CTRL_COMPLETE ) { /* Commands successfully sent and Response Received */ phost->RequestState = CMD_SEND; phost->Control.state =CTRL_IDLE; status = USBH_OK; } else if (phost->Control.state == CTRL_ERROR) { /* Failure Mode */ phost->RequestState = CMD_SEND; status = USBH_FAIL; } else if (phost->Control.state == CTRL_STALLED ) { /* Commands successfully sent and Response Received */ phost->RequestState = CMD_SEND; status = USBH_NOT_SUPPORTED; } break; default: break; } return status; } |
STM32F103 USB虚拟串口,采用的官方库非HAL库文件,过一段时间会断开链接
KEILMDK每次都要手动选Reset and Run吗 不然下载到板子上得重启电源才行 求解答
STM32F407全速USB 回复 STALL 握手包
USB_WritePacket 陷入无限循环
关于最近学习C语言回调和钩子函数的想法,以及对HAL库回调函数的困惑
STM32F405RG VCP 报错This device cannot start (code 10)
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F401RBT6 USB 大容量存储设备问题
FLASH擦除轮询等待时CPU真的会轮询吗
HAL_I2C_Mem_Read 一直返回 BUSY
微信公众号
手机版