USB f_opendir卡死
大家好,用v6板子的时候遇到个问题,用的v6-106c_FatFS文件系统例程(U盘),可以挂载U盘但是到了f_opendir就卡死了,请问下是什么原因呢?我用的是读卡器插得SD卡。卡在了什么地方。 eric2013 发表于 2020-5-15 16:19
卡在了什么地方。
卡在函数disk_read();的while (status == USBH_MSC_BUSY );
if (HCD_IsDeviceConnected(&USB_OTG_Core))
{
do
{
status = USBH_MSC_Read10(&USB_OTG_Core, buff,sector,512 * count);
USBH_MSC_HandleBOTXfer(&USB_OTG_Core ,&USB_Host);
if (!HCD_IsDeviceConnected(&USB_OTG_Core))
{
break;
}
}
while (status == USBH_MSC_BUSY );
} eric2013 发表于 2020-5-15 16:19
卡在了什么地方。
如果用出厂程序加上v6-106c_FatFS文件系统例程(U盘)的U盘读取部分,不会卡死在f_opendir,会返回0x03(FR_NOT_READY) YZ明 发表于 2020-5-15 17:38
如果用出厂程序加上v6-106c_FatFS文件系统例程(U盘)的U盘读取部分,不会卡死在f_opendir,会返回0x03( ...
兼容性问题,使用我这个案例测试,如果也无法正常识别,的确是无法正常识别了,这个是USB标准库最新版。
http://www.armbbs.cn/forum.php?mod=viewthread&tid=17658&extra=page%3D1
eric2013 发表于 2020-5-15 19:04
兼容性问题,使用我这个案例测试,如果也无法正常识别,的确是无法正常识别了,这个是USB标准库最新版。
...
我又试了下v5的开发板,也是同样的结果。您那边是否可以帮忙看看是不是也有这样的现象 YZ明 发表于 2020-5-16 10:49
我又试了下v5的开发板,也是同样的结果。您那边是否可以帮忙看看是不是也有这样的现象
我这里杠杠的。
STM32移植USB库2.2.0版本----USB Host之外挂U盘移植步骤及其注意事项,识别率很高,
http://www.armbbs.cn/forum.php?m ... id=19754&fromuid=58
(出处: 硬汉嵌入式论坛)
手头4个U盘全部成功正常读写:
https://img.anfulai.cn/dz/attachment/forum/pw/Fid_47/47_58_ca0e5ffd31b6881.png
eric2013 发表于 2020-5-16 10:52
我这里杠杠的。
STM32移植USB库2.2.0版本----USB Host之外挂U盘移植步骤及其注意事项,识别率很高,
我的问题找到了,是因为为屏蔽了,直接运行了ViewRootDir(); /* 显示SD卡根目录下的文件名 */
只要按正常的窗口发送就可以了
//if (comGetChar(COM1, &cmd)) /* 从串口读入一个字符(非阻塞方式) */
{
printf("\r\n");
cmd = '1';
switch (cmd)
{
case '1':
printf("【1 - ViewRootDir】\r\n");
ViewRootDir(); /* 显示SD卡根目录下的文件名 */
break;
case '2':
printf("【2 - CreateNewFile】\r\n");
CreateNewFile(); /* 创建一个新文件,写入一个字符串 */
break;
case '3':
printf("【3 - ReadFileData】\r\n");
ReadFileData(); /* 读取根目录下armfly.txt的内容 */
break;
case '4':
printf("【4 - CreateDir】\r\n");
CreateDir(); /* 创建目录 */
break;
case '5':
printf("【5 - DeleteDirFile】\r\n");
DeleteDirFile(); /* 删除目录和文件 */
break;
case '6':
printf("【6 - TestSpeed】\r\n");
WriteFileTest(); /* 速度测试 */
break;
default:
DispMenu();
break;
}
}
顺带问个网口的问题,用的v5开发板 V5-1004_RL-TCPnet实验_调试方法(裸机)例程,只有一个网口(DM9161 PHY电路)可以出口输出一些IP地址什么的,换一个就不可以了,是因为没有配置还是什么呢。DM9000 网卡电路和DM9161 PHY电路区别是什么呢 YZ明 发表于 2020-5-16 16:01
我的问题找到了,是因为为屏蔽了,直接运行了ViewRootDir(); /* 显示SD卡根目录下的文件名 */
只要按正 ...
你跑的这个例子就是针对DM9161/9162的。没有DM9000。
两个的区别看此教程学习:
http://www.armbbs.cn/forum.php?mod=viewthread&tid=26034&extra=page%3D1
eric2013 发表于 2020-5-16 16:07
你跑的这个例子就是针对DM9161/9162的。没有DM9000。
两个的区别看此教程学习:
那有DM9000 网口的配套例程么 YZ明 发表于 2020-5-16 16:19
那有DM9000 网口的配套例程么
出厂程序支持,下载溜溜即可。
你的问题就聊这么多吧,结帖。
eric2013 发表于 2020-5-16 16:27
出厂程序支持,下载溜溜即可。
你的问题就聊这么多吧,结帖。
好的,十分感谢!
页:
[1]