• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

SD卡写入文件 插电脑上 无法打开SD卡怎么回事

FEItwo 2018-08-21 浏览量:1319
我SD卡用的是 16G
写入程序如下
FRESULT fr;   //读文件返回值
FIL fsrcfdst;    //创建文件
FATFS fs;      //
UINT brbw;  //读写计数
FILINFO finfo;
DIR dir;
char buffer[512];               //从文件中读出数据BUFF
const BYTE textFileBuffer[]="123456";

int main(void)
{
       bsp_init();//串口初始化
        while(SD_Init())
          {
            printf("error\r\n");
          }  //SD卡初始化
         fr=f_mount(&fs"0:"1);//创建工作区
         fr=f_open(&fdst"0:/456.txt"FA_CREATE_NEW|FA_WRITE);//建立一个TXT文件
         if(fr==FR_OK)
          {
              fr=f_write(&fdsttextFileBuffersizeof(textFileBuffer)-1&bw);//往文件写入123456
           }
                else if (fr==FR_EXIST)
                 {
                      printf("1");
                  } 
          fr=f_close(&fdst);//关闭文件
           
         fr=f_open(&fdst"0:/456.txt"FA_READ);//以只读的方式打开文件  单步运行时前面fr的返回值都时FR_OK ,运行完这步FR=FR_NO_file(0x04)
         br=1;//¶Á¼ÆÊý
         while(1)
         {
                  fr=f_read(&fdstbuffersizeof(buffer)&br);
                  if(fr||br==0)break;
          }
         f_close(&fdst);
                
   while (1)
   {   
    }
}

把SD卡插入电脑 提示文件目录损坏无法读取 不知道是哪里出问题了?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 你的文件系统的移植不对,破坏了SD卡的文件系统,电脑无法识别了
    • 发布于 2018-08-21
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7

  • 这应该是没有写入文件系统 格式化sd卡
    • 发布于2018-08-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 仔细检查一下你文件系统,最好是用一个标准的文件系统来操作
    • 发布于2018-08-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 要注意一下你SD卡是SDHC卡还是SDMMC卡,在单片机代码中要鉴别好,并且STM32的FATFS是有写入成功失败的检测的,楼主可以用printf函数来判定有没有写入成功。

    • 发布于2018-08-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先,这种操作SD卡的程序都应该有容错能力的,比如f_mount这个函数,如果执行失败那后面的不能继续执行的,否则会损坏卡

    第二,你的时序是否正确了

    • 发布于2018-08-31
    • 举报
    • 评论 0
    • 0
    • 0

  • 你的SD文件系统是不是已经损坏,最好检查一下你的文件系统
    • 发布于2018-09-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个很可能是你的SD卡坏了,你可以更换一张新卡试试
    • 发布于2018-09-19
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

SD卡写入文件 插电脑上 无法打开SD卡怎么回事