各位,大家好,小弟最近在做文件系统存储相关的工作,就是用Cubemx生成文件系统和SDIO,那么我的问题来了
在向文件写内容的时候
result= f_write(&File_Element.fil,File_Element.Fatfs_Buf,sizeof(File_Element.Fatfs_Buf), &File_Element.bwee);
printf("f_write1=%d
",result);
循环多次向文件写内容,那么就可能会出现f_write返回值为1的情况,而且是没有规律的
我看了这个错误的解释是:FR_DISK_ERR, /* (1) A hard error occurred in the low level disk I/O layer */
说是底层硬件错误,
有没有人做过这方面的工作,大神给点指点
在线等
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
确实会有这样的可能性。我测试了一下,比如录音的过程中突然把卡拔出来,如果正好在执行这个底层函数,就会在里面死循环。
除了人为把卡拔出来的情况,正常情况下我没有遇到卡死的情况。
如果担心这个问题,最合理的做法是:增加一个变量,控制初始化的次数,如果尝试了N次之后,仍不能写成功,就退出。
一周热门 更多>