|

楼主 |
发表于 2016-5-3 16:04:19
|
显示全部楼层
回 eric2013 的帖子
eric2013:
应该是挂载U盘的过程中出问题了,在USBH_Init的过程中加上一个调度锁操作,防止板子上电前U盘就是插上的这种情况,这种情况容易死掉
加上一个调度锁,防止任务切换就好很多了。  还是不行:我是用一个按钮的回调函数来初始化USB的。
case GUI_ID_BUTTON6:
if(NCode==WM_NOTIFICATION_RELEASED)
{
OSSchedLock();
usbd_OpenMassStorage();
OSSchedUnlock();
}
break;
USB初始化函数是这样的:
void usbd_OpenMassStorage(void)
{ GPIO_ResetBits(GPIOE,GPIO_Pin_4);\\\\USB D+上拉
USBD_Init(&USB_OTG_dev,
USB_OTG_HS_CORE_ID,
&USR_desc,
&USBD_MSC_cb,
&USR_cb);
} |
|