中级会员
 
- 积分
- 358
- 金钱
- 358
- 注册时间
- 2015-11-4
- 在线时间
- 124 小时
|

楼主 |
发表于 2016-1-21 14:00:22
|
显示全部楼层
u8 mf_scan_files(u8 * path)
{
int j=0;
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
res = f_opendir(&dir,(const TCHAR*)path); //打开一个目录
if (res == FR_OK)
{
printf("\r\n");
while(1)
{
res = f_readdir(&dir, &fileinfo); //读取目录下的一个文件
if (res != FR_OK || fileinfo.fname[0] == 0){j=0; break;} //错误了/到末尾了,退出
j++;
//if (fileinfo.fname[0] == '.') continue; //忽略上级目录
#if _USE_LFN
fn = *fileinfo.lfname ? fileinfo.lfname : fileinfo.fname;
#else
fn = fileinfo.fname;
#endif /* It is a file. */
//改动 添加了for ,SHOw
printf("%s/", path);//打印路径
printf("%s\r\n", fn);//打印文件名
Show_Str(30,400+24*j,400,24,fn,24,1);//添加了这句
}
}
myfree(SRAMIN,fileinfo.lfname);
return res;
}
就添加了一个变量j和show在里面用来显示在LCD上。可是我在程序上单独得调用他就不行了,不是在调试助手里调用 |
|