STM32F207 的SDIO模式挂在的FATFS只能创建文件,而不能写文件!

2019-03-23 18:51发布

代码如下:
        FRESULT result;
        FATFS fs;
        FIL file1;
        DIR DirInf;  
        uint32_t bw;
  char aa[] = "12345678";
       
        result = f_mount(0, &fs);                        /* Mount a logical drive */
        if (result != FR_OK)
        {
                printf("FileSystem Mounted Failed (%d) ", result);
        }


        result = f_opendir(&DirInf, "/");
        if (result != FR_OK)
        {
                printf("Root Directory is Open Error (%d) ", result);
                return;
        }

        result = f_open(&file1, "/HELLO1.txt", FA_CREATE_ALWAYS | FA_WRITE);


        result = f_write(&file1, aa, 7, &bw);       
        if (result == FR_OK)
        {
                printf("---File Write Success ");
                printf("----bw=%d ", bw);
        }
        else
        {
                printf(".txt File Write Failed");
        }
       
        f_close(&file1);
       

        f_mount(0, NULL);       

可以读取SD卡中现有的文件内容,可以新建立文件,f_write写入返回成功,但是实际没有写入,文件大小还是0,请高手帮忙一下。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
zhaojun_xf
1楼-- · 2019-03-24 00:34
/ 最好先就像扇区读写控制,保证这一层代码没有问题的情况下操作文件系统。
mxfggg
2楼-- · 2019-03-24 01:49
 精彩回答 2  元偷偷看……
mxfggg
3楼-- · 2019-03-24 07:46
求大侠帮忙
!!!
zhaojun_xf
4楼-- · 2019-03-24 13:46
mxfggg 发表于 2013-12-30 17:11
求大侠帮忙
!!!

是的,先保证这就更函数的正确性。。。。。。。。。。。
晴芯
5楼-- · 2019-03-24 17:14
 精彩回答 2  元偷偷看……
晴芯
6楼-- · 2019-03-24 19:01
zhaojun_xf 发表于 2013-12-31 16:25
是的,先保证这就更函数的正确性。。。。。。。。。。。

我加断点调试的时候是可以写进数据的,所以底层的这些函数应该是没问题的吧,但是全速运行的时候数据就是写不进去,文件还是为空,找不到原因 啊

一周热门 更多>