打印

FatFS TF卡创建读写文件正常,插电脑上空白

[复制链接]
112|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
用的是HC32F4A0,目前做了:

  • 在电脑上对SD卡格式化为Fat32格式
  • 为了确定写入了SD卡,而不是读取缓存。写入文件后,将文件关闭,再以READ模式打开,进行读取,也是可以读的。

但是把SD卡插到读卡器上,看到的就是空白。有没有大佬知道这是为什么
代码附上
#include "FileEdit.h"
#include "ff.h"
#include "stdio.h"
#include "BSP_Timer_INT_Count.h"
FATFS fsobject;
FIL fp;
BYTE work[FF_MAX_SS];

const char write_buf[] = "abcdefg";
char read_buf[FF_MAX_SS] = "";
UINT bw;
UINT br;
void FatFS_Test(void)
{
    FRESULT res;
    /* 挂载文件系统 */
    res = f_mount(&fsobject, "0:", 1);    //挂载fsobject到文件系统、0: 存储器路径,也就是SD卡、1立即挂载
    if(res != FR_OK)
    {
        res = f_mkfs("0:", 0, work, sizeof(work));
        res = f_mount(NULL, "0:", 1);
        res = f_mount(&fsobject, "0:", 1);
    }

    /* 打开、创建文件 */
    f_mkdir("0:/dir0");
    res = f_open(&fp, "0:/dir0/qwerpoiu.txt", FA_CREATE_ALWAYS | FA_WRITE | FA_READ);
    if(res == LL_OK)
    {
        res = f_write(&fp, write_buf, sizeof(write_buf), &bw);
        f_close(&fp);
        
        res = f_open(&fp, "0:/dir0/qwerpoiu.txt", FA_READ);
        if(res==LL_OK)
        {
            f_lseek(&fp, 0);
            res = f_read(&fp, read_buf, f_size(&fp), &br);
            
            __nop();
        }
        else
            f_close(&fp);
    }
    f_unmount("0:");
}

使用特权

评论回复

相关帖子

沙发
根本就没好ID了|  楼主 | 2024-9-30 11:29 | 只看该作者

FatFS TF卡创建读写文件正常,插电脑上空白

文件是可以读到的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

粉丝