OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4493|回复: 4

USB播放MP3,扫描歌曲的时候出错

[复制链接]

9

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2015-9-25
在线时间
3 小时
发表于 2016-3-4 20:16:35 | 显示全部楼层 |阅读模式
12金钱
用原子哥的U盘HOST程序扫描曲目是没有任何问题的,关键是我把U盘的驱动那些加入到网络实现代码里面就出现这个问题了,对照了很多次,完全一模一样,所以现在很困惑,求助大神帮忙解决,万分感谢。
打开程序后首先出现:
USB OTG HS MSC Host
> USB Host library started.
  USB Host Library v2.1.0

检测到USB设备插入!
复位设备...
全速(FS)USB设备!
VID: 0951h
PID: 1624h
从机地址分配成功!
可移动存储器设备!
Manufacturer: Kingston
Product: DataTraveler G2
Serial Number: 0019E06B7103BA70700000BB
设备枚举完成!

跳过用户确认步骤!
开始执行用户程序!!!


这个是调试信息,说明U盘已经正确的识别了。
然后在调试工具里面输入mf_scan_files("2:")

调试打印出来的是:
mf_scan_files("2:")
path = 2:
res = 3


u8 mf_scan_files(u8 * path)
{
        FRESULT res;          
    char *fn;   /* This function is assuming non-Unicode cfg. */
#if _USE_LFN
        fileinfo.lfsize = _MAX_LFN * 2 + 1;
        fileinfo.lfname = mymalloc(SRAMIN,fileinfo.lfsize);
#endif                  
                        printf("path = %s\r\n",path);
    res = f_opendir(&dir,(const TCHAR*)path);
                printf("res = %d\r\n",res);
    if (res == FR_OK)
        {       
                printf("\r\n");
                while(1)
                {
                res = f_readdir(&dir, &fileinfo);               
                if (res != FR_OK || fileinfo.fname[0] == 0) break;
                //if (fileinfo.fname[0] == '.') continue;           
#if _USE_LFN
                fn = *fileinfo.lfname ? fileinfo.lfname : fileinfo.fname;
#else                                                          
                fn = fileinfo.fname;
#endif                                                      /* It is a file. */
                        printf("%s/", path);
                        printf("%s\r\n",  fn);
                }
    }          
        myfree(SRAMIN,fileinfo.lfname);
    return res;          
}


f_opendir的返回值是3,我查了错误,提示是

FR_NOT_READY //驱动器号无效。 路径是正确的,已经初始化好了,按照原子哥的写的。


求助,万分感谢,想开发一款U盘插入就能自动播放曲目的一个程序!

最佳答案

查看完整内容[请看2#楼]

解决了,问题是因为stm32F4内存耗尽
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2015-9-25
在线时间
3 小时
 楼主| 发表于 2016-3-4 20:16:36 | 显示全部楼层
正点原子 发表于 2016-3-10 00:09
那就是没用os了。
我是想是不是os的问题。你既然没用,那就不是OS问题了。
你单独加进来lwip的代码,并 ...

解决了,问题是因为stm32F4内存耗尽
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2016-3-5 22:56:58 | 显示全部楼层
没用os吧?
回复

使用道具 举报

9

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2015-9-25
在线时间
3 小时
 楼主| 发表于 2016-3-7 10:27:56 | 显示全部楼层

请问原子哥怎么使用呢?对这块不是很熟悉
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2016-3-10 00:09:12 | 显示全部楼层
a2000030642a 发表于 2016-3-7 10:27
请问原子哥怎么使用呢?对这块不是很熟悉

那就是没用os了。
我是想是不是os的问题。你既然没用,那就不是OS问题了。
你单独加进来lwip的代码,并不使用。试试MP3
能否播放?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 15:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表