最近在参考开发板的USB U盘(HOST)实验的例程学习,手上有1个1G的U盘和一张1G的SD卡(带读卡器),将SD卡(带读卡器)插入开发板的USB口时,测试程序能够正常识别SD卡,并且可以正常读写。当将U盘插入开发板的USB接口时,测试程序没有反应,根据测试程序接着调试,发现程序在U盘插入时,程序能检测到,可是在函数USBH_Process 中的
case HOST_ENUMERATION:
/* Check for enumeration status */
if ( USBH_HandleEnum(pdev , phost) == USBH_OK)
{
/* The function shall return USBH_OK when full enumeration is complete */
/* user callback for end of device basic enumeration */
phost->usr_cb->EnumerationDone();
phost->gState = HOST_USR_INPUT;
}
break;
中返回USBH_BUSY,程序始终在这一步出现问题。测试用的U盘只有1个逻辑分区,U盘本身是没有问题的,可以在PC上正常读.,目前想知道的是测试程序的问题,还是说是ST带的USB库导致的USB兼容性问题,现在手上没有其他的U盘了。希望得到大家的帮助。我在网上查了一下,有人也出现同样的问题,但是也没有确定的说法。谢谢大家了!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
如何提高兼容性?,有没有参考文档?
一周热门 更多>