本帖最后由 miniboy 于 2019-5-26 12:19 编辑
STM32F105RC,使用FATFS 0.12正常。尝试将FATFS换成0.12C,每到 f_mount()时卡死,跟踪调试时,运行到 ff.c文件中 res = find_volume(&path, &fs, 0); /* Force mounted the volume */,停止不前了。卡在这里了。
再往下一步跟踪,死在这里:fmt = check_fs(fs, bsect); /* Load sector 0 and check if it is an FAT-VBR as SFD */
不知道如何下手处理了,请哪位来指点一下,谢谢。
res_flash = f_mount(&fs1_flash,"1:",1); //fs1_flash为全局变量,需要固定内存空间。
若将最后一个参数改为0,非即时挂载,到后面文件 f_open() 时卡死。
res_flash = f_mkfs("1:",FM_FAT, 0, work, sizeof work);
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
解决办法:
ffconf.h文件中,我将 _MAX_SS 和 _MIN_SS均置为512了……问题所在。
改为:
#define _MIN_SS 512
#define _MAX_SS 4096
即可。
一周热门 更多>