|
情况是这样的,用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; } |
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F401RBT6 USB 大容量存储设备问题
FLASH擦除轮询等待时CPU真的会轮询吗
HAL_I2C_Mem_Read 一直返回 BUSY
STM32F103C8T6 上电后无法通过串口发出数据的问题?
USB OTG 主机枚举问题
STM32F042 在启动文件内跳转至 USB DFU Bootloader
KEILMDK每次都要手动选Reset and Run吗 不然下载到板子上得重启电源才行 求解答
B-L475E-IOT01A 无法枚举为 USB DFU 设备
USBX Audio Class frame done 不触发回调
微信公众号
手机版