小弟最近在用EMWIN做实验,建立一个对话框,有一个BUTTON,点击BUTTON后将数据存入U盘 。
思路是 开两个线程,一个是 对话框, 另一个是 USBH_Process。如下:
对话框线程
void emwindemo_task(void *p_arg)
{
OS_ERR err;
GUI_CURSOR_Show();
GUI_Init();
CreateCONSOLE();
while(1)
{
GUI_Delay(10);
GUI_Exec();
OSTimeDlyHMSM(0,0,0,5,OS_OPT_TIME_PERIODIC,&err);//ÑÓʱ5ms
}
}
USB监视线程
void led0_task(void *p_arg)
{
OS_ERR err;
while(1)
{
USBH_Process(&USB_OTG_Core, &USB_Host);
OSTimeDlyHMSM(0,0,0,50,OS_OPT_TIME_PERIODIC,&err);//ÑÓʱ50ms
}
}
现在问题是,当U盘插入 并识别的瞬间, 另一个线程就死机了。 整个系统就死了。
我用例程中的实验测试(USB HOST),测试U盘和电路都是没问题的。区别就是,例程没有用UCOS系统,而是直接死循环调用 USBH_Process。
请问是什么原因呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>