关于函数“u8 mf_open(u8*path,u8 mode);”调试过程中的一点疑问

2019-07-20 16:36发布

本帖最后由 刘毅壁虎 于 2017-2-26 21:37 编辑

@正点原子
   1488115115(1).png

如上图:
①所示,在程序下载完毕,重启之后,使用“u8 mf_scan_files(u8 * path);”确认U盘中没有文件;
②中使用“u8 mf_open(u8*path,u8 mode);”新增了一个文件夹;
③中使用“u8 mf_scan_files(u8 * path);”确认U盘中新建文件夹;(在电脑上验证,文件夹就没有新建成功。)
④中是对开发板进行即刻重启;
⑤中使用“u8 mf_scan_files(u8 * path);”发现U盘中新建的文件夹没有新建成功。

请问:
1、这是什么原因造成的?
2、我移植了“第77讲 FATFS文件系统实验”教学视频文件夹中的部分程序,
/********************start*************************/        
        res=f_open (&fil,"2:/message.txt", FA_CREATE_ALWAYS|FA_WRITE);        
         
        f_write (&fil, "alientek test", 50, &bww);
        
        f_close(&fil);
        
        res=f_open (&fil,"2:/message.txt", FA_READ);

        f_read (&fil, buf,100,&bww);        
        f_close(&fil);
        
        LCD_ShowString(10,210,230,24,24,(u8 *)buf);
/********************end***************************/
发现确实有新建的文件,同时有数据被保存。两者有什么区别。

谢谢原子哥~~




友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-07-20 19:02
 精彩回答 2  元偷偷看……
刘毅壁虎
2楼-- · 2019-07-20 19:08
 精彩回答 2  元偷偷看……
刘毅壁虎
3楼-- · 2019-07-20 19:22
刘毅壁虎 发表于 2017-2-26 21:52
难道USMART是一个虚拟机一样的东西??开发板上没有实际的运行?

但如果连续两次调用“u8 mf_open(u8*path,u8 mode);”并使用不同的文件夹名称,就会出现第一次新建的文件夹。第二个依然没有。
正点原子
4楼-- · 2019-07-20 21:38
你用串口的时候,有f_close么?
刘毅壁虎
5楼-- · 2019-07-20 22:40
正点原子 发表于 2017-2-27 22:23
你用串口的时候,有f_close么?

串口没有f_close。
如果加进去的话,能实现功能吗?

一周热门 更多>