|
测试发现ST的USB库2.2.0版本挂载U盘的热插拔实现,仅需主函数中一直调用USBH_Process即可。- /* Init Host Library */
- USBH_Init(&USB_OTG_Core,
- #ifdef USE_USB_OTG_FS
- USB_OTG_FS_CORE_ID,
- #else
- USB_OTG_HS_CORE_ID,
- #endif
- &USB_Host,
- &USBH_MSC_cb,
- &USR_cb);
-
- while (1)
- {
- /* Host Task handler */
- USBH_Process(&USB_OTG_Core, &USB_Host);
-
- if (i++ == 0x10000)
- {
- STM_EVAL_LEDToggle(LED1);
- STM_EVAL_LEDToggle(LED2);
- STM_EVAL_LEDToggle(LED3);
- STM_EVAL_LEDToggle(LED4);
- i = 0;
- }
- }
复制代码 插入和拔出的状态用户可以通过usb_usr.c文件中的
函数USBH_USR_Configuration_DescAvailable 做插入标志
函数USBH_USR_DeviceDisconnected做拔出标志
|
|