移植了0.12b板的fat,发现打开文件有问题,请打神们看看,如挂载sd卡 f_mount(&fs, "0:/", 1);后紧接着用下面四种情况打开失败
1、res=f_open(&fil, "0:/text.txt", FA_OPEN_ALWAYS|FA_READ);打开出错返回的是03,对照ff.h里FR_NOT_READY/* (3) The physical drive cannot work
2、res=f_open(&fil, "0:/text.txt", FA_OPEN_ALWAYS|FA_WRITE|FA_READ);打开出错返回的是03/
3、res=f_open(&fil, "0:/text.txt", FA_WRITE|FA_READ);打开出错返回的是03
4、单独res=f_open(&fil, "0:/text.txt", FA_READ)打开出错返回的是03
如果用下面的能正常打开
1、f_open(&fil, "0:/text.txt", FA_OPEN_ALWAYS);f_open(&fil, "0:/text.txt", FA_READ);f_open(&fil, "0:/text.txt", FA_WRITE);这样分开,打开正常都返回00;
2、res=f_open(&fil, "0:/text.txt", FA_OPEN_ALWAYS|FA_WRITE);res=f_open(&fil, "0:/text.txt", FA_READ)打开正常都返回00;
3、res=f_open(&fil, "0:/text.txt", FA_OPEN_ALWAYS);res=f_open(&fil, "0:/text.txt", FA_READ|FA_WRITE;)打开正常返回00
如果我text.txt用上诉能打开的方式打开过了
再接着关闭text.txt打开text2.txt。res=f_open(&fil, "0:/text2.txt", FA_OPEN_ALWAYS|FA_WRITE|FA_READ);是能正常打开的
单独res=f_open(&fil, "0:/text2.txt", FA_READ);也能打开
总结一下就是挂载SD卡后第一次(第一句)用能打开的语句打开后,后边的语句都能正常打开。
一脸懵逼,
什么情况。
res=f_lseek(&fil,f_size(&fil)); //移动读写指针(移动到文件的结尾添加数据)
res=f_write (&fil, "15975325 ", sizeof("15975325 ")-1, &br); //写入数据
返回值都是00,但数据没写进去。。。。。
一周热门 更多>